author | nemo |
Mon, 28 Mar 2011 20:13:03 -0400 | |
changeset 5065 | 0c2c509ccc7b |
parent 5062 | e2d38329b84a |
child 5118 | 9cfdb9bc6140 |
permissions | -rw-r--r-- |
4976 | 1 |
(* |
2 |
* Hedgewars, a free turn based strategy game |
|
3 |
* Copyright (c) 2004-2011 Andrey Korotaev <unC0Rr@gmail.com> |
|
4 |
* |
|
5 |
* This program is free software; you can redistribute it and/or modify |
|
6 |
* it under the terms of the GNU General Public License as published by |
|
7 |
* the Free Software Foundation; version 2 of the License |
|
8 |
* |
|
9 |
* This program is distributed in the hope that it will be useful, |
|
10 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
12 |
* GNU General Public License for more details. |
|
13 |
* |
|
14 |
* You should have received a copy of the GNU General Public License |
|
15 |
* along with this program; if not, write to the Free Software |
|
16 |
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA |
|
17 |
*) |
|
18 |
||
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
19 |
{$INCLUDE "options.inc"} |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
20 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
21 |
unit uTypes; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
22 |
interface |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
23 |
|
4361 | 24 |
uses SDLh, uFloat, GLunit, uConsts, Math; |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
25 |
|
4812
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
26 |
// NOTE: typed const is a variable despite const qualifier |
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
27 |
// in freepascal you may actually use var for the same purpose |
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
28 |
|
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
29 |
type |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
30 |
HwColor4f = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
31 |
r, g, b, a: byte |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
32 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
33 |
|
4454 | 34 |
TGameState = (gsLandGen, gsStart, gsGame, gsChat, gsConfirm, gsExit, gsSuspend); |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
35 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
36 |
TGameType = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview, gmtSyntax); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
37 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
38 |
TPathType = (ptNone, ptData, ptGraphics, ptThemes, ptCurrTheme, ptTeams, ptMaps, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
39 |
ptMapCurrent, ptDemos, ptSounds, ptGraves, ptFonts, ptForts, |
4748 | 40 |
ptLocale, ptAmmoMenu, ptHedgehog, ptVoices, ptHats, ptFlags, ptMissionMaps, ptSuddenDeath); |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
41 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
42 |
TSprite = (sprWater, sprCloud, sprBomb, sprBigDigit, sprFrame, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
43 |
sprLag, sprArrow, sprBazookaShell, sprTargetP, sprBee, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
44 |
sprSmokeTrace, sprRopeHook, sprExplosion50, sprMineOff, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
45 |
sprMineOn, sprMineDead, sprCase, sprFAid, sprDynamite, sprPower, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
46 |
sprClusterBomb, sprClusterParticle, sprFlame, sprHorizont, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
47 |
sprHorizontL, sprHorizontR, sprSky, sprSkyL, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
48 |
sprSkyR, sprAMBorderHorizontal, sprAMBorderVertical, sprAMSlot, sprAMAmmos, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
49 |
sprAMSlotKeys, sprAMCorners, sprFinger, sprAirBomb, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
50 |
sprAirplane, sprAmAirplane, sprAmGirder, sprHHTelepMask, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
51 |
sprSwitch, sprParachute, sprTarget, sprRopeNode, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
52 |
sprQuestion, sprPowerBar, sprWindBar, sprWindL, sprWindR, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
53 |
sprFlake, sprHandRope, sprHandBazooka, sprHandShotgun, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
54 |
sprHandDEagle, sprHandAirAttack, sprHandBaseball, sprPHammer, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
55 |
sprHandBlowTorch, sprBlowTorch, sprTeleport, sprHHDeath, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
56 |
sprShotgun, sprDEagle, sprHHIdle, sprMortar, sprTurnsLeft, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
57 |
sprKamikaze, sprWhip, sprKowtow, sprSad, sprWave, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
58 |
sprHurrah, sprLemonade, sprShrug, sprJuggle, sprExplPart, sprExplPart2, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
59 |
sprCakeWalk, sprCakeDown, sprAMAmmosBW, sprWatermelon, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
60 |
sprEvilTrace, sprHellishBomb, sprSeduction, sprDress, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
61 |
sprCensored, sprDrill, sprHandDrill, sprHandBallgun, sprBalls, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
62 |
sprPlane, sprHandPlane, sprUtility, sprInvulnerable, sprVampiric, sprGirder, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
63 |
sprSpeechCorner, sprSpeechEdge, sprSpeechTail, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
64 |
sprThoughtCorner, sprThoughtEdge, sprThoughtTail, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
65 |
sprShoutCorner, sprShoutEdge, sprShoutTail, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
66 |
sprSniperRifle, sprBubbles, sprJetpack, sprHealth, sprHandMolotov, sprMolotov, |
5065 | 67 |
sprSmoke, sprSmokeWhite, sprShell, sprDust, sprSnowDust, sprExplosives, sprExplosivesRoll, |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
68 |
sprAmTeleport, sprSplash, sprDroplet, sprBirdy, sprHandCake, sprHandConstruction, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
69 |
sprHandGrenade, sprHandMelon, sprHandMortar, sprHandSkip, sprHandCluster, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
70 |
sprHandDynamite, sprHandHellish, sprHandMine, sprHandSeduction, sprHandVamp, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
71 |
sprBigExplosion, sprSmokeRing, sprBeeTrace, sprEgg, sprTargetBee, sprHandBee, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
72 |
sprFeather, sprPiano, sprHandSineGun, sprPortalGun, sprPortal, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
73 |
sprCheese, sprHandCheese, sprHandFlamethrower, sprChunk, sprNote, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
74 |
sprSMineOff, sprSMineOn, sprHandSMine, sprHammer, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
75 |
sprHandResurrector, sprCross, sprAirDrill, sprNapalmBomb, |
4782
603916ddf4b6
added also splash and droplets to sd and refactored theme.cfg, not all themes updated
Henek
parents:
4772
diff
changeset
|
76 |
sprBulletHit, sprSnowball, sprHandSnowball, sprSnow, |
603916ddf4b6
added also splash and droplets to sd and refactored theme.cfg, not all themes updated
Henek
parents:
4772
diff
changeset
|
77 |
sprSDFlake, sprSDWater, sprSDCloud, sprSDSplash, sprSDDroplet |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
78 |
); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
79 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
80 |
// Gears that interact with other Gears and/or Land |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
81 |
TGearType = (gtBomb, gtHedgehog, gtShell, gtGrave, gtBee, // 4 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
82 |
gtShotgunShot, gtPickHammer, gtRope, gtMine, gtCase, // 9 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
83 |
gtDEagleShot, gtDynamite, gtClusterBomb, gtCluster, gtShover, // 14 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
84 |
gtFlame, gtFirePunch, gtATStartGame, gtATSmoothWindCh, // 18 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
85 |
gtATFinishGame, gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, // 23 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
86 |
gtGirder, gtTeleport, gtSwitcher, gtTarget, gtMortar, // 28 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
87 |
gtWhip, gtKamikaze, gtCake, gtSeduction, gtWatermelon, gtMelonPiece, // 34 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
88 |
gtHellishBomb, gtWaterUp, gtDrill, gtBallGun, gtBall, gtRCPlane, // 40 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
89 |
gtSniperRifleShot, gtJetpack, gtMolotov, gtExplosives, gtBirdy, // 45 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
90 |
gtEgg, gtPortal, gtPiano, gtGasBomb, gtSineGunShot, gtFlamethrower, // 51 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
91 |
gtSMine, gtPoisonCloud, gtHammer, gtHammerHit, gtResurrector, // 56 |
5024 | 92 |
gtNapalmBomb, gtSnowball, gtFlake, gtStructure, gtLandGun); // 61 |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
93 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
94 |
// Gears that are _only_ of visual nature (e.g. background stuff, visual effects, speechbubbles, etc.) |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
95 |
TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
96 |
vgtSmallDamageTag, vgtTeamHealthSorter, vgtSpeechBubble, vgtBubble, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
97 |
vgtSteam, vgtAmmo, vgtSmoke, vgtSmokeWhite, vgtHealth, vgtShell, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
98 |
vgtDust, vgtSplash, vgtDroplet, vgtSmokeRing, vgtBeeTrace, vgtEgg, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
99 |
vgtFeather, vgtHealthTag, vgtSmokeTrace, vgtEvilTrace, vgtExplosion, |
4420
6be946bcd17a
Add a visual gear for drawing circles. Intent is to allow specifying areas on map for lua scripts (such as to indicate a location to go to). Could also be used to, say, circle a hog in CTF. Also add a "Critical" flag for visual gears so a gear flagges as such will always be created.
nemo
parents:
4379
diff
changeset
|
100 |
vgtBigExplosion, vgtChunk, vgtNote, vgtLineTrail, vgtBulletHit, vgtCircle); |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
101 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
102 |
TGearsType = set of TGearType; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
103 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
104 |
TDamageSource = (dsUnknown, dsFall, dsBullet, dsExplosion, dsShove, dsPoison); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
105 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
106 |
TSound = (sndNone, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
107 |
sndGrenadeImpact, sndExplosion, sndThrowPowerUp, sndThrowRelease, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
108 |
sndSplash, sndShotgunReload, sndShotgunFire, sndGraveImpact, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
109 |
sndMineTick, sndPickhammer, sndGun, sndBee, sndJump1, sndJump2, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
110 |
sndJump3, sndYesSir, sndLaugh, sndIllGetYou, sndIncoming, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
111 |
sndMissed, sndStupid, sndFirstBlood, sndBoring, sndByeBye, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
112 |
sndSameTeam, sndNutter, sndReinforce, sndTraitor, sndRegret, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
113 |
sndEnemyDown, sndCoward, sndHurry, sndWatchIt, sndKamikaze, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
114 |
sndCake, sndOw1, sndOw2, sndOw3, sndOw4, sndFirePunch1, sndFirePunch2, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
115 |
sndFirePunch3, sndFirePunch4, sndFirePunch5, sndFirePunch6, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
116 |
sndMelon, sndHellish, sndYoohoo, sndRCPlane, sndWhipCrack, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
117 |
sndRideOfTheValkyries, sndDenied, sndPlaced, sndBaseballBat, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
118 |
sndVaporize, sndWarp, sndSuddenDeath, sndMortar, sndShutter, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
119 |
sndHomerun, sndMolotov, sndCover, sndUhOh, sndOops, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
120 |
sndNooo, sndHello, sndRopeShot, sndRopeAttach, sndRopeRelease, |
4978 | 121 |
sndSwitchHog, sndVictory, sndFlawless, sndSniperReload, sndSteps, sndLowGravity, |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
122 |
sndHellishImpact1, sndHellishImpact2, sndHellishImpact3, sndHellishImpact4, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
123 |
sndMelonImpact, sndDroplet1, sndDroplet2, sndDroplet3, sndEggBreak, sndDrillRocket, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
124 |
sndPoisonCough, sndPoisonMoan, sndBirdyLay, sndWhistle, sndBeeWater, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
125 |
sndPiano0, sndPiano1, sndPiano2, sndPiano3, sndPiano4, sndPiano5, sndPiano6, sndPiano7, sndPiano8, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
126 |
sndSkip, sndSineGun, sndOoff1, sndOoff2, sndOoff3, sndWhack, |
4956
48e1f9a04c28
usound: added function for loops with fade in and out
koda
parents:
4883
diff
changeset
|
127 |
sndComeonthen, sndParachute, sndBump, sndResurrector, sndPlane); |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
128 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
129 |
TAmmoType = (amNothing, amGrenade, amClusterBomb, amBazooka, amBee, amShotgun, amPickHammer, // 6 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
130 |
amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch, amWhip, // 13 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
131 |
amBaseballBat, amParachute, amAirAttack, amMineStrike, amBlowTorch, // 18 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
132 |
amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
133 |
amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
134 |
amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
135 |
amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42 |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
136 |
amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48 |
5024 | 137 |
amResurrector, amDrillStrike, amSnowball, amTardis, amStructure, amLandGun); // 54 |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
138 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
139 |
TCrateType = (HealthCrate, AmmoCrate, UtilityCrate); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
140 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
141 |
THWFont = (fnt16, fntBig, fntSmall {$IFNDEF IPHONEOS}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF}); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
142 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
143 |
TCapGroup = (capgrpGameState, capgrpAmmoinfo, capgrpVolume, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
144 |
capgrpMessage, capgrpAmmostate); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
145 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
146 |
TStatInfoType = (siGameResult, siMaxStepDamage, siMaxStepKills, siKilledHHs, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
147 |
siClanHealth, siTeamStats, siPlayerKills, siMaxTeamDamage, |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
148 |
siMaxTeamKills, siMaxTurnSkips ); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
149 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
150 |
TWave = (waveRollup, waveSad, waveWave, waveHurrah, waveLemonade, waveShrug, waveJuggle); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
151 |
|
4812
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
152 |
TRenderMode = (rmDefault, rmLeftEye, rmRightEye); |
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
153 |
TStereoMode = (smNone, smRedCyan, smCyanRed, smRedBlue, smBlueRed, smRedGreen, smGreenRed, smHorizontal, smVertical, smAFR); |
f924be23ffb4
merge with HEAD after 0.9.15 release, move consts and vars in their proper files
koda
parents:
4807
diff
changeset
|
154 |
|
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
155 |
THHFont = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
156 |
Handle: PTTF_Font; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
157 |
Height: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
158 |
style: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
159 |
Name: string[21]; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
160 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
161 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
162 |
PAmmo = ^TAmmo; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
163 |
TAmmo = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
164 |
Propz: LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
165 |
Count: LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
166 |
(* Using for place hedgehogs mode, but for any other situation where the initial count would be needed I guess. |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
167 |
For example, say, a mode where the weaponset is reset each turn, or on sudden death *) |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
168 |
NumPerTurn: LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
169 |
Timer: LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
170 |
Pos: LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
171 |
AmmoType: TAmmoType; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
172 |
AttackVoice: TSound; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
173 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
174 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
175 |
TVertex2f = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
176 |
X, Y: GLfloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
177 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
178 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
179 |
TVertex2i = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
180 |
X, Y: GLint; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
181 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
182 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
183 |
PTexture = ^TTexture; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
184 |
TTexture = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
185 |
id: GLuint; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
186 |
w, h, scale: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
187 |
rx, ry: GLfloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
188 |
priority: GLfloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
189 |
vb, tb: array [0..3] of TVertex2f; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
190 |
PrevTexture, NextTexture: PTexture; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
191 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
192 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
193 |
THogEffect = (heInvulnerable, heResurrectable, hePoisoned, heResurrected); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
194 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
195 |
TScreenFade = (sfNone, sfInit, sfToBlack, sfFromBlack, sfToWhite, sfFromWhite); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
196 |
|
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
197 |
PGear = ^TGear; |
4361 | 198 |
PHedgehog = ^THedgehog; |
199 |
PTeam = ^TTeam; |
|
200 |
PClan = ^TClan; |
|
201 |
||
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
202 |
TGearStepProcedure = procedure (Gear: PGear); |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
203 |
TGear = record |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
204 |
NextGear, PrevGear: PGear; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
205 |
Active: Boolean; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
206 |
AdvBounce: Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
207 |
Invulnerable: Boolean; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
208 |
RenderTimer: Boolean; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
209 |
AmmoType : TAmmoType; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
210 |
State : Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
211 |
X : hwFloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
212 |
Y : hwFloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
213 |
dX: hwFloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
214 |
dY: hwFloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
215 |
Kind: TGearType; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
216 |
Pos: Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
217 |
doStep: TGearStepProcedure; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
218 |
Radius: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
219 |
Angle, Power : Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
220 |
DirAngle: real; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
221 |
Timer : LongWord; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
222 |
Elasticity: hwFloat; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
223 |
Friction : hwFloat; |
4602
ec84fb564bab
added density for gears used in gfMoreWind, needs alot of tweaking
Henek
parents:
4578
diff
changeset
|
224 |
Density : hwFloat; |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
225 |
Message, MsgParam : Longword; |
4361 | 226 |
Hedgehog: PHedgehog; |
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
227 |
Health, Damage, Karma: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
228 |
CollisionIndex: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
229 |
Tag: LongInt; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
230 |
Tex: PTexture; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
231 |
Z: Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
232 |
IntersectGear: PGear; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
233 |
FlightTime: Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
234 |
uid: Longword; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
235 |
ImpactSound: TSound; // first sound, others have to be after it in the sounds def. |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
236 |
nImpactSounds: Word; // count of ImpactSounds |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
237 |
SoundChannel: LongInt; |
5062 | 238 |
PortalCounter: LongWord; // Hopefully temporary, but avoids infinite portal loops in a guaranteed fashion. |
239 |
LastDamage: PHedgehog; |
|
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
240 |
end; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
241 |
TPGearArray = Array of PGear; |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
242 |
|
4361 | 243 |
PVisualGear = ^TVisualGear; |
244 |
TVGearStepProcedure = procedure (Gear: PVisualGear; Steps: Longword); |
|
245 |
TVisualGear = record |
|
246 |
NextGear, PrevGear: PVisualGear; |
|
247 |
Frame, |
|
248 |
FrameTicks: Longword; |
|
4379
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
249 |
X : real; |
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
250 |
Y : real; |
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
251 |
dX: real; |
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
252 |
dY: real; |
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
253 |
tdX: real; |
6cd6b77df8b8
No need for Extended data type just to draw some visual gears. It's a shame we have Math unit dependency
unC0Rr
parents:
4367
diff
changeset
|
254 |
tdY: real; |
4361 | 255 |
State : Longword; |
256 |
Timer: Longword; |
|
257 |
Angle, dAngle: real; |
|
258 |
Kind: TVisualGearType; |
|
259 |
doStep: TVGearStepProcedure; |
|
260 |
Tex: PTexture; |
|
261 |
alpha, scale: GLfloat; |
|
4365 | 262 |
Hedgehog: PHedgehog; |
4361 | 263 |
Text: shortstring; |
264 |
Tint: Longword; |
|
4422 | 265 |
uid: Longword; |
4361 | 266 |
end; |
267 |
||
268 |
TStatistics = record |
|
269 |
DamageRecv, |
|
270 |
DamageGiven: Longword; |
|
271 |
StepDamageRecv, |
|
272 |
StepDamageGiven, |
|
273 |
StepKills: Longword; |
|
274 |
MaxStepDamageRecv, |
|
275 |
MaxStepDamageGiven, |
|
276 |
MaxStepKills: Longword; |
|
277 |
FinishedTurns: Longword; |
|
278 |
end; |
|
279 |
||
280 |
TTeamStats = record |
|
281 |
Kills : Longword; |
|
282 |
AIKills : Longword; |
|
283 |
TeamKills : Longword; |
|
284 |
TurnSkips : Longword; |
|
285 |
TeamDamage : Longword; |
|
286 |
end; |
|
287 |
||
288 |
TBinds = array[0..cKeyMaxIndex] of shortstring; |
|
289 |
TKeyboardState = array[0..cKeyMaxIndex] of Byte; |
|
290 |
||
291 |
PVoicepack = ^TVoicepack; |
|
292 |
TVoicepack = record |
|
293 |
name: shortstring; |
|
294 |
chunks: array [TSound] of PMixChunk; |
|
295 |
end; |
|
296 |
||
297 |
PHHAmmo = ^THHAmmo; |
|
298 |
THHAmmo = array[0..cMaxSlotIndex, 0..cMaxSlotAmmoIndex] of TAmmo; |
|
299 |
||
300 |
THedgehog = record |
|
301 |
Name: string[MAXNAMELEN]; |
|
302 |
Gear: PGear; |
|
4881
35e6269227b6
still in developement take on adding structures, working hiding of hogs and ejecting them later.
Henek
parents:
4812
diff
changeset
|
303 |
GearHidden: PGear; |
4361 | 304 |
SpeechGear: PVisualGear; |
305 |
NameTagTex, |
|
306 |
HealthTagTex, |
|
307 |
HatTex: PTexture; |
|
308 |
Ammo: PHHAmmo; |
|
309 |
CurAmmoType: TAmmoType; |
|
310 |
AmmoStore: Longword; |
|
311 |
Team: PTeam; |
|
312 |
MultiShootAttacks: Longword; |
|
313 |
visStepPos: LongWord; |
|
314 |
BotLevel : Byte; // 0 - Human player |
|
315 |
HatVisibility: GLfloat; |
|
316 |
stats: TStatistics; |
|
317 |
Hat: shortstring; |
|
318 |
InitialHealth: LongInt; // used for gfResetHealth |
|
319 |
King: boolean; // Flag for a bunch of hedgehog attributes |
|
320 |
Unplaced: boolean; // Flag for hog placing mode |
|
321 |
Timer: Longword; |
|
322 |
Effects: Array[THogEffect] of boolean; |
|
323 |
end; |
|
324 |
||
325 |
TTeam = record |
|
326 |
Clan: PClan; |
|
327 |
TeamName: string[MAXNAMELEN]; |
|
328 |
ExtDriven: boolean; |
|
329 |
Binds: TBinds; |
|
330 |
Hedgehogs: array[0..cMaxHHIndex] of THedgehog; |
|
331 |
CurrHedgehog: LongWord; |
|
332 |
NameTagTex: PTexture; |
|
333 |
CrosshairTex, |
|
334 |
GraveTex, |
|
335 |
HealthTex, |
|
336 |
AIKillsTex, |
|
337 |
FlagTex: PTexture; |
|
338 |
Flag: shortstring; |
|
339 |
GraveName: shortstring; |
|
340 |
FortName: shortstring; |
|
341 |
TeamHealth: LongInt; |
|
342 |
TeamHealthBarWidth, |
|
343 |
NewTeamHealthBarWidth: LongInt; |
|
344 |
DrawHealthY: LongInt; |
|
345 |
AttackBar: LongWord; |
|
346 |
HedgehogsNumber: Longword; |
|
347 |
hasGone: boolean; |
|
348 |
voicepack: PVoicepack; |
|
349 |
PlayerHash: shortstring; // md5 hash of player name. For temporary enabling of hats as thank you. Hashed for privacy of players |
|
350 |
stats: TTeamStats; |
|
351 |
end; |
|
352 |
||
353 |
TClan = record |
|
354 |
Color: Longword; |
|
355 |
Teams: array[0..Pred(cMaxTeams)] of PTeam; |
|
356 |
TeamsNumber: Longword; |
|
5016
9347d82a26cc
added game mode Tag Team, mostly untested, please test :)
Henek
parents:
4978
diff
changeset
|
357 |
TagTeamIndex: Longword; |
4361 | 358 |
CurrTeam: LongWord; |
359 |
ClanHealth: LongInt; |
|
360 |
ClanIndex: LongInt; |
|
361 |
TurnNumber: LongWord; |
|
4978 | 362 |
Flawless: boolean; |
4361 | 363 |
end; |
364 |
||
4807
180dbfb13903
display caption for ammotype amNothing when switched to so that players know what just happened
sheepluva
parents:
4782
diff
changeset
|
365 |
TAmmoStrId = (sidGrenade, sidClusterBomb, sidBazooka, sidBee, sidShotgun, |
4361 | 366 |
sidPickHammer, sidSkip, sidRope, sidMine, sidDEagle, |
367 |
sidDynamite, sidBaseballBat, sidFirePunch, sidSeconds, |
|
368 |
sidParachute, sidAirAttack, sidMineStrike, sidBlowTorch, |
|
369 |
sidGirder, sidTeleport, sidSwitch, sidMortar, sidWhip, |
|
370 |
sidKamikaze, sidCake, sidSeduction, sidWatermelon, |
|
371 |
sidHellishBomb, sidDrill, sidBallgun, sidNapalm, sidRCPlane, |
|
372 |
sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime, |
|
373 |
sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, |
|
374 |
sidMolotov, sidBirdy, sidPortalGun, sidPiano, sidGasBomb, sidSineGun, sidFlamethrower, |
|
5024 | 375 |
sidSMine, sidHammer, sidResurrector, sidDrillStrike, sidSnowball, sidNothing, sidTardis, sidStructure, sidLandGun); |
4361 | 376 |
|
377 |
TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, |
|
378 |
sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync, |
|
379 |
sidNoEndTurn, sidNotYetAvailable, sidRoundSD, sidRoundsSD, sidReady); |
|
380 |
||
381 |
TEventId = (eidDied, eidDrowned, eidRoundStart, eidRoundWin, eidRoundDraw, |
|
382 |
eidNewHealthPack, eidNewAmmoPack, eidNewUtilityPack, eidTurnSkipped, eidHurtSelf, |
|
383 |
eidHomerun, eidGone); |
|
384 |
||
385 |
TGoalStrId = (gidCaption, gidSubCaption, gidForts, gidLowGravity, gidInvulnerable, |
|
386 |
gidVampiric, gidKarma, gidKing, gidPlaceHog, gidArtillery, |
|
387 |
gidSolidLand, gidSharedAmmo, gidMineTimer, gidNoMineTimer, gidRandomMineTimer, |
|
5022
d2a2f6c9b236
some final work and buggfix for Tag Team, it is now playable
Henek
parents:
5016
diff
changeset
|
388 |
gidDamageModifier, gidResetHealth, gidAISurvival, gidInfAttack, gidResetWeps, gidPerHogAmmo, gidTagTeam); |
4361 | 389 |
|
4367 | 390 |
TLandArray = packed array of array of LongWord; |
391 |
TCollisionArray = packed array of array of Word; |
|
392 |
TPreview = packed array[0..127, 0..31] of byte; |
|
393 |
TDirtyTag = packed array of array of byte; |
|
394 |
||
395 |
||
4357
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
396 |
implementation |
a1fcfc341a52
Introduce unit uTypes in order to remove some cyclic unit dependencies
unC0Rr
parents:
diff
changeset
|
397 |
|
4420
6be946bcd17a
Add a visual gear for drawing circles. Intent is to allow specifying areas on map for lua scripts (such as to indicate a location to go to). Could also be used to, say, circle a hog in CTF. Also add a "Critical" flag for visual gears so a gear flagges as such will always be created.
nemo
parents:
4379
diff
changeset
|
398 |
end. |