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/CNZ/ConveyorBelt.txt
1487 views
1
// ----------------------------------
2
// RSDK Project: Sonic 2
3
// Script Description: Conveyor Belt 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.value1 : object.hitboxL
13
private alias object.value2 : object.hitboxR
14
15
// Player Aliases
16
private alias object.xpos : player.xpos
17
private alias object.gravity : player.gravity
18
19
20
// ========================
21
// Events
22
// ========================
23
24
event ObjectUpdate
25
foreach (GROUP_PLAYERS, currentPlayer, ACTIVE_ENTITIES)
26
if player[currentPlayer].gravity == GRAVITY_GROUND
27
BoxCollisionTest(C_TOUCH, object.entityPos, object.hitboxL, -20, object.hitboxR, 0, currentPlayer, C_BOX, C_BOX, C_BOX, C_BOX)
28
if checkResult == true
29
player[currentPlayer].xpos -= 0x20000
30
end if
31
end if
32
next
33
end event
34
35
36
event ObjectStartup
37
foreach (TypeName[Conveyor Belt], arrayPos0, ALL_ENTITIES)
38
object[arrayPos0].hitboxL = object[arrayPos0].propertyValue
39
object[arrayPos0].hitboxL <<= 3
40
object[arrayPos0].hitboxR = object[arrayPos0].hitboxL
41
FlipSign(object[arrayPos0].hitboxL)
42
next
43
end event
44
45
46
// ========================
47
// Editor Events
48
// ========================
49
50
event RSDKDraw
51
DrawSprite(0)
52
53
if editor.showGizmos == true
54
editor.drawingOverlay = true
55
56
// Draw the Conveyor Belt's hitbox
57
58
// Right hitbox
59
temp2 = object.propertyValue
60
temp2 <<= 3
61
62
// Left hitbox (just mirrored)
63
temp0 = temp2
64
65
temp1 = 20; temp3 = 0;
66
CallFunction(EditorHelpers_DrawHitbox)
67
68
editor.drawingOverlay = false
69
end if
70
end event
71
72
73
event RSDKLoad
74
LoadSpriteSheet("Global/Display.gif")
75
SpriteFrame(-8, -8, 16, 16, 168, 18) // "trigger" - #0
76
77
SetVariableAlias(ALIAS_VAR_PROPVAL, "size")
78
end event
79
80