85 sprCheese, sprHandCheese, sprHandFlamethrower, sprChunk, sprNote, |
85 sprCheese, sprHandCheese, sprHandFlamethrower, sprChunk, sprNote, |
86 sprSMineOff, sprSMineOn, sprHandSMine, sprHammer, |
86 sprSMineOff, sprSMineOn, sprHandSMine, sprHammer, |
87 sprHandResurrector, sprCross, sprAirDrill, sprNapalmBomb, |
87 sprHandResurrector, sprCross, sprAirDrill, sprNapalmBomb, |
88 sprBulletHit, sprSnowball, sprHandSnowball, sprSnow, |
88 sprBulletHit, sprSnowball, sprHandSnowball, sprSnow, |
89 sprSDFlake, sprSDWater, sprSDCloud, sprSDSplash, sprSDDroplet, sprTardis, |
89 sprSDFlake, sprSDWater, sprSDCloud, sprSDSplash, sprSDDroplet, sprTardis, |
90 sprSlider, sprBotlevels, sprHandKnife, sprKnife, sprStar, sprIceTexture, sprIceGun, |
90 sprSlider, sprBotlevels, sprHandKnife, sprKnife, sprStar, sprIceTexture, sprIceGun, sprFrozenHog, sprAmRubber, sprBoing |
91 sprFrozenHog |
|
92 ); |
91 ); |
93 |
92 |
94 // Gears that interact with other Gears and/or Land |
93 // Gears that interact with other Gears and/or Land |
95 TGearType = (gtFlame, gtHedgehog, gtMine, gtCase, gtExplosives, // these gears should be avoided when searching a spawn place |
94 TGearType = (gtFlame, gtHedgehog, gtMine, gtCase, gtExplosives, // these gears should be avoided when searching a spawn place |
96 gtGrenade, gtShell, gtGrave, gtBee, // 8 |
95 gtGrenade, gtShell, gtGrave, gtBee, // 8 |
153 amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24 |
152 amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24 |
154 amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30 |
153 amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30 |
155 amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35 |
154 amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35 |
156 amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42 |
155 amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42 |
157 amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48 |
156 amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48 |
158 amResurrector, amDrillStrike, amSnowball, amTardis, {amStructure,} amLandGun, amIceGun, |
157 amResurrector, amDrillStrike, amSnowball, amTardis, {amStructure,} amLandGun, amIceGun, amKnife, amRubber); // 56 |
159 amKnife // 54 |
|
160 ); |
|
161 |
158 |
162 // Different kind of crates that e.g. hedgehogs can pick up |
159 // Different kind of crates that e.g. hedgehogs can pick up |
163 TCrateType = (HealthCrate, AmmoCrate, UtilityCrate); |
160 TCrateType = (HealthCrate, AmmoCrate, UtilityCrate); |
164 |
161 |
165 THWFont = (fnt16, fntBig, fntSmall {$IFNDEF MOBILE}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF}); |
162 THWFont = (fnt16, fntBig, fntSmall {$IFNDEF MOBILE}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF}); |
174 |
171 |
175 // Various 'emote' animations a hedgehog can do |
172 // Various 'emote' animations a hedgehog can do |
176 TWave = (waveRollup, waveSad, waveWave, waveHurrah, waveLemonade, waveShrug, waveJuggle); |
173 TWave = (waveRollup, waveSad, waveWave, waveHurrah, waveLemonade, waveShrug, waveJuggle); |
177 |
174 |
178 TRenderMode = (rmDefault, rmLeftEye, rmRightEye); |
175 TRenderMode = (rmDefault, rmLeftEye, rmRightEye); |
179 TStereoMode = (smNone, smRedCyan, smCyanRed, smRedBlue, smBlueRed, smRedGreen, smGreenRed, |
176 TStereoMode = (smNone, smRedCyan, smCyanRed, smRedBlue, smBlueRed, smRedGreen, smGreenRed, smHorizontal, smVertical); |
180 smHorizontal, smVertical); |
|
181 |
|
182 TWorldEdge = (weNone, weWrap, weBounce, weSea, weSky); |
177 TWorldEdge = (weNone, weWrap, weBounce, weSea, weSky); |
|
178 TUIDisplay = (uiAll, uiNoTeams, uiNone); |
183 |
179 |
184 THHFont = record |
180 THHFont = record |
185 Handle: PTTF_Font; |
181 Handle: PTTF_Font; |
186 Height: LongInt; |
182 Height: LongInt; |
187 style: LongInt; |
183 style: LongInt; |
263 Elasticity: hwFloat; |
259 Elasticity: hwFloat; |
264 Friction : hwFloat; |
260 Friction : hwFloat; |
265 Density : hwFloat; // Density is kind of a mix of size and density. Impacts distance thrown, wind. |
261 Density : hwFloat; // Density is kind of a mix of size and density. Impacts distance thrown, wind. |
266 ImpactSound: TSound; // first sound, others have to be after it in the sounds def. |
262 ImpactSound: TSound; // first sound, others have to be after it in the sounds def. |
267 nImpactSounds: Word; // count of ImpactSounds. |
263 nImpactSounds: Word; // count of ImpactSounds. |
268 // Do not use these if you want to take damage normally, otherwise health/damage are commonly used for other purposes |
264 // Don't use these if you want to take damage normally, otherwise health/damage are commonly used for other purposes |
269 Invulnerable: Boolean; |
|
270 Health, Damage, Karma: LongInt; |
265 Health, Damage, Karma: LongInt; |
271 // DirAngle is a 'real' - if you do not need it for rotation of sprite in uGearsRender, you can use it for any visual-only value |
266 // DirAngle is a 'real' - if you do not need it for rotation of sprite in uGearsRender, you can use it for any visual-only value |
272 DirAngle: real; |
267 DirAngle: real; |
273 // These are frequently overridden to serve some other purpose |
268 // These are frequently overridden to serve some other purpose |
274 Pos: Longword; // Commonly overridden. Example use is posCase values in uConsts. |
269 Pos: Longword; // Commonly overridden. Example use is posCase values in uConsts. |
376 Hat: shortstring; |
371 Hat: shortstring; |
377 InitialHealth: LongInt; // used for gfResetHealth |
372 InitialHealth: LongInt; // used for gfResetHealth |
378 King: boolean; // Flag for a bunch of hedgehog attributes |
373 King: boolean; // Flag for a bunch of hedgehog attributes |
379 Unplaced: boolean; // Flag for hog placing mode |
374 Unplaced: boolean; // Flag for hog placing mode |
380 Timer: Longword; |
375 Timer: Longword; |
|
376 HealthBarHealth: LongInt; |
381 Effects: array[THogEffect] of LongInt; |
377 Effects: array[THogEffect] of LongInt; |
382 end; |
378 end; |
383 |
379 |
384 TTeam = record |
380 TTeam = record |
385 Clan: PClan; |
381 Clan: PClan; |
386 TeamName: shortstring; |
382 TeamName: shortstring; |
387 ExtDriven: boolean; |
383 ExtDriven: boolean; |
388 Binds: TBinds; |
384 Binds: TBinds; |
389 Hedgehogs: array[0..cMaxHHIndex] of THedgehog; |
385 Hedgehogs: array[0..cMaxHHIndex] of THedgehog; |
390 CurrHedgehog: LongWord; |
386 CurrHedgehog: LongWord; |
391 NameTagTex: PTexture; |
387 NameTagTex, |
392 CrosshairTex, |
388 OwnerTex: PTexture; |
393 GraveTex, |
389 GraveTex, |
394 HealthTex, |
|
395 AIKillsTex, |
390 AIKillsTex, |
396 FlagTex: PTexture; |
391 FlagTex: PTexture; |
397 Flag: shortstring; |
392 Flag: shortstring; |
398 GraveName: shortstring; |
393 GraveName: shortstring; |
399 FortName: shortstring; |
394 FortName: shortstring; |
|
395 Owner: shortstring; |
400 TeamHealth: LongInt; |
396 TeamHealth: LongInt; |
401 TeamHealthBarWidth, |
397 TeamHealthBarHealth: LongInt; |
402 NewTeamHealthBarWidth: LongInt; |
|
403 DrawHealthY: LongInt; |
398 DrawHealthY: LongInt; |
404 AttackBar: LongWord; |
399 AttackBar: LongWord; |
405 HedgehogsNumber: Longword; |
400 HedgehogsNumber: Longword; |
406 hasGone: boolean; |
401 hasGone: boolean; |
407 voicepack: PVoicepack; |
402 voicepack: PVoicepack; |
442 sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime, |
438 sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime, |
443 sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, |
439 sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, |
444 sidMolotov, sidBirdy, sidPortalGun, sidPiano, sidGasBomb, |
440 sidMolotov, sidBirdy, sidPortalGun, sidPiano, sidGasBomb, |
445 sidSineGun, sidFlamethrower,sidSMine, sidHammer, sidResurrector, |
441 sidSineGun, sidFlamethrower,sidSMine, sidHammer, sidResurrector, |
446 sidDrillStrike, sidSnowball, sidNothing, sidTardis, |
442 sidDrillStrike, sidSnowball, sidNothing, sidTardis, |
447 {sidStructure,} sidLandGun, sidIceGun, sidKnife); |
443 {sidStructure,} sidLandGun, sidIceGun, sidKnife, sidRubber); |
448 |
444 |
449 TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, |
445 TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, |
450 sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync, |
446 sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync, |
451 sidNoEndTurn, sidNotYetAvailable, sidRoundSD, sidRoundsSD, sidReady, |
447 sidNoEndTurn, sidNotYetAvailable, sidRoundSD, sidRoundsSD, sidReady, |
452 sidBounce1, sidBounce2, sidBounce3, sidBounce4, sidBounce5, sidBounce, |
448 sidBounce1, sidBounce2, sidBounce3, sidBounce4, sidBounce5, sidBounce, |
453 sidMute); |
449 sidMute, sidAFK); |
454 |
450 |
455 // Events that are important for the course of the game or at least interesting for other reasons |
451 // Events that are important for the course of the game or at least interesting for other reasons |
456 TEventId = (eidDied, eidDrowned, eidRoundStart, eidRoundWin, eidRoundDraw, |
452 TEventId = (eidDied, eidDrowned, eidRoundStart, eidRoundWin, eidRoundDraw, |
457 eidNewHealthPack, eidNewAmmoPack, eidNewUtilityPack, eidTurnSkipped, |
453 eidNewHealthPack, eidNewAmmoPack, eidNewUtilityPack, eidTurnSkipped, |
458 eidHurtSelf, eidHomerun, eidGone); |
454 eidHurtSelf, eidHomerun, eidGone); |