Path: blob/main/Scripts/R8/PushButton.txt
1319 views
//---------------Sonic CD Push Button Script------------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object.PropertyValue : Object.Pressed67// Gravity8#alias 0 : GRAVITY_GROUND910// Collision11#alias 1 : PLAYER_COL_FLOOR1213// Stage SFX14#alias 2 : SFX_S_SWITCH151617sub ObjectPlayerInteraction18if Object.Pressed == false19if Player.YVelocity >= 020PlayerObjectCollision(C_BOX, -16, -8, 16, 8)21if CheckResult == PLAYER_COL_FLOOR22Object.Pressed = true23Player.YPos += 0x8000024PlayStageSfx(SFX_S_SWITCH, false)25else26Object.Pressed = false27end if28else29Object.Pressed = false30end if31else32PlayerObjectCollision(C_TOUCH, -16, -1, 16, 8)33if CheckResult == true34Object.Pressed = true35Player.Gravity = GRAVITY_GROUND36Player.YVelocity = 037Player.YPos = Player.CollisionBottom38FlipSign(Player.YPos)39Player.YPos <<= 1640Player.YPos += Object.YPos41else42Object.Pressed = false4344if Player.YVelocity > -145Player.Gravity = GRAVITY_GROUND46Player.YVelocity = 047Player.YPos = Player.CollisionBottom48FlipSign(Player.YPos)49Player.YPos -= 850Player.YPos <<= 1651Player.YPos += Object.YPos52end if53end if54end if55end sub565758sub ObjectDraw59DrawSprite(Object.Pressed)60end sub616263sub ObjectStartup64LoadSpriteSheet("R8/Objects.gif")6566SpriteFrame(-16, -8, 32, 16, 142, 98) // #0 - Push Button inactive67SpriteFrame(-16, 0, 32, 8, 142, 114) // #1 - Push Button active68end sub697071// ========================72// Editor Subs73// ========================7475sub RSDKDraw76DrawSprite(Object.PropertyValue)77end sub787980sub RSDKLoad81LoadSpriteSheet("R8/Objects.gif")8283SpriteFrame(-16, -8, 32, 16, 142, 98) // #0 - Push Button inactive84SpriteFrame(-16, 0, 32, 8, 142, 114) // #1 - Push Button active8586SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")87end sub888990