00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef commandsH
00022 #define commandsH
00023
00024 class GameMap;
00025 class MapCoordinate;
00026 class MapCoordinate3D;
00027 class Vehicle;
00028
00029 #include "../actions/actionresult.h"
00030
00031 extern GameMap* loadGameLua( const char* filename );
00032
00033 extern ActionResult unitAttack( GameMap* actmap, int veh, const MapCoordinate& target, int weapon = -1 );
00034 extern ActionResult unitMovement( GameMap* actmap, int unitID, const MapCoordinate& destination, int destinationHeigth );
00035 extern ActionResult unitMovement( GameMap* actmap, int unitID, const MapCoordinate& destination );
00036 extern ActionResult putMineFunc( GameMap* actmap, int veh, const MapCoordinate& destination, int mineType );
00037 extern ActionResult removeMineFunc( GameMap* actmap, int veh, const MapCoordinate& destination );
00038 extern ActionResult unitPutObject( GameMap* actmap, int veh, const MapCoordinate& destination, int objectID );
00039 extern ActionResult unitRemoveObject( GameMap* actmap, int veh, const MapCoordinate& destination, int objectID );
00040 extern ActionResult unitDestructBuilding( GameMap* actmap, int veh, const MapCoordinate& destination );
00041 extern ActionResult transferControl( GameMap* actmap, int containerID, int newOwner );
00042 extern ActionResult trainUnit( GameMap* actmap, int containerID, int unitID );
00043 extern ActionResult constructUnit( GameMap* actmap, int containerID, const MapCoordinate& position, int unitID );
00044 extern ActionResult constructBuilding( GameMap* actmap, int unitID, const MapCoordinate& position, int buildingTypeID );
00045 extern ActionResult serviceCommand( GameMap* actmap, int providingContainerID, int receivingContainerID, int type, int amount );
00046 extern ActionResult repairUnit( GameMap* actmap, int repairerID, int damagedUnitID );
00047 extern ActionResult unitReactionFireEnable( GameMap* actmap, int unitID, bool enabled );
00048 extern ActionResult unitPowerGenerationEnable( GameMap* actmap, int unitID, int enabled );
00049 extern ActionResult unitJump( GameMap* actmap, int veh, const MapCoordinate& destination );
00050 extern ActionResult selfDestruct( GameMap* actmap, int containerID );
00051 extern ActionResult recycleUnit( GameMap* actmap, int containerID, int unitID );
00052 extern ActionResult buildProductionLine( GameMap* actmap, int containerID, int vehicleTypeID );
00053 extern ActionResult removeProductionLine( GameMap* actmap, int containerID, int vehicleTypeID );
00054 extern ActionResult repairBuilding( GameMap* actmap, int buildingID );
00055 extern ActionResult setResourceProcessingRate( GameMap* actmap, int containerID, int amount );
00056 extern ActionResult cargoUnitMove( GameMap* actmap, int unitID, int targetContainerID );
00057 extern ActionResult setDiplomacy( GameMap* actmap, int actingPlayer, int towardsPlayer, bool sneak, int newState );
00058 extern ActionResult cancelResearch( GameMap* actmap, int actingPlayer );
00059 extern ActionResult setResearchGoal( GameMap* actmap, int actingPlayer, int techID );
00060 extern ActionResult renameContainer( GameMap* actmap, int unitID, const ASCString& publicName, const ASCString& privateName );
00061
00062 extern void endTurn();
00063
00065 extern void endTurn_headLess(GameMap* gamemap);
00066
00067 extern Vehicle* getSelectedUnit( GameMap* map );
00068
00069 #endif