Esempio n. 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);
                }
            }
        }
Esempio n. 2
0
 public void ShowMoveRange(CharacterLogic logic)
 {
     PositionMath.InitActionScope(logic.Info.Camp, logic.GetMoveClass(), logic.GetMovement(), logic.GetTileCoord(), logic.GetSelectRangeType(), logic.GetSelectRange());
     pathShower.ShowTiles(PathShower.EPathShowerType.Move, PositionMath.MoveableAreaPoints);
     pathShower.ShowTiles(PathShower.EPathShowerType.Damage, PositionMath.AttackAreaPoints, true, false);
 }