Path: blob/main/Scripts/TAttack/BGAnimation.txt
1319 views
//----------------Sonic CD BG Animation Script----------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object.Value1 : Object.VLLYOffset // Vertical Line Left6#alias Object.Value2 : Object.VLRYOffset // Vertical Line Right7#alias Object.Value3 : Object.ArrowXOffset89// Menu Control Aliases10#alias Object[0].State : MenuControl.State11#alias Object[0].Value3 : MenuControl.SavedRound // This is used AFTER you play in time attack12#alias Object[0].Value7 : MenuControl.SSUnlocked1314// Large Icon / Special Large Icon Aliases15#alias Object[40].XPos : Object.LIconXPos1617// Menu Control States18// *SM = Sub Menu19#alias 0 : MENUCONTROL_SETUP20#alias 1 : MENUCONTROL_FADEIN21#alias 2 : MENUCONTROL_CONTROLS22#alias 3 : MENUCONTROL_BLANK23#alias 4 : MENUCONTROL_RETURN_TO_MENU24#alias 5 : MENUCONTROL_ENTER_SM25#alias 6 : MENUCONTROL_CALL_RECORD_MENU26#alias 7 : MENUCONTROL_SM_CONTROLS27#alias 8 : MENUCONTROL_SM_SCROLL_DOWN28#alias 9 : MENUCONTROL_SM_SCROLL_UP29#alias 10 : MENUCONTROL_SM_CONFIRMED30#alias 11 : MENUCONTROL_SM_LOAD_LEVEL31#alias 12 : MENUCONTROL_SM_LEVEL_RETURN32#alias 13 : MENUCONTROL_SM_COMFIRMED_LEAVE33#alias 14 : MENUCONTROL_SM_EXIT34#alias 15 : MENUCONTROL_SM_RECORD_BEATED35#alias 16 : MENUCONTROL_SCROLL_DOWN36#alias 17 : MENUCONTROL_SCROLLING_137#alias 18 : MENUCONTROL_SCROLL_UP38#alias 19 : MENUCONTROL_SCROLLING_2394041sub ObjectMain42Object.VLLYOffset--43if Object.VLLYOffset < -3144Object.VLLYOffset += 3245end if4647Object.VLRYOffset++48if Object.VLRYOffset > -149Object.VLRYOffset -= 3250end if5152Object.ArrowXOffset++53if Object.ArrowXOffset > -154Object.ArrowXOffset -= 9655end if56end sub575859sub ObjectDraw60if Object.DrawOrder == 361DrawRect(0, 0, 2, Screen.YSize, 0, 0, 0, 255)62TempValue0 = Screen.CenterX63TempValue0 -= 3264DrawRect(0, 160, TempValue0, 2, 0, 0, 0, 255)65TempValue0 += 486667switch MenuControl.State68case MENUCONTROL_SETUP69case MENUCONTROL_FADEIN70case MENUCONTROL_CONTROLS71case MENUCONTROL_BLANK72case MENUCONTROL_RETURN_TO_MENU73case MENUCONTROL_ENTER_SM74case MENUCONTROL_SM_EXIT75case MENUCONTROL_SCROLL_DOWN76case MENUCONTROL_SCROLLING_177case MENUCONTROL_SCROLL_UP78case MENUCONTROL_SCROLLING_279DrawRect(TempValue0, 0, Screen.CenterX, Screen.YSize, 224, 0, 0, 255)80DrawRect(TempValue0, 175, Screen.CenterX, 38, 0, 0, 96, 255)81DrawRect(TempValue0, 31, Screen.CenterX, 9, 0, 0, 0, 255)82break8384case MENUCONTROL_CALL_RECORD_MENU85case MENUCONTROL_SM_CONTROLS86case MENUCONTROL_SM_SCROLL_DOWN87case MENUCONTROL_SM_SCROLL_UP88case MENUCONTROL_SM_CONFIRMED89case MENUCONTROL_SM_LOAD_LEVEL90case MENUCONTROL_SM_LEVEL_RETURN91case MENUCONTROL_SM_COMFIRMED_LEAVE92case MENUCONTROL_SM_RECORD_BEATED93DrawRect(TempValue0, 0, Screen.CenterX, 32, 224, 0, 0, 255)94DrawRect(TempValue0, 226, Screen.CenterX, 14, 224, 0, 0, 255)95DrawRect(TempValue0, 31, Screen.CenterX, 2, 0, 0, 0, 255)96break9798end switch99TempValue0 -= 50100DrawRect(2, 0, TempValue0, 160, 160, 160, 64, 255)101DrawRect(2, 162, TempValue0, 78, 0, 128, 0, 255)102103TempValue1 = Object.ArrowXOffset104TempValue1 >>= 1105DrawSpriteScreenXY(3, TempValue1, 226)106DrawSpriteScreenXY(4, TempValue1, 226)107108TempValue0 += 2109TempValue1 = Object.VLLYOffset110TempValue1 >>= 1111DrawSpriteScreenXY(1, TempValue0, TempValue1)112113TempValue1 = Object.VLRYOffset114TempValue1 >>= 1115DrawSpriteScreenXY(2, TempValue0, TempValue1)116117SetDrawListEntityRef(Object.EntityNo, 4, Screen[4].DrawListSize)118Screen[4].DrawListSize++119Object.DrawOrder = 4120else121DrawRect(0, 213, Screen.XSize, 13, 0, 0, 0, 255)122DrawSpriteScreenXY(0, 24, 195)123124TempValue0 = Screen.CenterX125TempValue0 += 19126DrawSpriteScreenXY(5, TempValue0, 213)127128if MenuControl.SSUnlocked == true129TempValue0 = Screen.XSize130TempValue0 -= 64131TempValue1 = Object.LIconXPos132TempValue1 -= -0x480000133TempValue1 >>= 17134TempValue0 += TempValue1135if MenuControl.SavedRound == 8136DrawSpriteScreenXY(7, TempValue0, 197)137else138DrawSpriteScreenXY(6, TempValue0, 197)139end if140end if141Object.DrawOrder = 3142end if143end sub144145146sub ObjectStartup147LoadSpriteSheet("TAttack/TimeAttack.gif")148LoadPalette("TimeAttack.act", 0, 0, 0, 256)149150MatrixTranslateXYZ(MAT_WORLD, 0, 0, 0)151MatrixRotateXYZ(MAT_VIEW, 0, 0, 0)152153SpriteFrame(0, 0, 152, 30, 70, 666) // #0 - Time Attack Header154SpriteFrame(0, 0, 24, 256, 463, 577) // #1 - BG Vertical Line First Half155SpriteFrame(24, 0, 24, 256, 487, 577) // #2 - BG Vertical Line Second Half156SpriteFrame(0, 0, 448, 14, 1, 701) // #3 - BG Right Arrow Line157SpriteFrame(448, 0, 448, 14, 1, 701) // #4 - BG Left Arrow Line158SpriteFrame(0, 0, 104, 13, 358, 687) // #5 - Sonic The Hedgehog CD159160#platform: Standard161SpriteFrame(-16, 0, 80, 16, 326, 798) // #6 - Next162SpriteFrame(-16, 0, 80, 16, 326, 815) // #7 - Next Highlight163#endplatform164165#platform: Mobile166SpriteFrame(0, 0, 64, 16, 326, 764) // #6 - Next167SpriteFrame(0, 0, 64, 16, 326, 781) // #7 - Next Highlight168#endplatform169Object[31].Type = TypeName[BGAnimation]170end sub171172173// ========================174// Editor Subs175// ========================176177sub RSDKDraw178DrawSprite(0)179end sub180181182sub RSDKLoad183LoadSpriteSheet("Global/Display.gif")184SpriteFrame(-16, -16, 32, 32, 1, 143) // #0 - "Script" Icon185186SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")187end sub188189190