18 |
18 |
19 {$INCLUDE "options.inc"} |
19 {$INCLUDE "options.inc"} |
20 |
20 |
21 unit uVisualGears; |
21 unit uVisualGears; |
22 interface |
22 interface |
23 uses SDLh, uConsts, |
23 uses SDLh, uConsts, uFloat, |
24 {$IFDEF GLES11} |
24 {$IFDEF GLES11} |
25 gles11, |
25 gles11; |
26 {$ELSE} |
26 {$ELSE} |
27 GL, |
27 GL; |
28 {$ENDIF} |
28 {$ENDIF} |
29 uFloat; |
|
30 |
29 |
31 type PVisualGear = ^TVisualGear; |
30 type PVisualGear = ^TVisualGear; |
32 TVGearStepProcedure = procedure (Gear: PVisualGear; Steps: Longword); |
31 TVGearStepProcedure = procedure (Gear: PVisualGear; Steps: Longword); |
33 TVisualGear = record |
32 TVisualGear = record |
34 NextGear, PrevGear: PVisualGear; |
33 NextGear, PrevGear: PVisualGear; |
46 Tex: PTexture; |
45 Tex: PTexture; |
47 Hedgehog: pointer; |
46 Hedgehog: pointer; |
48 Text: shortstring |
47 Text: shortstring |
49 end; |
48 end; |
50 |
49 |
|
50 procedure init_uVisualGears; |
51 function AddVisualGear(X, Y: LongInt; Kind: TVisualGearType): PVisualGear; |
51 function AddVisualGear(X, Y: LongInt; Kind: TVisualGearType): PVisualGear; |
52 procedure ProcessVisualGears(Steps: Longword); |
52 procedure ProcessVisualGears(Steps: Longword); |
53 procedure DrawVisualGears(Layer: LongWord); |
53 procedure DrawVisualGears(Layer: LongWord); |
54 procedure DeleteVisualGear(Gear: PVisualGear); |
54 procedure DeleteVisualGear(Gear: PVisualGear); |
55 procedure AddClouds; |
55 procedure AddClouds; |
56 procedure AddDamageTag(X, Y, Damage, Color: LongWord); |
56 procedure AddDamageTag(X, Y, Damage, Color: LongWord); |
57 |
57 |
58 var VisualGearsList: PVisualGear = nil; |
58 var VisualGearsList: PVisualGear; |
59 vobFrameTicks, vobFramesCount: Longword; |
59 vobFrameTicks, vobFramesCount: Longword; |
60 vobVelocity, vobFallSpeed: LongInt; |
60 vobVelocity, vobFallSpeed: LongInt; |
61 |
61 |
62 implementation |
62 implementation |
63 uses uWorld, uMisc, uStore, uTeams, uSound; |
63 uses uWorld, uMisc, uStore, uTeams, uSound; |
64 const cExplFrameTicks = 110; |
64 const cExplFrameTicks = 110; |
65 |
65 |