public void OnEvent(GameEvent ev) { switch (ev.Type()) { case GameEventType.EVENT_START_QUEST: { EventStartQuest start = (EventStartQuest)ev; if (start.quest == QuestType.QT_HIDDEN) { hidden_items = true; HiddeItems(); } break; } case GameEventType.EVENT_END_QUEST: { EventEndQuest end = (EventEndQuest)ev; if (end.quest == QuestType.QT_HIDDEN) { hidden_items = false; ShowItems(); } break; } default: break; } }
void OnEvent(GameEvent ev) { switch (ev.Type()) { case GameEventType.EVENT_START_QUEST: { EventStartQuest start = (EventStartQuest)ev; if (start.quest == QuestType.QT_GUNS) { force_gun = true; } if (start.quest == QuestType.QT_LACAJA && LaCaja_spawn) { if (spawned_item != null) { ItemManager.Instance.RemoveFromitemsInstances(spawned_item); GameObject.Destroy(spawned_item); } SpawnLACAJA(); } break; } case GameEventType.EVENT_END_QUEST: { EventEndQuest start = (EventEndQuest)ev; if (start.quest == QuestType.QT_GUNS) { force_gun = false; } break; } case GameEventType.EVENT_MATCH_START: { SpawnItem(); timer.Start(); break; } case GameEventType.EVENT_ITEM_GRABBED: { EventItemGrabbed grab = (EventItemGrabbed)ev; if (grab.item == spawned_item) { spawned_item = null; } break; } default: Debug.LogError("ItemSpawner: Invalid call to OnEvent"); break; } }
void OnDisable() { OnDisableQuest(); EventEndQuest ev = new EventEndQuest(quest_type); if (EventManager.Instance != null) { EventManager.Instance.SendEvent(ev); } }