Path: blob/main/Scripts/Mission/Boss_Bumper2.txt
1319 views
//----------------Sonic CD Boss Bumper 2 Script---------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//3//---------Used on Mission "M099 - Eggman: Speed Up"----------//45// Aliases6#alias Object.Value0 : Object.ArmEntity7#alias Object.Value2 : Object.XOffSet8#alias Object.Value5 : Object.YOffSet910// Arm Aliases11#alias Object.Frame : Arm.Frame12#alias Object.XPos : Arm.XPos13#alias Object.YPos : Arm.YPos1415// States16#alias 0 : BOSSBUMPER2_SETUP17#alias 1 : BOSSBUMPER2_IDLE18#alias 2 : BOSSBUMPER2_DESTROYED1920// Global SFX21#alias 11 : SFX_G_SPRING2223// Priority24#alias 0 : PRIORITY_BOUNDS252627sub ObjectMain28switch Object.State29case BOSSBUMPER2_SETUP30Object.State = BOSSBUMPER2_IDLE31// Fall-Through32case BOSSBUMPER2_IDLE33ArrayPos0 = Object.ArmEntity34Object.XPos = Arm[ArrayPos0].XPos35Object.XPos -= 0x13000036Object.YPos = Arm[ArrayPos0].YPos37if Arm[ArrayPos0].Frame != 038if Arm[ArrayPos0].Frame == 139Object.XPos += 0x8000040else41Object.XPos += 0x10000042end if43end if44break4546case BOSSBUMPER2_DESTROYED47Object.XOffSet -= 0x50048Object.XPos += Object.XOffSet4950Object.YOffSet += 0x180051Object.YPos += Object.YOffSet5253if Object.OutOfBounds == true54Object.Type = TypeName[Blank Object]55Object.Priority = PRIORITY_BOUNDS56end if57break58end switch59end sub606162sub ObjectPlayerInteraction63if Object.State < BOSSBUMPER2_DESTROYED64if Player.Animation != ANI_HURT65ArrayPos0 = Object.ArmEntity6667if Arm[ArrayPos0].Frame == 068PlayerObjectCollision(C_TOUCH, -10, -16, 14, 16)69if CheckResult == true7071Player.Speed = -0x4000072Player.XVelocity = -0x400007374if Object.Frame == 075PlaySfx(SFX_G_SPRING, false)76end if77Object.Frame = 27879end if80end if81end if82end if83end sub848586sub ObjectDraw87DrawSprite(Object.Frame)8889if Object.Frame > 090Object.Frame--91end if92end sub939495sub ObjectStartup96LoadSpriteSheet("R1/Objects3.gif")9798SpriteFrame(-14, -16, 24, 32, 99, 26) // #0 - EGG-HVC-001 Bumper99SpriteFrame(-18, -16, 24, 32, 99, 26) // #1 - EGG-HVC-001 Bumper (different offset)100SpriteFrame(-18, -16, 24, 32, 99, 26) // #2 - EGG-HVC-001 Bumper (same offset as frame 1, here to pad out animation length)101end sub102103104// ========================105// Editor Subs106// ========================107108sub RSDKDraw109DrawSprite(0)110end sub111112113sub RSDKLoad114LoadSpriteSheet("R1/Objects3.gif")115SpriteFrame(-14, -16, 24, 32, 99, 26) // #0 - EGG-HVC-001 Bumper116117SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")118end sub119120121122123