____ _ __
/ __ )____ _____ | | / /___ ___________
/ __ / __ \/ ___/ | | /| / / __ `/ ___/ ___/
/ /_/ / /_/ (__ ) | |/ |/ / /_/ / / (__ )
/_____/\____/____/ |__/|__/\__,_/_/ /____/
A futuristic real-time strategy game.
This file is part of Bos Wars.
(C) Copyright 2001-2007 by the Bos Wars and Stratagus Project.
Distributed under the "GNU General Public License"
#include <stdio.h>
#include <stdlib.h>
#include "stratagus.h"
#include "unittype.h"
#include "animation.h"
#include "player.h"
#include "unit.h"
#include "missile.h"
#include "actions.h"
#include "sound.h"
#include "map.h"
#include "pathfinder.h"
#include "interface.h"
#include "ai.h"
Go to the source code of this file.
Functions | |
| static bool | RestoreSavedOrder (CUnit *unit) |
| static void | MoveToLocation (CUnit *unit) |
| static int | AnimateActionRepair (CUnit *unit) |
| static bool | DoRepair (CUnit *unit, CUnit *goal) |
| static void | RepairUnit (CUnit *unit) |
| void | HandleActionRepair (CUnit *unit) |
| Handle command patrol. | |
Definition in file action_repair.cpp.
| static int AnimateActionRepair | ( | CUnit * | unit | ) | [static] |
Animate unit repair
| unit | Unit to animate. |
Definition at line 188 of file action_repair.cpp.
References CUnitType::Animations, CAnimations::Repair, CUnit::Type, and UnitShowAnimation().
Referenced by RepairUnit().
Do the actual repair.
| unit | unit repairing | |
| goal | unit being repaired |
Definition at line 202 of file action_repair.cpp.
References Assert, CUnit::_order_data_::Built, CUnit::Data, EnergyCost, HP_INDEX, MagmaCost, CVariable::Max, CUnit::Orders, CUnit::Player, CUnitType::ProductionCosts, CUnit::_order_data_::_order_built_::Progress, CUnit::_order_data_::_order_repair_::Progress, CUnit::_order_data_::Repair, SpeedBuild, CUnit::Stats, CUnit::Type, UnitActionBuilt, CPlayer::UnitsConsumingResourcesActual, CVariable::Value, CUnit::Variable, and CUnitStats::Variables.
Referenced by RepairUnit().
| void HandleActionRepair | ( | CUnit * | unit | ) |
Handle command patrol.
Unit repairs
| unit | Unit that's doing the repairing |
Definition at line 307 of file action_repair.cpp.
References MoveToLocation(), RepairUnit(), and CUnit::SubAction.
| static void MoveToLocation | ( | CUnit * | unit | ) | [static] |
Move to build location
| unit | Unit to move |
Definition at line 84 of file action_repair.cpp.
References CPlayer::AddToUnitsConsumingResources(), CPlayer::AiEnabled, CUnit::Anim, Assert, CalculateRequestedAmount(), CUnit::ClearAction(), CUnit::Data, DebugPrint, DoActionMove(), HP_INDEX, CUnit::IsVisibleAsGoal(), MapDistanceBetweenUnits(), CVariable::Max, MaxCosts, NewResetPath, NoUnitP, CUnit::Orders, PF_FAILED, PF_REACHED, PF_UNREACHABLE, CUnit::Player, CUnit::_order_data_::_order_repair_::Progress, CUnit::RefsDecrease(), CUnit::_order_data_::Repair, CUnitType::RepairRange, RestoreSavedOrder(), CUnit::State, CUnit::SubAction, CUnitType::TileHeight, CUnitType::TileWidth, CUnit::Type, CUnit::_unit_anim_::Unbreakable, UnitActionRepair, UnitHeadingFromDeltaXY(), CVariable::Value, CUnit::Variable, CUnit::Wait, CUnit::X, and CUnit::Y.
| static void RepairUnit | ( | CUnit * | unit | ) | [static] |
Repair unit
| unit | Unit that's doing the repairing |
Definition at line 253 of file action_repair.cpp.
References CUnit::Anim, AnimateActionRepair(), CUnit::ClearAction(), DebugPrint, DoRepair(), CUnit::IsVisibleAsGoal(), MapDistanceBetweenUnits(), NewResetPath, NoUnitP, CUnit::Orders, CUnit::Player, CUnit::RefsDecrease(), CPlayer::RemoveFromUnitsConsumingResources(), CUnitType::RepairRange, RestoreSavedOrder(), CUnit::State, CUnit::SubAction, CUnit::Type, CUnit::_unit_anim_::Unbreakable, CUnit::X, and CUnit::Y.
Referenced by HandleActionRepair().
| static bool RestoreSavedOrder | ( | CUnit * | unit | ) | [static] |
Restore the saved order FIXME: this should be moved to a more central location
| unit | Unit to restore |
Definition at line 63 of file action_repair.cpp.
References COrder::Action, Assert, COrder::Goal, NewResetPath, NoUnitP, CUnit::Orders, CUnit::SavedOrder, CUnit::SubAction, and UnitActionStill.
Referenced by MoveToLocation(), and RepairUnit().
1.5.6