Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-1-Sonic-2-2013-Script-Decompilation
Path: blob/master/Sonic 1/Scripts/Special/HUD.txt
1483 views
1
// ----------------------------------
2
// RSDK Project: Sonic 1
3
// Script Description: HUD Object
4
// Script Author: Christian Whitehead/Simon Thomley
5
// Unpacked by Rubberduckycooly's script unpacker
6
// ----------------------------------
7
8
// ========================
9
// Aliases
10
// ========================
11
12
private alias object.value4 : object.flashTimer
13
14
// Player aliases
15
private alias object.value0 : player.rings
16
17
18
// ========================
19
// Events
20
// ========================
21
22
event ObjectDraw
23
// But we don't even draw rings in the Special Stage...
24
if player[0].rings == 0
25
object.flashTimer++
26
if object.flashTimer == 16
27
object.flashTimer = 0
28
end if
29
else
30
if stage.minutes == 9
31
object.flashTimer++
32
if object.flashTimer == 16
33
object.flashTimer = 0
34
end if
35
end if
36
end if
37
38
#platform: USE_STANDALONE
39
DrawSpriteScreenXY(10, 17, 9)
40
41
if stage.minutes == 9
42
if object.flashTimer > 7
43
DrawSpriteScreenXY(11, 17, 9)
44
end if
45
end if
46
47
DrawSpriteScreenXY(13, 67, 9)
48
DrawNumbers(0, 104, 9, stage.milliSeconds, 2, 8, true)
49
DrawNumbers(0, 80, 9, stage.seconds, 2, 8, true)
50
DrawNumbers(0, 56, 9, stage.minutes, 1, 8, true)
51
#endplatform
52
53
#platform: USE_ORIGINS
54
// This HUD isn't used in Origins, but they changed the positioning anyway
55
DrawSpriteScreenXY(10, 17, 13)
56
57
if stage.minutes == 9
58
if object.flashTimer > 7
59
DrawSpriteScreenXY(11, 17, 13)
60
end if
61
end if
62
63
DrawSpriteScreenXY(13, 67, 13)
64
DrawNumbers(0, 104, 13, stage.milliSeconds, 2, 8, true)
65
DrawNumbers(0, 80, 13, stage.seconds, 2, 8, true)
66
DrawNumbers(0, 56, 13, stage.minutes, 1, 8, true)
67
#endplatform
68
end event
69
70
71
event ObjectStartup
72
LoadSpriteSheet("Global/Display.gif")
73
74
// HUD frames
75
SpriteFrame(0, 0, 8, 11, 1, 50) // 0 - Number 0
76
SpriteFrame(0, 0, 8, 11, 10, 50) // 1 - Number 1
77
SpriteFrame(0, 0, 8, 11, 19, 50) // 2 - Number 2
78
SpriteFrame(0, 0, 8, 11, 28, 50) // 3 - Number 3
79
SpriteFrame(0, 0, 8, 11, 1, 62) // 4 - Number 4
80
SpriteFrame(0, 0, 8, 11, 10, 62) // 5 - Number 5
81
SpriteFrame(0, 0, 8, 11, 19, 62) // 6 - Number 6
82
SpriteFrame(0, 0, 8, 11, 28, 62) // 7 - Number 7
83
SpriteFrame(0, 0, 8, 11, 1, 74) // 8 - Number 8
84
SpriteFrame(0, 0, 8, 11, 10, 74) // 9 - Number 9
85
SpriteFrame(0, 0, 31, 11, 1, 17) // 10 - Time text
86
SpriteFrame(0, 0, 31, 11, 1, 119) // 11 - Red Time text
87
SpriteFrame(0, 0, 39, 11, 1, 131) // 12 - Red Rings text (unused in this script)
88
SpriteFrame(0, 0, 29, 4, 1, 45) // 13 - Timer tick marks
89
SpriteFrame(0, 0, 3, 11, 37, 50) // 14 - : (Colon)
90
end event
91
92
93
// ========================
94
// Editor Events
95
// ========================
96
97
event RSDKDraw
98
DrawSprite(0)
99
end event
100
101
102
event RSDKLoad
103
LoadSpriteSheet("Global/Display.gif")
104
SpriteFrame(-16, -16, 32, 32, 1, 143)
105
106
SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")
107
end event
108
109