private void EndDialog(bool isLeaving) { var cod = new ConversationOverData(); cod.npc = NPC; cod.isLeaving = isLeaving; ConversationOverEvent.Invoke(cod); DialogDisplayer.SetInvisible(); }
// Start is called before the first frame update void Start() { Day = -1; Cod = new ConversationOverData(); DialogSystem.ConversationOverEvent.AddListener(delegate { HandleEndOfDialog(Cod); }); InventorySystem.EndedFullfillment.AddListener(() => { HandleEndOfFullfillment(); }); InventorySystem.EndedResupply.AddListener(() => { EndDay(); }); StartResupply(); }
/// <summary> /// Handles the end of dialog. /// </summary> /// <param name="npc">Npc.</param> /// <param name="isLeaving">Is leaving.</param> public void HandleEndOfDialog(ConversationOverData cod) { if (cod.isLeaving) { pool.AnnihilateNPC(cod.npc.ID); GenerateNextCustomer(); ReadyToProceedEvent.Invoke(NextCustomer.ID); } else { StartFullfillment(cod.npc); } }