Path: blob/master/Sonic 2/Scripts/WFZ/Laser.txt
1480 views
// ----------------------------------1// RSDK Project: Sonic 22// Script Description: Laser Object3// Script Author: Christian Whitehead/Simon Thomley4// Unpacked by Rubberduckycooly's script unpacker5// ----------------------------------67// ========================8// Aliases9// ========================1011// States12private alias 0 : LASER_WAITING13private alias 1 : LASER_FIRED1415// Player Aliases16private alias object.xpos : player.xpos171819// ========================20// Events21// ========================2223event ObjectUpdate24if object.state == LASER_WAITING25temp0 = object.xpos26temp0 -= 0xE8000027if player[0].xpos >= temp028if player[0].xpos < object.xpos29PlaySfx(SfxName[Medium Laser], false)30end if3132object.state++33end if34else35if object.alpha < 0x10036object.alpha += 0x1037end if3839object.xpos -= 0x10000040if object.outOfBounds == true41object.type = TypeName[Blank Object]42end if43end if44end event454647event ObjectDraw48if object.state == LASER_FIRED49DrawSpriteFX(0, FX_INK, object.xpos, object.ypos)50end if51end event525354event ObjectStartup55LoadSpriteSheet("SCZ/Objects.gif")56SpriteFrame(-72, -8, 144, 16, 81, 198)5758foreach (TypeName[Laser], arrayPos0, ALL_ENTITIES)59object[arrayPos0].drawOrder = 560object[arrayPos0].inkEffect = INK_ALPHA61object[arrayPos0].priority = PRIORITY_ACTIVE62next63end event646566// ========================67// Editor Events68// ========================6970event RSDKDraw71DrawSprite(0)72end event737475event RSDKLoad76LoadSpriteSheet("SCZ/Objects.gif")77SpriteFrame(-72, -8, 144, 16, 81, 198)7879// Normally set to 118 in the scene for some reason, that value's unused though80SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")81end event828384