Exemple #1
0
        /// <summary>
        /// 获取可移动到的区域的单位
        /// </summary>
        public override void GetInActionRange()
        {
            List <RPGCharacter> all = GetTargetCharacter();

            PositionMath.InitActionScope(logic.Info.Camp, logic.GetMoveClass(), logic.GetMovement(), logic.GetTileCoord(), logic.GetSelectRangeType(), logic.GetSelectRange());
            inRangeCharacters.Clear();
            foreach (var v in all)
            {
                if (PositionMath.IsInAttackableRange(v.GetTileCoord()))
                {
                    inRangeCharacters.Add(v);
                }
            }
        }
Exemple #2
0
        /// <summary>
        /// 获取站在原地是否攻击到的范围
        /// </summary>
        public void GetInAttackRange()
        {
            List <RPGCharacter> all = GetTargetCharacter();

            PositionMath.InitAttackScope(logic.GetTileCoord(), logic.Info.Items.Weapons);
            inRangeCharacters.Clear();
            foreach (var v in all)
            {
                if (PositionMath.IsInAttackableRange(v.GetTileCoord()))
                {
                    inRangeCharacters.Add(v);
                }
            }
        }