コード例 #1
0
        private void Healing()
        {
            int index = Game.Random.Next(0, AddBooldChat.Length);

            Body.Say(AddBooldChat[index], 1, 0);
            Body.SyncAtTime = true;
            List <TurnedLiving> livinglist = Game.TurnQueue;

            healLiving = null;
            int blood = int.MaxValue;

            foreach (TurnedLiving living in livinglist)
            {
                if (living.Blood < blood && (living is SimpleBoss))
                {
                    blood      = living.Blood;
                    healLiving = living;
                }
            }
            if (healLiving != null)
            {
                Body.PlayMovie("castA", 0, 2000, new LivingCallBack(AddBloodLiving));
                Game.AddAction(new FocusAction(healLiving.X - 200, healLiving.Y - 200, 0, 1500, 3000));
            }
        }
コード例 #2
0
 public WaitLivingAttackingAction(TurnedLiving living, int turnIndex, int delay)
     : base(delay)
 {
     m_living             = living;
     m_turnIndex          = turnIndex;
     living.EndAttacking += player_EndAttacking;
 }
コード例 #3
0
ファイル: BaseGame.cs プロジェクト: uvbs/DDTank-3.0
        internal void SendGameUpdateDander(TurnedLiving player)
        {
            GSPacketIn pkg = new GSPacketIn((byte)ePackageType.GAME_CMD, player.Id);

            pkg.Parameter1 = player.Id;
            pkg.WriteByte((byte)eTankCmdType.DANDER);
            pkg.WriteInt(player.Dander);
            SendToAll(pkg);
        }
コード例 #4
0
ファイル: BaseGame.cs プロジェクト: uvbs/DDTank-3.0
        public TurnedLiving FindNextTurnedLiving()
        {
            if (m_turnQueue.Count == 0)
            {
                return(null);
            }
            int start = m_random.Next(m_turnQueue.Count - 1);

            TurnedLiving player = m_turnQueue[start];
            int          delay  = player.Delay;

            for (int i = 0; i < m_turnQueue.Count; i++)
            {
                if (m_turnQueue[i].Delay < delay && m_turnQueue[i].IsLiving)
                {
                    delay  = m_turnQueue[i].Delay;
                    player = m_turnQueue[i];
                }
            }

            player.TurnNum++;
            return(player);
        }
コード例 #5
0
 public WaitLivingAttackingAction(TurnedLiving living, int turnIndex, int delay) : base(delay)
 {
     this.m_living        = living;
     this.m_turnIndex     = turnIndex;
     living.EndAttacking += new LivingEventHandle(this.player_EndAttacking);
 }