//Инициализация задания public void Init(Quest parentQuest) { _parentQuest = parentQuest; //Если задание было загружено с диска, то необходима проверка на его завершенность. Если задание завешенное, то вызываем событие о выполнение данного задания. if (_taskTargetsAmountCounter >= _taskTargetsAmount && TaskTargetsAmount > 0) { _status = true; _taskTargetsAmountCounter = _taskTargetsAmount; _parentQuest.OnTaskChange(); return; } switch(EventType) { case "UnitDied": EventHub<EntityDiedEventArgs>.EventHappened += OnEventDiedHandler; break; case "ItemPicked": EventHub<EntityItemPickedUpEventArgs>.EventHappened += OnEventPick; break; case "PositionMoved": EventHub<EntityIsCloseToPlayer>.EventHappened += OnPositionMoved; break; } }