예제 #1
0
 private void OnLeaveDialogMessage(IAccount arg1, LeaveDialogMessage arg2)
 {
     InDialog        = false;
     PossibleReplies = new List <NpcReplyLUA>();
     Logger.Default.Log("Personnage a terminé la discussion avec le NPC " + Name + ".", API.Utils.Enums.LogMessageType.Info);
     _messageReceived.Set();
 }
예제 #2
0
        public static void NpcDialogCreationMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            LeaveDialogMessage msg = (LeaveDialogMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            account.SetStatus(Status.None);
        }
예제 #3
0
파일: NpcsGame.cs 프로젝트: Kuh4ku/Mercybot
        public void Update(LeaveDialogMessage message)
        {
            if (_account.State != AccountStates.TALKING)
            {
                return;
            }

            _account.State = AccountStates.NONE;
            PossibleReplies.Clear();
            PossibleReplies = null;
            DialogLeft?.Invoke();
        }
예제 #4
0
 public static void HandleLeaveDialogMessage(WorldClient client, LeaveDialogMessage message)
 {
     client.Character.LeaveDialog();
 }
예제 #5
0
 public static Task HandleLeaveDialogMessage(Account account, LeaveDialogMessage message)
 => Task.Run(() => account.Game.Npcs.Update(message));