예제 #1
0
        private bool ValidateMoveArrow()
        {
            Game_Unit selected_unit = get_selected_unit();

            if (Move_Arrow.Any() && selected_unit != null)
            {
                int moveCost = 0;
                for (int i = 1; i < Move_Arrow.Count; i++)
                {
                    Move_Arrow_Data loc = Move_Arrow[i];
                    moveCost += selected_unit.move_cost(new Vector2(loc.X, loc.Y));
                }

                // If the arrow has exceeded the move score
                if (moveCost > selected_unit.canto_mov)
                {
                    Move_Arrow.Clear();
                    Selected_Move_Total = 0;
                    return(false);
                }
                else
                {
                    Selected_Move_Total = moveCost;
                }
            }

            return(true);
        }