Example #1
0
        public static void GameActionFightDeathMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameActionFightDeathMessage msg = (GameActionFightDeathMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            if (account.Fight != null)
            {
                BFighter fighter = account.Fight.GetFighter(msg.targetId);
                if (fighter != null)
                {
                    fighter.IsAlive    = false;
                    fighter.LifePoints = 0;
                    if (fighter.Id == account.Fight.Fighter.Id)
                    {
                        account.Log(new ErrorTextInformation("Personnage mort :'("), 0);
                    }
                    account.Fight.Fighters.RemoveAt(account.Fight.Fighters.IndexOf(account.Fight.GetFighter(msg.targetId)));
                }
                if (fighter.CreatureGenericId != 0)
                {
                    account.Log(new ActionTextInformation(BlueSheep.Common.Data.I18N.GetText((int)GameData.GetDataObject(D2oFileEnum.Monsters, fighter.CreatureGenericId).Fields["nameId"]) + "est mort ! "), 5);
                }
                account.Fight.DeadEnnemiInTurn += 1;
            }
        }
 public void HandleGameActionFightDeathMessage(Bot bot, GameActionFightDeathMessage message)
 {
     if (bot == null || bot.Character == null || bot.Character.Fight == null)
     {
         logger.Error("Fight is not properly initialized.");
         return; // Can't handle the message
     }
     bot.Character.Fight.Update(bot, message);
 }
Example #3
0
        public static void GameActionFightDeathMessageTreatment(Message message, byte[] packetDatas, AccountUC account)
        {
            GameActionFightDeathMessage msg = (GameActionFightDeathMessage)message;

            using (BigEndianReader reader = new BigEndianReader(packetDatas))
            {
                msg.Deserialize(reader);
            }
            account.FightData.SetFighterDeath(msg.targetId);
        }
Example #4
0
 public void Update(GameActionFightDeathMessage message)
 {
     if (Defenders.Any(fighter => fighter.ContextualId == message.targetId))
     {
         Defenders.Where(fighter => fighter.ContextualId == message.targetId).FirstOrDefault().Alive = false;
     }
     if (Challengers.Any(fighter => fighter.ContextualId == message.targetId))
     {
         Challengers.Where(fighter => fighter.ContextualId == message.targetId).FirstOrDefault().Alive = false;
     }
 }
Example #5
0
        internal void Update(Bot bot, GameActionFightDeathMessage message)
        {
            // Process
            var fighter = GetActor(message.targetId);

            if (fighter == null)
            {
                throw new InvalidOperationException(string.Format("Fighter {0} not found, cannot let it die", message.targetId));
            }
            logger.Debug(string.Format("{0} is dead", fighter));
            fighter.IsAlive = false;
        }
Example #6
0
        private void HandleGameActionFightDeathMessage(IAccount account, GameActionFightDeathMessage message)
        {
            var fighter = GetFighter(message.TargetId);

            if (Fighter.Id == message.TargetId)
            {
                Logger.Default.Log("Bot mort");
            }
            if (Monsters.Exists(m => m.Id == message.TargetId))
            {
                Logger.Default.Log($"Monstre est mort");
            }
            RemoveFighter(message.TargetId);
        }
Example #7
0
 private void HandleGameActionFightDeathMessage(IAccount account, GameActionFightDeathMessage message)
 {
     lock (CheckLock)
     {
         if (Fighter.Id == message.TargetId)
         {
             Logger.Default.Log("Bot mort");
             Fighters.Remove(Fighters.Find(f => f.Id == message.TargetId));
         }
         if (Monsters.Exists(m => m.Id == message.TargetId))
         {
             Logger.Default.Log($"Monstre[{message.TargetId}] est mort");
             Monsters.Remove(Monsters.Find(m => m.Id == message.TargetId));
             Logger.Default.Log($"Signalig FighterDiedAutoReset", LogMessageType.Divers);
             FighterDiedAutoReset.Set();
         }
     }
 }
Example #8
0
        public void HandleGameActionFightDeathMessage(Bot bot, GameActionFightDeathMessage message)
        {
            if (bot == null || bot.Character == null || bot.Character.Fight == null)
            {
                logger.Error("Fight is not properly initialized.");
                return; // Can't handle the message
            }
            var fighter = Fighter.Fight.GetActor(message.targetId);

            if (fighter != null)
            {
                if (fighter.Team.Id != Fighter.Team.Id)
                {
                    settings.MobKilled++;
                }
                else
                if (fighter == Fighter)
                {
                    settings.FightLost++;
                }
            }
        }
Example #9
0
 public static Task HandleGameActionFightDeathMessage(Account account, GameActionFightDeathMessage message)
 => Task.Run(() => account.Game.Fight.Update(message));
Example #10
0
 public void Update(GameActionFightDeathMessage message)
 {
     GetFighter(message.TargetId)?.Update(message);
 }
Example #11
0
 private void HandleMapComplementaryInformationsDataMessage(GameActionFightDeathMessage message, ConnectedHost source)
 {
     fight.Update(message);
 }
Example #12
0
 public void Update(GameActionFightDeathMessage message)
 {
     LifePoints = 0;
     Alive      = false;
 }