You are on page 1of 2

//----------------Sonic CD Blue Bird Script-------------------//

//--------Scripted by Christian Whitehead 'The Taxman'--------//


//-------Unpacked By Rubberduckycooly's Script Unpacker-------//

// Aliases
#alias Object.Value1 : Object.YOffSet
#alias Object.Value2 : Object.Wobble
#alias Object.PropertyValue : Object.WobbleIncrease

// States
#alias 0 : BLUEBIRD_SETUP
#alias 1 : BLUEBIRD_MOVEMENT

sub ObjectMain
if Object.Direction == FACING_RIGHT
Object.XPos += 0x8000
else
Object.XPos -= 0x8000
end if

switch Object.State
case BLUEBIRD_SETUP
Object.YOffSet = Object.YPos
Object.State++
break

case BLUEBIRD_MOVEMENT
Object.Wobble += Object.WobbleIncrease
Object.Wobble &= 511
Sin(Object.YPos, Object.Wobble)
Object.YPos <<= 10
Object.YPos += Object.YOffSet
break

end switch

if Object.OutOfBounds == true
Object.Type = TypeName[Blank Object]
end if
end sub

sub ObjectDraw
TempValue0 = Object.AnimationSpeed
TempValue0 >>= 3
DrawSpriteFX(TempValue0, FX_FLIP, Object.XPos, Object.YPos)

Object.AnimationSpeed++
Object.AnimationSpeed &= 15
end sub

sub ObjectStartup
LoadSpriteSheet("DAGarden/Objects.gif")

SpriteFrame(-8, -9, 16, 16, 466, 577) // Blue Bird Frame 0


SpriteFrame(-8, -8, 16, 16, 483, 577) // Blue Bird Frame 1
end sub
// ========================
// Editor Subs
// ========================

sub RSDKDraw
DrawSprite(0)
end sub

sub RSDKLoad
LoadSpriteSheet("DAGarden/Objects.gif")
SpriteFrame(-8, -9, 16, 16, 466, 577) // Blue Bird Frame 0

SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")
end sub

You might also like