Path: blob/main/Scripts/DAGarden/UFO.txt
1319 views
//-------------------Sonic CD UFO Script----------------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object.Value0 : Object.Timer6#alias Object.Value1 : Object.YOffSet7#alias Object.Value2 : Object.YVelocity8#alias Object.Value3 : Object.Wobble9#alias Object.Value4 : Object.XVelocity1011// States12#alias 0 : UFO_WOBBLE113#alias 1 : UFO_DESCEND14#alias 2 : UFO_ASCEND15#alias 3 : UFO_WOBBLE21617// Property Values18#alias 0 : YELLOW_UFO19#alias 3 : GREEN_UFO202122sub ObjectMain23if Object.Direction == FACING_RIGHT24Object.XPos += Object.XVelocity25else26Object.XPos -= Object.XVelocity27end if2829switch Object.State30case UFO_WOBBLE131case UFO_WOBBLE232Object.Frame = 033Object.Wobble += 834Object.Wobble &= 51135Sin(Object.YPos, Object.Wobble)36Object.YPos <<= 937Object.YPos += Object.YOffSet38break3940case UFO_DESCEND41Object.YPos += Object.YVelocity42Object.Frame = 143Object.YOffSet = Object.YPos44if Object.YPos > 0xD0000045Object.State = UFO_ASCEND46end if47break4849case UFO_ASCEND50Object.YPos -= Object.YVelocity51Object.Frame = 252Object.YOffSet = Object.YPos53if Object.YPos < 0x20000054Object.State = UFO_DESCEND55end if56break5758end switch5960if Object.Timer > 061Object.Timer--62else63Object.Value1 = Object.YPos64Rand(Object.State, 3)65Rand(Object.Timer, 90)66Rand(Object.XVelocity, 6)67Object.XVelocity++68Object.XVelocity <<= 1469Rand(Object.YVelocity, 6)70Object.YVelocity++71Object.YVelocity <<= 1572end if7374if Object.OutOfBounds == true75Object.Type = TypeName[Blank Object]76end if77end sub787980sub ObjectDraw81TempValue0 = Object.Frame82TempValue0 += Object.PropertyValue83DrawSprite(TempValue0)84end sub858687sub ObjectStartup88LoadSpriteSheet("DAGarden/Objects.gif")8990SpriteFrame(-12, -12, 24, 24, 354, 804) // #0 - Yellow UFO Frame 091SpriteFrame(-12, -12, 24, 24, 379, 804) // #1 - Yellow UFO Frame 192SpriteFrame(-12, -12, 24, 24, 404, 804) // #2 - Yellow UFO Frame 293SpriteFrame(-12, -12, 24, 24, 354, 829) // #3 - Green UFO Frame 094SpriteFrame(-12, -12, 24, 24, 379, 829) // #4 - Green UFO Frame 195SpriteFrame(-12, -12, 24, 24, 404, 829) // #5 - Green UFO Frame 296end sub979899// ========================100// Editor Subs101// ========================102103sub RSDKDraw104DrawSprite(0)105end sub106107108sub RSDKLoad109LoadSpriteSheet("DAGarden/Objects.gif")110SpriteFrame(-12, -12, 24, 24, 354, 804) // #0 - Yellow UFO Frame 0111112SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")113end sub114115116