102 gtHellishBomb, gtWaterUp, gtDrill, gtBallGun, gtBall, gtRCPlane, // 40 |
102 gtHellishBomb, gtWaterUp, gtDrill, gtBallGun, gtBall, gtRCPlane, // 40 |
103 gtSniperRifleShot, gtJetpack, gtMolotov, gtBirdy, // 44 |
103 gtSniperRifleShot, gtJetpack, gtMolotov, gtBirdy, // 44 |
104 gtEgg, gtPortal, gtPiano, gtGasBomb, gtSineGunShot, gtFlamethrower, // 50 |
104 gtEgg, gtPortal, gtPiano, gtGasBomb, gtSineGunShot, gtFlamethrower, // 50 |
105 gtSMine, gtPoisonCloud, gtHammer, gtHammerHit, gtResurrector, // 55 |
105 gtSMine, gtPoisonCloud, gtHammer, gtHammerHit, gtResurrector, // 55 |
106 gtNapalmBomb, gtSnowball, gtFlake, {gtStructure,} gtLandGun, gtTardis, // 61 |
106 gtNapalmBomb, gtSnowball, gtFlake, {gtStructure,} gtLandGun, gtTardis, // 61 |
107 gtIceGun, gtAddAmmo, gtGenericFaller, gtKnife); // 65 |
107 gtIceGun, gtAddAmmo, gtGenericFaller, gtKnife, gtAirMine); // 66 |
108 |
108 |
109 // Gears that are _only_ of visual nature (e.g. background stuff, visual effects, speechbubbles, etc.) |
109 // Gears that are _only_ of visual nature (e.g. background stuff, visual effects, speechbubbles, etc.) |
110 TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire, |
110 TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire, |
111 vgtSmallDamageTag, vgtTeamHealthSorter, vgtSpeechBubble, vgtBubble, |
111 vgtSmallDamageTag, vgtTeamHealthSorter, vgtSpeechBubble, vgtBubble, |
112 vgtSteam, vgtAmmo, vgtSmoke, vgtSmokeWhite, vgtShell, |
112 vgtSteam, vgtAmmo, vgtSmoke, vgtSmokeWhite, vgtShell, |
152 amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24 |
152 amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24 |
153 amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30 |
153 amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30 |
154 amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35 |
154 amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35 |
155 amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42 |
155 amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42 |
156 amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48 |
156 amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48 |
157 amResurrector, amDrillStrike, amSnowball, amTardis, {amStructure,} amLandGun, amIceGun, amKnife, amRubber); // 56 |
157 amResurrector, amDrillStrike, amSnowball, amTardis, {amStructure,} amLandGun, // 53 |
|
158 amIceGun, amKnife, amRubber, amAirMine); // 57 |
158 |
159 |
159 // Different kind of crates that e.g. hedgehogs can pick up |
160 // Different kind of crates that e.g. hedgehogs can pick up |
160 TCrateType = (HealthCrate, AmmoCrate, UtilityCrate); |
161 TCrateType = (HealthCrate, AmmoCrate, UtilityCrate); |
161 |
162 |
162 THWFont = (fnt16, fntBig, fntSmall {$IFNDEF MOBILE}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF}); |
163 THWFont = (fnt16, fntBig, fntSmall {$IFNDEF MOBILE}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF}); |
245 AIHints: LongWord; // hints for ai. |
246 AIHints: LongWord; // hints for ai. |
246 LastDamage: PHedgehog; // Used to track damage source for stats |
247 LastDamage: PHedgehog; // Used to track damage source for stats |
247 CollisionIndex: LongInt; // Position in collision array |
248 CollisionIndex: LongInt; // Position in collision array |
248 Message: LongWord; // Game messages are stored here. See gm bitmasks in uConsts |
249 Message: LongWord; // Game messages are stored here. See gm bitmasks in uConsts |
249 uid: Longword; // Lua use this to reference gears |
250 uid: Longword; // Lua use this to reference gears |
|
251 Hedgehog: PHedgehog; // set to CurrentHedgehog on gear creation. uStats damage code appears to assume it will never be nil and never be changed. |
250 // Strongly recommended not to override these. Will mess up generic operations like portaling |
252 // Strongly recommended not to override these. Will mess up generic operations like portaling |
251 X : hwFloat; // X/Y/dX/dY are position/velocity. People count on these having semi-normal values |
253 X : hwFloat; // X/Y/dX/dY are position/velocity. People count on these having semi-normal values |
252 Y : hwFloat; |
254 Y : hwFloat; |
253 dX: hwFloat; |
255 dX: hwFloat; |
254 dY: hwFloat; |
256 dY: hwFloat; |
276 MsgParam: LongWord; // Initially stored a set of messages. So usually gm values like Message. Frequently overriden |
278 MsgParam: LongWord; // Initially stored a set of messages. So usually gm values like Message. Frequently overriden |
277 // These are not used generically, but should probably be used for purpose intended. Definitely shouldn't override pointer type |
279 // These are not used generically, but should probably be used for purpose intended. Definitely shouldn't override pointer type |
278 Tex: PTexture; // A texture created by the gear. Shouldn't use for anything but textures |
280 Tex: PTexture; // A texture created by the gear. Shouldn't use for anything but textures |
279 Tint: LongWord; // Used to colour a texture |
281 Tint: LongWord; // Used to colour a texture |
280 LinkedGear: PGear; // Used to track a related gear. Portal pairs for example. |
282 LinkedGear: PGear; // Used to track a related gear. Portal pairs for example. |
281 Hedgehog: PHedgehog; // set to CurrentHedgehog on gear creation |
|
282 SoundChannel: LongInt; // Used to track a sound the gear started |
283 SoundChannel: LongInt; // Used to track a sound the gear started |
283 end; |
284 end; |
284 TPGearArray = array of PGear; |
285 TPGearArray = array of PGear; |
285 PGearArrayS = record |
286 PGearArrayS = record |
286 size: LongWord; |
287 size: LongWord; |
443 sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime, |
444 sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime, |
444 sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, |
445 sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, |
445 sidMolotov, sidBirdy, sidPortalGun, sidPiano, sidGasBomb, |
446 sidMolotov, sidBirdy, sidPortalGun, sidPiano, sidGasBomb, |
446 sidSineGun, sidFlamethrower,sidSMine, sidHammer, sidResurrector, |
447 sidSineGun, sidFlamethrower,sidSMine, sidHammer, sidResurrector, |
447 sidDrillStrike, sidSnowball, sidNothing, sidTardis, |
448 sidDrillStrike, sidSnowball, sidNothing, sidTardis, |
448 {sidStructure,} sidLandGun, sidIceGun, sidKnife, sidRubber); |
449 {sidStructure,} sidLandGun, sidIceGun, sidKnife, sidRubber, sidAirMine); |
449 |
450 |
450 TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, |
451 TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, |
451 sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync, |
452 sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync, |
452 sidNoEndTurn, sidNotYetAvailable, sidRoundSD, sidRoundsSD, sidReady, |
453 sidNoEndTurn, sidNotYetAvailable, sidRoundSD, sidRoundsSD, sidReady, |
453 sidBounce1, sidBounce2, sidBounce3, sidBounce4, sidBounce5, sidBounce, |
454 sidBounce1, sidBounce2, sidBounce3, sidBounce4, sidBounce5, sidBounce, |