1 /* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */ 2 3 #ifndef COBDEFINES_H 4 #define COBDEFINES_H 5 6 /* update LuaConstCOB.cpp anytime this is updated! */ 7 8 9 // Indices for emit-sfx 10 #define SFX_VTOL 0 11 #define SFX_WAKE 2 12 #define SFX_WAKE_2 3 // same as SFX_WAKE 13 #define SFX_REVERSE_WAKE 4 14 #define SFX_REVERSE_WAKE_2 5 // same as SFX_REVERSE_WAKE 15 #define SFX_WHITE_SMOKE 257 16 #define SFX_BLACK_SMOKE 258 17 #define SFX_BUBBLE 259 18 #define SFX_CEG 1024 19 #define SFX_FIRE_WEAPON 2048 20 #define SFX_DETONATE_WEAPON 4096 21 22 23 // Indices for set/get value 24 #define ACTIVATION 1 // set or get 25 #define STANDINGMOVEORDERS 2 // set or get 26 #define STANDINGFIREORDERS 3 // set or get 27 #define HEALTH 4 // get (0-100%) 28 #define INBUILDSTANCE 5 // set or get 29 #define BUSY 6 // set or get (used by misc. special case missions like transport ships) 30 #define PIECE_XZ 7 // get 31 #define PIECE_Y 8 // get 32 #define UNIT_XZ 9 // get 33 #define UNIT_Y 10 // get 34 #define UNIT_HEIGHT 11 // get 35 #define XZ_ATAN 12 // get atan of packed x,z coords 36 #define XZ_HYPOT 13 // get hypot of packed x,z coords 37 #define ATAN 14 // get ordinary two-parameter atan 38 #define HYPOT 15 // get ordinary two-parameter hypot 39 #define GROUND_HEIGHT 16 // get land height, 0 if below water 40 #define BUILD_PERCENT_LEFT 17 // get 0 = unit is built and ready, 1-100 = How much is left to build 41 #define YARD_OPEN 18 // set or get (change which plots we occupy when building opens and closes) 42 #define BUGGER_OFF 19 // set or get (ask other units to clear the area) 43 #define ARMORED 20 // set or get 44 45 /*#define WEAPON_AIM_ABORTED 21 46 #define WEAPON_READY 22 47 #define WEAPON_LAUNCH_NOW 23 48 #define FINISHED_DYING 26 49 #define ORIENTATION 27*/ 50 #define IN_WATER 28 51 #define CURRENT_SPEED 29 52 //#define MAGIC_DEATH 31 53 #define VETERAN_LEVEL 32 54 #define ON_ROAD 34 55 56 #define MAX_ID 70 57 #define MY_ID 71 58 #define UNIT_TEAM 72 59 #define UNIT_BUILD_PERCENT_LEFT 73 60 #define UNIT_ALLIED 74 61 #define MAX_SPEED 75 62 #define CLOAKED 76 63 #define WANT_CLOAK 77 64 #define GROUND_WATER_HEIGHT 78 // get land height, negative if below water 65 #define UPRIGHT 79 // set or get 66 #define POW 80 // get 67 #define PRINT 81 // get, so multiple args can be passed 68 #define HEADING 82 // get 69 #define TARGET_ID 83 // get 70 #define LAST_ATTACKER_ID 84 // get 71 #define LOS_RADIUS 85 // set or get 72 #define AIR_LOS_RADIUS 86 // set or get 73 #define RADAR_RADIUS 87 // set or get 74 #define JAMMER_RADIUS 88 // set or get 75 #define SONAR_RADIUS 89 // set or get 76 #define SONAR_JAM_RADIUS 90 // set or get 77 #define SEISMIC_RADIUS 91 // set or get 78 #define DO_SEISMIC_PING 92 // get 79 #define CURRENT_FUEL 93 // set or get 80 #define TRANSPORT_ID 94 // get 81 #define SHIELD_POWER 95 // set or get 82 #define STEALTH 96 // set or get 83 #define CRASHING 97 // set or get, returns whether aircraft isCrashing state 84 #define CHANGE_TARGET 98 // set, the value it's set to determines the affected weapon 85 #define CEG_DAMAGE 99 // set 86 #define COB_ID 100 // get 87 #define PLAY_SOUND 101 // get, so multiple args can be passed 88 #define KILL_UNIT 102 // get KILL_UNIT(unitId, SelfDestruct=true, Reclaimed=false) 89 #define ALPHA_THRESHOLD 103 // set or get 90 #define SET_WEAPON_UNIT_TARGET 106 // get (fake set) 91 #define SET_WEAPON_GROUND_TARGET 107 // get (fake set) 92 #define SONAR_STEALTH 108 // set or get 93 #define REVERSING 109 // get 94 95 // NOTE: [LUA0 - LUA9] are defined in CobThread.cpp as [110 - 119] 96 97 #define FLANK_B_MODE 120 // set or get 98 #define FLANK_B_DIR 121 // set or get, set is through get for multiple args 99 #define FLANK_B_MOBILITY_ADD 122 // set or get 100 #define FLANK_B_MAX_DAMAGE 123 // set or get 101 #define FLANK_B_MIN_DAMAGE 124 // set or get 102 #define WEAPON_RELOADSTATE 125 // get (with fake set) 103 #define WEAPON_RELOADTIME 126 // get (with fake set) 104 #define WEAPON_ACCURACY 127 // get (with fake set) 105 #define WEAPON_SPRAY 128 // get (with fake set) 106 #define WEAPON_RANGE 129 // get (with fake set) 107 #define WEAPON_PROJECTILE_SPEED 130 // get (with fake set) 108 #define MIN 131 // get 109 #define MAX 132 // get 110 #define ABS 133 // get 111 #define GAME_FRAME 134 // get 112 #define KSIN 135 // get (kiloSine : 1024*sin(x)) 113 #define KCOS 136 // get (kiloCosine : 1024*cos(x)) 114 #define KTAN 137 // get (kiloTangent : 1024*tan(x)) 115 #define SQRT 138 // get (square root) 116 117 // NOTE: shared variables use codes [1024 - 5119] 118 119 #endif 120