Path: blob/master/Sonic 2/Scripts/Enemies/SmallTurtloid.txt
1483 views
// ----------------------------------1// RSDK Project: Sonic 22// Script Description: SmallTurtloid Object3// Script Author: Christian Whitehead/Simon Thomley4// Unpacked by Rubberduckycooly's script unpacker5// ----------------------------------67// ========================8// Aliases9// ========================1011private alias object.value1 : object.parent1213// Player aliases14private alias object.value40 : player.hitboxLeft15private alias object.value38 : player.hitboxTop16private alias object.value41 : player.hitboxRight17private alias object.value39 : player.hitboxBottom1819// ========================20// Function Declarations21// ========================2223reserve function SmallTurtloid_DebugDraw24reserve function SmallTurtloid_DebugSpawn2526private function SmallTurtloid_DebugDraw27DrawSprite(2)28end function293031private function SmallTurtloid_DebugSpawn32CreateTempObject(TypeName[SmallTurtloid], 0, object.xpos, object.ypos)33end function343536// ========================37// Events38// ========================3940event ObjectUpdate41if object.parent > 042arrayPos0 = object.parent43object.xpos = object[arrayPos0].xpos44object.xpos += 0x4000045object.ypos = object[arrayPos0].ypos46object.ypos -= 0x18000047end if4849foreach (GROUP_PLAYERS, currentPlayer, ACTIVE_ENTITIES)50BoxCollisionTest(C_TOUCH, object.entityPos, -12, -12, 12, 12, currentPlayer, player[currentPlayer].hitboxLeft, player[currentPlayer].hitboxTop, player[currentPlayer].hitboxRight, player[currentPlayer].hitboxBottom)51if checkResult == true52CallFunction(Player_BadnikBreak)53end if54next55end event565758event ObjectDraw59DrawSprite(object.frame)60temp0 = object.frame61temp0 += 262DrawSprite(temp0)63end event646566event ObjectStartup67CheckCurrentStageFolder("Zone10")68if checkResult == true69LoadSpriteSheet("SCZ/Objects.gif")70SpriteFrame(-12, -11, 24, 23, 186, 42)71SpriteFrame(-12, -11, 24, 23, 211, 42)72SpriteFrame(-12, -11, 24, 23, 186, 66)73SpriteFrame(-12, -11, 24, 23, 211, 66)74else75LoadSpriteSheet("MBZ/Objects.gif")76SpriteFrame(-12, -11, 24, 23, 186, 42)77SpriteFrame(-12, -11, 24, 23, 211, 42)78SpriteFrame(-12, -11, 24, 23, 186, 66)79SpriteFrame(-12, -11, 24, 23, 211, 66)80end if8182foreach (TypeName[SmallTurtloid], arrayPos0, ALL_ENTITIES)83arrayPos1 = arrayPos084arrayPos1--85if object[arrayPos1].type == TypeName[Big Turtloid]86object[arrayPos0].parent = arrayPos187else88object[arrayPos0].parent = 089end if90next9192SetTableValue(TypeName[SmallTurtloid], DebugMode_ObjCount, DebugMode_TypesTable)93SetTableValue(SmallTurtloid_DebugDraw, DebugMode_ObjCount, DebugMode_DrawTable)94SetTableValue(SmallTurtloid_DebugSpawn, DebugMode_ObjCount, DebugMode_SpawnTable)95DebugMode_ObjCount++96end event979899// ========================100// Editor Events101// ========================102103event RSDKDraw104DrawSprite(0)105end event106107108event RSDKLoad109CheckCurrentStageFolder("Zone10")110if checkResult == true111LoadSpriteSheet("SCZ/Objects.gif")112SpriteFrame(-12, -11, 24, 23, 186, 42)113SpriteFrame(-12, -11, 24, 23, 211, 42)114SpriteFrame(-12, -11, 24, 23, 186, 66)115SpriteFrame(-12, -11, 24, 23, 211, 66)116else117LoadSpriteSheet("MBZ/Objects.gif")118SpriteFrame(-12, -11, 24, 23, 186, 42)119SpriteFrame(-12, -11, 24, 23, 211, 42)120SpriteFrame(-12, -11, 24, 23, 186, 66)121SpriteFrame(-12, -11, 24, 23, 211, 66)122end if123124SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")125end event126127128