/// <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); } } }
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); }