public static void LeaveDialogMessageTreatment(Message message, byte[] packetDatas, AccountUC account) { NpcDialogCreationMessage msg = (NpcDialogCreationMessage)message; using (BigEndianReader reader = new BigEndianReader(packetDatas)) { msg.Deserialize(reader); } account.Npc.Id = msg.npcId; account.Npc.Entity = account.MapData.Npcs.FirstOrDefault((npc) => npc.contextualId == msg.npcId); account.SetStatus(Status.Speaking); }
private void OnNpcDialogCreationMessage(IAccount arg1, NpcDialogCreationMessage arg2) { Logger.Default.Log("Le personnage est en discussion avec le NPC " + Name + ".", API.Utils.Enums.LogMessageType.Info); }
public void Update(NpcDialogCreationMessage message) { _account.State = AccountStates.TALKING; DialogCreated?.Invoke(); }
public static Task HandleNpcDialogCreationMessage(Account account, NpcDialogCreationMessage message) => Task.Run(() => account.Game.Npcs.Update(message));