00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #if defined(karteneditor)
00028 #error the mapeditor should not need to use controls.h !
00029 #endif
00030
00031
00032 #ifndef controlsH
00033 #define controlsH
00034 #include "typen.h"
00035 #include "astar2.h"
00036
00037
00038
00040 struct tmoveparams {
00041 unsigned char movestatus;
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053 int movesx, movesy, moveerr;
00054 Vehicle* vehicletomove;
00055 int newheight;
00056 int oldheight;
00057 char heightdir;
00058 BuildingType* buildingtobuild;
00059 int movespeed;
00060 int uheight;
00061 tmoveparams() { reset(); };
00062 void reset();
00063 };
00065 extern tmoveparams moveparams;
00066
00067
00068
00072 extern pair<int,int> calcMoveMalus( const MapCoordinate3D& start,
00073 const MapCoordinate3D& dest,
00074 const Vehicle* vehicle,
00075 WindMovement* wm = NULL,
00076 bool* inhibitAttack = NULL,
00077 bool container2container = false );
00078
00080 extern int windbeeline ( const MapCoordinate& start, const MapCoordinate& dest, WindMovement* wm );
00081
00082
00086
00087
00089 extern void constructvehicle( Vehicletype* tnk );
00090
00092 extern void build_vehicles_reset( void );
00093
00095 extern void putMine( const MapCoordinate& pos, int typ, int delta );
00096
00098 extern void destructbuildinglevel2( int xp, int yp);
00099
00101 extern void destructbuildinglevel1( int xp, int yp);
00102
00103
00104
00106 extern void dissectvehicle ( Vehicle* eht );
00107
00108
00109
00110
00111
00112
00113 extern Resources getDestructionCost( Building* bld, Vehicle* veh );
00114
00115
00117 extern void researchCheck( Player& player );
00118
00119 #endif