public override bool OnMouseClick(Vector2 position, MouseButton button) { if (hover == 0 && dialogmode == 0) { dlgoffset += 2; if (dlgoffset + 2 >= conversation.Text.Length) { dialogmode = 1; } } else if (hover != -1) { BurntimeClassic classic = app as BurntimeClassic; result = conversation.Choices[hover].Action.Type; dialogmode = 0; dlgoffset = 0; switch (conversation.Choices[hover].Action.Type) { case ConversationActionType.Talk: conversation = character.Dialog.GetConversation(self, ConversationType.Talk); break; case ConversationActionType.Trade: Hide(); classic.Game.World.ActiveTraderObj = character as Trader; app.SceneManager.SetScene("TraderScene"); break; case ConversationActionType.Yes: case ConversationActionType.No: case ConversationActionType.Exit: Hide(); break; case ConversationActionType.HireRequirements: conversation = character.Dialog.GetConversation(self, ConversationType.Hire); break; case ConversationActionType.Profession: conversation = character.Dialog.GetConversation(self, ConversationType.Profession); break; case ConversationActionType.Hire: Hire(); Hide(); break; } dialogmode = (conversation.Text.Length <= 3) ? 1 : 0; } return(true); }
public ConversationAction(ConversationActionType Type) { this.Type = Type; }