Path: blob/main/Scripts/R8/R82CSetup.txt
1319 views
//---------------Sonic CD R8 2 C Setup Script-----------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object.Value0 : Object.PaletteTimer6#alias Object.Value1 : Object.CurrentPalette7#alias Object.Value2 : Object.VGearFrame8#alias Object.Value3 : Object.HCylinderFrame9#alias Object.Value4 : Object.VCylinderFrame10#alias Object.Value5 : Object.LightsFrame1112// Priority13#alias 1 : PRIORITY_ACTIVE1415// Tile Info16#alias 1 : TILEINFO_DIRECTION17#alias 8 : TILEINFO_ANGLEB181920sub ObjectMain21Object.Rotation++22Object.Rotation %= 1442324TempValue0 = Object.VGearFrame25TempValue0 %= 726if TempValue0 == 027TempValue0 = Object.VGearFrame28TempValue0 /= 729TempValue0 <<= 130TempValue0 += 60031Copy16x16Tile(490, TempValue0)32TempValue0++33Copy16x16Tile(491, TempValue0)34end if35Object.VGearFrame++36Object.VGearFrame %= 283738TempValue0 = Object.HCylinderFrame39TempValue0 &= 340if TempValue0 == 041TempValue0 = Object.HCylinderFrame42TempValue0 >>= 243TempValue0 <<= 144TempValue0 += 60845Copy16x16Tile(492, TempValue0)46TempValue0++47Copy16x16Tile(493, TempValue0)48end if49Object.HCylinderFrame++50Object.HCylinderFrame &= 155152TempValue0 = Object.VCylinderFrame53TempValue0 %= 554if TempValue0 == 055TempValue0 = Object.VCylinderFrame56TempValue0 /= 557TempValue0 <<= 258TempValue0 += 61659Copy16x16Tile(494, TempValue0)60TempValue0++61Copy16x16Tile(495, TempValue0)62TempValue0++63Copy16x16Tile(496, TempValue0)64TempValue0++65Copy16x16Tile(497, TempValue0)66end if67Object.VCylinderFrame++68Object.VCylinderFrame %= 206970TempValue0 = Object.LightsFrame71TempValue0 &= 772if TempValue0 == 073TempValue0 = Object.LightsFrame74TempValue0 >>= 375TempValue0 += 63276Copy16x16Tile(498, TempValue0)77end if78Object.LightsFrame++79Object.LightsFrame %= 568081Object.PaletteTimer++82if Object.PaletteTimer == 583Object.PaletteTimer = 084Object.CurrentPalette++85Object.CurrentPalette %= 686TempValue0 = Object.CurrentPalette87TempValue0 += 63988Copy16x16Tile(499, TempValue0)89end if90SetActivePalette(Object.CurrentPalette, 0, Screen.YSize)91end sub929394sub ObjectPlayerInteraction95TempValue1 = Player.XPos96TempValue1 >>= 1697TempValue1 += Player.CollisionRight9899TempValue2 = Player.YPos100TempValue2 >>= 16101TempValue2 += Player.CollisionBottom102TempValue2 += 2103Get16x16TileInfo(TempValue0, TempValue1, TempValue2, TILEINFO_ANGLEB)104if TempValue0 == 1105Get16x16TileInfo(TempValue0, TempValue1, TempValue2, TILEINFO_DIRECTION)106if TempValue0 == 0107Player.XPos += 0x10000108else109Player.XPos -= 0x10000110end if111else112TempValue1 = Player.XPos113TempValue1 >>= 16114TempValue1 += Player.CollisionLeft115Get16x16TileInfo(TempValue0, TempValue1, TempValue2, TILEINFO_ANGLEB)116if TempValue0 == 1117Get16x16TileInfo(TempValue0, TempValue1, TempValue2, TILEINFO_DIRECTION)118if TempValue0 == 0119Player.XPos += 0x10000120else121Player.XPos -= 0x10000122end if123end if124end if125end sub126127128sub ObjectStartup129Object[19].Type = TypeName[R8 Setup]130Object[19].Priority = PRIORITY_ACTIVE131132CopyPalette(0, 1)133CopyPalette(0, 2)134CopyPalette(0, 3)135CopyPalette(0, 4)136CopyPalette(0, 5)137138TempValue0 = 0139TempValue1 = 0140TempValue2 = 32141while TempValue0 < 6142LoadPalette("R82C_PalCycle.act", TempValue0, 160, TempValue1, TempValue2)143TempValue0++144TempValue1 += 32145TempValue2 += 32146loop147end sub148149150// ========================151// Editor Subs152// ========================153154sub RSDKDraw155DrawSprite(0)156end sub157158159sub RSDKLoad160LoadSpriteSheet("Global/Display.gif")161SpriteFrame(-16, -16, 32, 32, 1, 143) // #0 - "Script" Icon162163SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")164end sub165166167