Пример #1
0
 private void HandleExchangeObjectModifiedMessage(IAccount account, ExchangeObjectModifiedMessage message)
 {
     Logger.Default.Log(
         message.Remote
             ? $"L'échangeur a modifié le nombre de {D2OParsing.GetItemName(message.Object.ObjectGID)} en x{message.Object.Quantity}"
             : $"Vous avez modifié le nombre de {D2OParsing.GetItemName(message.Object.ObjectGID)} en x{message.Object.Quantity}",
         LogMessageType.Info);
 }
Пример #2
0
 private void ExchangeObjectModifiedMessageHandler(DofusClient client, ExchangeObjectModifiedMessage message)
 {
     if (message.Remote)
     {
         client.Logger.Log(
             $"L'échangeur a modifié le nombre de {D2OParsing.GetItemName(message.Object.ObjectGID)} en x{message.Object.Quantity}",
             LogMessageType.Info);
     }
     else
     {
         client.Logger.Log(
             $"Vous avez modifié le nombre de {D2OParsing.GetItemName(message.Object.ObjectGID)} en x{message.Object.Quantity}",
             LogMessageType.Info);
     }
 }
Пример #3
0
        public void Update(ExchangeObjectModifiedMessage message)
        {
            var modifiedObj = message.Remote ?
                              RemoteObjects.FirstOrDefault(o => o.UID == message.Object.ObjectUID) :
                              Objects.FirstOrDefault(o => o.UID == message.Object.ObjectUID);

            int qtyDiff = (int)message.Object.Quantity - (int)modifiedObj.Quantity;

            modifiedObj.Update(message.Object);

            if (message.Remote)
            {
                RemoteCurrentWeight += (uint)(qtyDiff * modifiedObj.RealWeight);
            }
            else
            {
                CurrentWeight += (uint)(qtyDiff * modifiedObj.RealWeight);
            }

            _step++;
            ExchangeContentChanged?.Invoke();
        }
Пример #4
0
 public static Task HandleExchangeObjectModifiedMessage(Account account, ExchangeObjectModifiedMessage message)
 => Task.Run(() => account.Game.Exchange.Update(message));