-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGameGlobals.p
executable file
·108 lines (94 loc) · 2.12 KB
/
GameGlobals.p
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
unit GameGlobals;
interface
uses
QDOffscreen,
Icons;
type
car = record
BaseIcon: integer;
Crash, Drawn: integer;
Speed, Acc, Brakes: integer;
Steering: integer;
Frames: integer;
Bumping, OffRoad: integer;
end;
CarPtr = ^Car;
CarHandle = ^CarPtr;
LevelInfo = record
DataID, RoadID, ObjID, StopAt, Bonus: integer;
Name:string
end;
LevelPtr = ^LevelInfo;
LevelHandle = ^LevelPtr;
RoadInfo = record
RoadPat, BackPat, BarrPat,ClutCol: integer;
Road: RGBColor;
X2:integer;
Back: RGBColor;
X3:integer;
Barr: RGBColor;
Slide, Acc, Speed: integer;
Flags: Byte;
end;
RoadPtr = ^RoadInfo;
RoadHandle = ^RoadPtr;
LevelFormat = array[0..maxint] of array[1..4] of integer;
DataPtr = ^LevelFormat;
DataHandle = ^DataPtr;
Animation = record
On: Boolean;
Frame: integer;
Pos: Rect;
Data: Handle;
end;
OBJ = record
ID, Scroll, LR: integer;
end;
Objects = array[1..150] of OBJ;
ObjectPtr = ^Objects;
ObHandle = ^ObjectPtr;
ObjSoft = record
LR, UD: integer;
end;
REB = record
SCR, LRP: integer;
end;
Rebirth = array[1..15] of REB;
Rebptr = ^Rebirth;
RebHandle = ^RebPtr;
Sprite=record
SpriteWorld:GworldPtr;
MaskPort:GrafPtr;
end;
var
AccKey, BrakKey, LKey, RKey: Boolean;
ScreenWorld, Backworld: GWorldPtr;
UDSpeed, LRSpeed, UDPos, LRPos, CarDirection: integer;
MyCar: Car;
MyRoad: RoadHandle;
Scroll, OldScroll, BackScroll: integer;
Info: LevelHandle;
Data: DataHandle;
BrakeDone: Boolean;
Animations: array[1..10] of Animation;
Dead, GameOver: Boolean;
OldSpeed, wait: integer;
Items: ObHandle;
ItemInfo: array[1..150] of ObjSoft;
LastObj: integer;
CarRect: Rect;
Jump, MaxJump: Byte;
Lives, DeadCount, DoneCount, GameOCount: integer;
Score:longint;
MultiBonus, BonPos, BonLR: integer;
Rebirthes: RebHandle;
URects: array[1..15] of rect;
RectCount: integer;
Clip:rgnHandle;
RoadColData:Handle;
Sprites: array[1001..1821] of Sprite;
oldScore,oldLives,oldBonus,Lastlive:integer;
StandartCLUT:boolean;
ScreenCT:ctabHandle;
implementation
end.