Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-1-Sonic-2-2013-Script-Decompilation
Path: blob/master/Sonic 2/Scripts/HPZ/WaterfallSprite.txt
1479 views
1
// ----------------------------------
2
// RSDK Project: Sonic 2
3
// Script Description: Waterfall Sprite Object
4
// Script Author: Christian Whitehead/Simon Thomley
5
// Unpacked by Rubberduckycooly's script unpacker
6
// ----------------------------------
7
8
// ========================
9
// Events
10
// ========================
11
12
event ObjectUpdate
13
if object.propertyValue == 5
14
// Follow the water's surface
15
// (don't see why temp0 is used instead of setting iypos directly, but sure ig)
16
temp0 = stage.waterLevel
17
object.iypos = temp0
18
end if
19
end event
20
21
22
event ObjectDraw
23
DrawSprite(object.propertyValue)
24
end event
25
26
27
event ObjectStartup
28
LoadSpriteSheet("HPZ/Objects.gif")
29
30
// Waterfall frames
31
SpriteFrame(-5, -16, 13, 32, 353, 222)
32
SpriteFrame(-5, -16, 13, 12, 353, 222)
33
SpriteFrame(-4, -4, 8, 12, 344, 222)
34
SpriteFrame(-8, -16, 16, 32, 175, 140)
35
SpriteFrame(-12, -22, 24, 24, 186, 231)
36
SpriteFrame(-12, -22, 24, 24, 186, 231)
37
38
foreach (TypeName[Waterfall Sprite], arrayPos0, ALL_ENTITIES)
39
object[arrayPos0].drawOrder = 5
40
next
41
end event
42
43
44
// ========================
45
// Editor Events
46
// ========================
47
48
event RSDKEdit
49
if editor.returnVariable == true
50
switch editor.variableID
51
case EDIT_VAR_PROPVAL // property value
52
checkResult = object.propertyValue
53
break
54
55
case 0 // frameID
56
checkResult = object.propertyValue
57
break
58
59
end switch
60
else
61
switch editor.variableID
62
case EDIT_VAR_PROPVAL // property value
63
object.propertyValue = editor.variableValue
64
break
65
66
case 0 // frameID
67
object.propertyValue = editor.variableValue
68
break
69
70
end switch
71
end if
72
end event
73
74
75
event RSDKDraw
76
DrawSprite(object.propertyValue)
77
end event
78
79
80
event RSDKLoad
81
LoadSpriteSheet("HPZ/Objects.gif")
82
83
// Waterfall frames
84
SpriteFrame(-5, -16, 13, 32, 353, 222)
85
SpriteFrame(-5, -16, 13, 12, 353, 222)
86
SpriteFrame(-4, -4, 8, 12, 344, 222)
87
SpriteFrame(-8, -16, 16, 32, 175, 140)
88
SpriteFrame(-12, -22, 24, 24, 186, 231)
89
SpriteFrame(-12, -22, 24, 24, 186, 231)
90
91
AddEditorVariable("frameID")
92
SetActiveVariable("frameID")
93
AddEnumVariable("frame 0", 0)
94
AddEnumVariable("frame 1", 1)
95
AddEnumVariable("frame 2", 2)
96
AddEnumVariable("frame 3", 3)
97
AddEnumVariable("frame 4", 4)
98
AddEnumVariable("frame 5 (follows water surface)", 5)
99
end event
100
101