author | nemo |
Fri, 30 Sep 2011 22:33:28 -0400 | |
changeset 6077 | d8fa5a85d24f |
parent 5717 | 6d513913b7a9 |
child 6081 | 537bbd5c1a62 |
permissions | -rw-r--r-- |
4 | 1 |
(* |
1066 | 2 |
* Hedgewars, a free turn based strategy game |
4976 | 3 |
* Copyright (c) 2004-2011 Andrey Korotaev <unC0Rr@gmail.com> |
4 | 4 |
* |
183 | 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 |
|
4 | 8 |
* |
183 | 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. |
|
4 | 13 |
* |
183 | 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 |
|
4 | 17 |
*) |
18 |
||
2599 | 19 |
{$INCLUDE "options.inc"} |
2587
0dfa56a8513c
fix a segfault in the iphone simulator by moving options.inc at the beginning of the file
koda
parents:
2586
diff
changeset
|
20 |
|
4 | 21 |
unit uConsts; |
22 |
interface |
|
1906 | 23 |
|
4361 | 24 |
uses SDLh, uFloat, GLunit; |
1906 | 25 |
|
2924 | 26 |
{$INCLUDE "config.inc"} |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2653
diff
changeset
|
27 |
|
3709 | 28 |
const |
29 |
sfMax = 1000; |
|
4004
b1c2c2f6fc5e
update branch with latest head, most likely breaking water color in stereo mode
koda
diff
changeset
|
30 |
cDefaultParamNum = 17; |
3107 | 31 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
32 |
// message constants |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
33 |
errmsgCreateSurface = 'Error creating SDL surface'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
34 |
errmsgTransparentSet = 'Error setting transparent color'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
35 |
errmsgUnknownCommand = 'Unknown command'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
36 |
errmsgUnknownVariable = 'Unknown variable'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
37 |
errmsgIncorrectUse = 'Incorrect use'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
38 |
errmsgShouldntRun = 'This program shouldn''t be run manually'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
39 |
errmsgWrongNumber = 'Wrong parameters number'; |
4 | 40 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
41 |
msgLoading = 'Loading '; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
42 |
msgOK = 'ok'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
43 |
msgFailed = 'failed'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
44 |
msgFailedSize = 'failed due to size'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
45 |
msgGettingConfig = 'Getting game config...'; |
4 | 46 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
47 |
// color constants |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
48 |
cWhiteColorChannels : TSDL_Color = (r:$FF; g:$FF; b:$FF; unused:$FF); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
49 |
cNearBlackColorChannels : TSDL_Color = (r:$00; g:$00; b:$10; unused:$FF); |
2699
249adefa9c1c
replace initialization/finalization statements with custom init functions
koda
parents:
2697
diff
changeset
|
50 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
51 |
cWhiteColor : Longword = $FFFFFFFF; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
52 |
cYellowColor : Longword = $FFFFFF00; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
53 |
cNearBlackColor : Longword = $FF000010; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
54 |
cExplosionBorderColor : LongWord = $FF808080; |
2376 | 55 |
|
2699
249adefa9c1c
replace initialization/finalization statements with custom init functions
koda
parents:
2697
diff
changeset
|
56 |
{$WARNINGS OFF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
57 |
cAirPlaneSpeed: hwFloat = (isNegative: false; QWordValue: 3006477107); // 1.4 |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
58 |
cBombsSpeed : hwFloat = (isNegative: false; QWordValue: 429496729); |
2699
249adefa9c1c
replace initialization/finalization statements with custom init functions
koda
parents:
2697
diff
changeset
|
59 |
{$WARNINGS ON} |
621 | 60 |
|
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
61 |
// reducedquality flags |
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
62 |
rqNone = $00000000; // don't reduce quality |
3634 | 63 |
rqLowRes = $00000001; // use half land array |
64 |
rqBlurryLand = $00000002; // downscaled terrain |
|
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
65 |
rqNoBackground= $00000004; // don't draw background |
3862 | 66 |
rqSimpleRope = $00000008; // draw rope using lines only |
67 |
rq2DWater = $00000010; // disable 3D water effect |
|
4809
9c7d5f802618
rearrange quality flags a little, disable snow rendering on rqLowRes
koda
parents:
4808
diff
changeset
|
68 |
rqAntiBoom = $00000020; // no fancy explosion effects |
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
69 |
rqKillFlakes = $00000040; // no flakes |
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
70 |
rqSlowMenu = $00000080; // ammomenu appears with no animation |
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
71 |
rqPlainSplash = $00000100; // no droplets |
3611 | 72 |
rqClampLess = $00000200; // don't clamp textures |
3634 | 73 |
rqTooltipsOff = $00000400; // tooltips are not drawn |
3670
4c673e57f0d7
use llvm to compile, don't preview map on wimpier devices, merge vsync, fix iphone launch image
koda
parents:
3668
diff
changeset
|
74 |
rqDesyncVBlank= $00000800; // don't sync on vblank |
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
75 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
76 |
// image flags (for LoadImage()) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
77 |
ifNone = $00000000; // nothing special |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
78 |
ifAlpha = $00000001; // use alpha channel (unused right now?) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
79 |
ifCritical = $00000002; // image is critical for gameplay (exit game if unable to load) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
80 |
ifTransparent = $00000004; // image uses transparent pixels (color keying) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
81 |
ifIgnoreCaps = $00000008; // ignore hardware capabilities when loading (i.e. image will not be drawn using OpenGL) |
74 | 82 |
|
3491 | 83 |
// texture priority (allows OpenGL to keep frequently used textures in video memory more easily) |
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
84 |
tpLowest = 0.00; |
3491 | 85 |
tpLow = 0.25; |
86 |
tpMedium = 0.50; |
|
87 |
tpHigh = 0.75; |
|
3594
aeca3d8f1b29
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)
koda
parents:
3569
diff
changeset
|
88 |
tpHighest = 1.00; |
3491 | 89 |
|
3509
d72c2219595d
Make land types flagged (to allow stacking future attributes such as indestructible ice, but also for a damaged flag)
nemo
parents:
3493
diff
changeset
|
90 |
// To allow these to layer, going to treat them as masks. The bottom byte is reserved for objects |
3524
8d0783d2a0ff
This reduces CheckLand ~5.5% on average over prior making the overall reduction ~77.4% instead of ~81.9%. It does skip centre pixel in odd w/h, but that really shouldn't matter much in this case. Can alter if any objects are noticeably off.
nemo
parents:
3519
diff
changeset
|
91 |
// TODO - set lfBasic for all solid land, ensure all uses of the flags can handle multiple flag bits |
3519 | 92 |
lfBasic = $8000; // white |
93 |
lfIndestructible = $4000; // red |
|
6077
d8fa5a85d24f
This prevents girders from erasing landbacktex (square windows in tunnels and such), at the cost of requiring lfBasic and lfObject to be treated the same apart from graphically
nemo
parents:
5717
diff
changeset
|
94 |
lfObject = $2000; // no idea - lfObject and lfBasic are only to be different *graphically* in all other ways they should be treated the same |
3519 | 95 |
lfDamaged = $1000; // no idea |
64 | 96 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
97 |
cMaxPower = 1500; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
98 |
cMaxAngle = 2048; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
99 |
cPowerDivisor = 1500; |
2699
249adefa9c1c
replace initialization/finalization statements with custom init functions
koda
parents:
2697
diff
changeset
|
100 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
101 |
MAXNAMELEN = 192; |
4396
3cfd2e15464a
After repeated requests, variable length rope. Intended for the infinite rope folks, but values less than 100 make rope more interesting IMO.
nemo
parents:
4385
diff
changeset
|
102 |
MAXROPEPOINTS = 3840; |
3697 | 103 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
104 |
// some opengl headers do not have these macros |
3493 | 105 |
GL_BGR = $80E0; |
106 |
GL_BGRA = $80E1; |
|
107 |
GL_CLAMP_TO_EDGE = $812F; |
|
108 |
GL_TEXTURE_PRIORITY = $8066; |
|
3697 | 109 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
110 |
cSendCursorPosTime : LongWord = 50; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
111 |
cVisibleWater : LongInt = 128; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
112 |
cCursorEdgesDist : LongInt = 100; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
113 |
cTeamHealthWidth : LongInt = 128; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
114 |
cWaterOpacity : byte = $80; |
4792
68f9b331014a
sudden death changes: only change visual bit on health decrease and support for water transparancy change and clouds number change
Henek
parents:
4776
diff
changeset
|
115 |
cSDWaterOpacity : byte = $80; |
2163
12730f5e79b9
koda's patch fixing some iphone port troubles (color, mouse)
unc0rr
parents:
2153
diff
changeset
|
116 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
117 |
cifRandomize = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
118 |
cifTheme = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
119 |
cifMap = $00000002; // either theme or map (or map+theme) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
120 |
cifAllInited = cifRandomize or cifTheme or cifMap; |
55
e09f7c952a40
Send run parameters by cmd line, game parameters by IPC... breaks network game
unc0rr
parents:
53
diff
changeset
|
121 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
122 |
cTransparentColor: Longword = $00000000; |
5441
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
123 |
cGrayScale: Boolean = false; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
124 |
|
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
125 |
RGB_LUMINANCE_RED = 0.212671; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
126 |
RGB_LUMINANCE_GREEN = 0.715160; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
127 |
RGB_LUMINANCE_BLUE = 0.072169; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
128 |
(* |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
129 |
RGB_LUMINANCE_RED = 0.3333333333; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
130 |
RGB_LUMINANCE_GREEN = 0.3333333333; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
131 |
RGB_LUMINANCE_BLUE = 0.3333333333; |
39962b855540
Add grayscale option for 3d, helps with colour clashing
nemo
parents:
5366
diff
changeset
|
132 |
*) |
4 | 133 |
|
4406
beb4de0af990
Increase teams to 8 to match the 8 colours, fix issue #108, reenable rope length modifier
nemo
parents:
4396
diff
changeset
|
134 |
cMaxTeams = 8; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
135 |
cMaxHHIndex = 7; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
136 |
cMaxHHs = 48; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
137 |
cMaxSpawnPoints = 1024; |
4 | 138 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
139 |
cMaxEdgePoints = 16384; |
22 | 140 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
141 |
cHHRadius = 9; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
142 |
cHHStepTicks = 29; |
509 | 143 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
144 |
cUsualZ = 500; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
145 |
cSmokeZ = 499; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
146 |
cHHZ = 1000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
147 |
cCurrHHZ = Succ(cHHZ); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
148 |
cOnHHZ = 2000; |
4 | 149 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
150 |
cBarrelHealth = 60; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
151 |
cShotgunRadius = 22; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
152 |
cBlowTorchC = 6; |
509 | 153 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
154 |
cKeyMaxIndex = 1023; |
4 | 155 |
|
3737
2ba6ac8a114b
reworked the initialization functions, now it should be safe to update and no more need of spinning wheel at first launch
koda
parents:
3734
diff
changeset
|
156 |
// do not change this value |
3668
3f7a95234d8a
tap to play piano notes, fix for audio and pause glitch
koda
parents:
3667
diff
changeset
|
157 |
cDefaultZoomLevel = 2.0; |
3737
2ba6ac8a114b
reworked the initialization functions, now it should be safe to update and no more need of spinning wheel at first launch
koda
parents:
3734
diff
changeset
|
158 |
|
2716
b9ca1bfca24f
complete the replacement of init/free wrappers for every unit
koda
parents:
2715
diff
changeset
|
159 |
{$IFDEF IPHONEOS} |
3638
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
160 |
cMaxZoomLevel = 0.5; |
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
161 |
cMinZoomLevel = 3.5; |
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
162 |
cZoomDelta = 0.20; |
2716
b9ca1bfca24f
complete the replacement of init/free wrappers for every unit
koda
parents:
2715
diff
changeset
|
163 |
{$ELSE} |
3638
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
164 |
cMaxZoomLevel = 1.0; |
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
165 |
cMinZoomLevel = 3.0; |
33ee433749ba
touch overlay reworked, improvements to zoom and confirmation
koda
parents:
3637
diff
changeset
|
166 |
cZoomDelta = 0.25; |
2716
b9ca1bfca24f
complete the replacement of init/free wrappers for every unit
koda
parents:
2715
diff
changeset
|
167 |
{$ENDIF} |
97
e7c1df9cce2c
- make the game be run from ${PREFIX}/bin with data in ${PREFIX}/share/hedgewars/Data
unc0rr
parents:
95
diff
changeset
|
168 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
169 |
cSendEmptyPacketTime = 1000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
170 |
trigTurns = $80000001; |
2630 | 171 |
|
3743 | 172 |
gfAny = $FFFFFFFF; |
4000
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
173 |
gfOneClanMode = $00000001; // used in trainings |
3999 | 174 |
gfMultiWeapon = $00000002; // used in trainings |
3743 | 175 |
gfSolidLand = $00000004; |
176 |
gfBorder = $00000008; |
|
177 |
gfDivideTeams = $00000010; |
|
178 |
gfLowGravity = $00000020; |
|
179 |
gfLaserSight = $00000040; |
|
180 |
gfInvulnerable = $00000080; |
|
4099 | 181 |
gfResetHealth = $00000100; |
3743 | 182 |
gfVampiric = $00000200; |
183 |
gfKarma = $00000400; |
|
184 |
gfArtillery = $00000800; |
|
4000
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
185 |
gfForts = $00001000; |
3743 | 186 |
gfRandomOrder = $00002000; |
187 |
gfKing = $00004000; |
|
188 |
gfPlaceHog = $00008000; |
|
189 |
gfSharedAmmo = $00010000; |
|
190 |
gfDisableGirders = $00020000; |
|
4000
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
191 |
gfDisableLandObjects = $00040000; |
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
192 |
gfAISurvival = $00080000; |
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
193 |
gfInfAttack = $00100000; |
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
194 |
gfResetWeps = $00200000; |
ddc4a09889e7
engine: reorder GameFlags and update files, frontend and other stuff
koda
parents:
3999
diff
changeset
|
195 |
gfPerHogAmmo = $00400000; |
4776
ab956d4647a4
set windspeed to 0 at the very beginning of the game. (fixes DisableWind game modifier)
sheepluva
parents:
4406
diff
changeset
|
196 |
gfDisableWind = $00800000; |
4272
cf18de7ea3d4
engine side of a more wind patch. no frontend hook. just want to check it in to pull it from another machine
nemo
parents:
4246
diff
changeset
|
197 |
gfMoreWind = $01000000; |
5016
9347d82a26cc
added game mode Tag Team, mostly untested, please test :)
Henek
parents:
4976
diff
changeset
|
198 |
gfTagTeam = $02000000; |
5717 | 199 |
gfBottomBorder = $04000000; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
200 |
// NOTE: When adding new game flags, ask yourself |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
201 |
// if a "game start notice" would be useful. If so, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
202 |
// add one in uWorld.pas - look for "AddGoal". |
4 | 203 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
204 |
gstDrowning = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
205 |
gstHHDriven = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
206 |
gstMoving = $00000004; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
207 |
gstAttacked = $00000008; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
208 |
gstAttacking = $00000010; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
209 |
gstCollision = $00000020; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
210 |
gstHHChooseTarget = $00000040; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
211 |
gstHHJumping = $00000100; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
212 |
gsttmpFlag = $00000200; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
213 |
gstHHThinking = $00000800; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
214 |
gstNoDamage = $00001000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
215 |
gstHHHJump = $00002000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
216 |
gstAnimation = $00004000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
217 |
gstHHDeath = $00008000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
218 |
gstWinner = $00010000; // this, along with gstLoser, is good for indicating hedgies know they screwed up |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
219 |
gstWait = $00020000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
220 |
gstNotKickable = $00040000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
221 |
gstLoser = $00080000; |
3310 | 222 |
gstHHGone = $00100000; |
5348
0bc81de36e08
Don't draw snow flakes spawned in land, introduce gstInvisible flag
unc0rr
parents:
5316
diff
changeset
|
223 |
gstInvisible = $00200000; |
4 | 224 |
|
3894 | 225 |
gmLeft = $00000001; |
226 |
gmRight = $00000002; |
|
227 |
gmUp = $00000004; |
|
228 |
gmDown = $00000008; |
|
229 |
gmSwitch = $00000010; |
|
230 |
gmAttack = $00000020; |
|
231 |
gmLJump = $00000040; |
|
232 |
gmHJump = $00000080; |
|
233 |
gmDestroy= $00000100; |
|
234 |
gmSlot = $00000200; // with param |
|
235 |
gmWeapon = $00000400; // with param |
|
236 |
gmTimer = $00000800; // with param |
|
237 |
gmAnimate= $00001000; // with param |
|
238 |
gmPrecise= $00002000; |
|
239 |
gmAllStoppable = gmLeft or gmRight or gmUp or gmDown or gmAttack or gmPrecise; |
|
4 | 240 |
|
3485 | 241 |
cMaxSlotIndex = 9; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
242 |
cMaxSlotAmmoIndex = 5; |
4 | 243 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
244 |
ammoprop_Timerable = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
245 |
ammoprop_Power = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
246 |
ammoprop_NeedTarget = $00000004; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
247 |
ammoprop_ForwMsgs = $00000008; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
248 |
ammoprop_AttackInMove = $00000010; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
249 |
ammoprop_NoCrosshair = $00000040; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
250 |
ammoprop_AttackingPut = $00000080; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
251 |
ammoprop_DontHold = $00000100; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
252 |
ammoprop_AltAttack = $00000200; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
253 |
ammoprop_AltUse = $00000400; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
254 |
ammoprop_NotBorder = $00000800; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
255 |
ammoprop_Utility = $00001000; |
3037
ab6e949eb5cb
Rename current things called utilities to Effects (since they impact game state / flags w/o using a gear) and add a bunch of things that don't cause damage and are just used to move to Utility crate.
nemo
parents:
3032
diff
changeset
|
256 |
ammoprop_Effect = $00002000; |
5316
191cd6c06203
Allow control of grenade bounce. Not sure if this is a good idea, but has been requested a lot, so...
nemo
parents:
5313
diff
changeset
|
257 |
ammoprop_SetBounce = $00004000; |
4828 | 258 |
ammoprop_NoRoundEnd = $10000000; |
3697 | 259 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
260 |
AMMO_INFINITE = 100; |
4 | 261 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
262 |
EXPLAllDamageInRadius = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
263 |
EXPLAutoSound = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
264 |
EXPLNoDamage = $00000004; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
265 |
EXPLDoNotTouchHH = $00000008; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
266 |
EXPLDontDraw = $00000010; |
3004 | 267 |
EXPLNoGfx = $00000020; |
3383 | 268 |
EXPLPoisoned = $00000040; |
3712 | 269 |
EXPLDoNotTouchAny = $00000080; |
42 | 270 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
271 |
posCaseAmmo = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
272 |
posCaseHealth = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
273 |
posCaseUtility = $00000004; |
5313
5e18eaef65d0
now scripts can create unique crates: dummy (empty) crates and booby traps. scripts can also set health crate values
Henek
parents:
5016
diff
changeset
|
274 |
posCaseDummy = $00000008; |
5343 | 275 |
posCaseExplode = $00000010; |
276 |
posCasePoison = $00000020; |
|
4 | 277 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
278 |
NoPointX = Low(LongInt); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
279 |
cTargetPointRef : TPoint = (X: NoPointX; Y: 0); |
4 | 280 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2947
diff
changeset
|
281 |
// hog tag mask |
2947 | 282 |
htNone = $00; |
283 |
htTeamName = $01; |
|
284 |
htName = $02; |
|
285 |
htHealth = $04; |
|
286 |
htTransparent = $08; |
|
3697 | 287 |
|
288 |
||
2699
249adefa9c1c
replace initialization/finalization statements with custom init functions
koda
parents:
2697
diff
changeset
|
289 |
|
4 | 290 |
implementation |
2716
b9ca1bfca24f
complete the replacement of init/free wrappers for every unit
koda
parents:
2715
diff
changeset
|
291 |
|
3145 | 292 |
end. |