/// <summary> /// Добавление событий выбора в окно события при правом клике мышкой /// </summary> /// <param name="nameOutcome">Имя события в меню</param> /// <param name="textAfterEvent">Текст после события выбора действия</param> /// <param name="gainModifier">Используется для корректировки параметров</param> /// <param name="checkParameter">Список параметров которые испозьзуются для проверки</param> /// <param name="listParameterСhange">Список параметров которые необходимо изменить после события</param> public void AddEventsStaticParameters(string nameOutcome, string textAfterEvent, float gainModifier, List <Tuple <string, int> > checkParameter, List <Tuple <string, int> > listParameterСhange) { var outcomeOptions = new OutcomeOptions { NameOutcome = nameOutcome, TextAfterEvent = textAfterEvent, GainModifier = gainModifier, }; outcomeOptions.CheckParameter = checkParameter.GetRange(0, checkParameter.Count); outcomeOptions.ListParameterСhange = listParameterСhange.GetRange(0, listParameterСhange.Count); _outcomeOptions.Add(outcomeOptions); }
/// <summary> /// Метод по обработке события клик /// </summary> /// <param name="outcomeOptionsLocal">Выбранный объект события</param> private void HandleMouseEventHandling(OutcomeOptions outcomeOptionsLocal) { _actionSelectionFlag = true; foreach (var currentListParameterСhange in outcomeOptionsLocal.ListParameterСhange) { GameCharacter.Set(currentListParameterСhange.Item1, currentListParameterСhange.Item2); } if (outcomeOptionsLocal.TextAfterEvent != "") { TopMostMessageBox.Show(outcomeOptionsLocal.TextAfterEvent, "Событие"); } IDisposable(); }
/// <summary> /// Добавление варианта ответа в контекстное меню /// </summary> /// <param name="outcomeOptions"></param> /// <param name="index"></param> private void AddEvents(OutcomeOptions outcomeOptions, int index) { var toolStripMenuItem = new ToolStripMenuItem(outcomeOptions.NameOutcome); EventSelectionContextMenu.Items.AddRange(new[] { toolStripMenuItem }); foreach (var currentCheckParameter in outcomeOptions.CheckParameter) { if (GameCharacter.Get(currentCheckParameter.Item1) <= currentCheckParameter.Item2) { toolStripMenuItem.Enabled = false; toolStripMenuItem.ToolTipText = "Не прошла проверка параметра " + currentCheckParameter.Item1; break; } } EventHandlerClick(toolStripMenuItem, index); }