Path: blob/main/Scripts/TAttack/LargeIcon.txt
1319 views
//-----------------Sonic CD Large Icon Script-----------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object.PropertyValue : Object.Portrait67// MenuControl Aliases8#alias Object[0].Value0 : MenuControl.Timer9#alias Object[0].Value5 : MenuControl.SMCurrentButton10#alias Object[0].State : MenuControl.State1112// States13#alias 0 : LARGEICON_BLANK14#alias 1 : LARGEICON_ENTER_SCREEN15#alias 2 : LARGEICON_LEAVE_SCREEN1617// Menu Control States18// *SM = Sub Menu19#alias 7 : MENUCONTROL_SM_CONTROLS20#alias 10 : MENUCONTROL_SM_CONFIRMED21#alias 11 : MENUCONTROL_SM_LOAD_LEVEL22#alias 13 : MENUCONTROL_SM_COMFIRMED_LEAVE2324// Property Values25#alias 0 : PALMTREE_PANIC_LARGE_LARGE_ICON26#alias 1 : COLLISION_CHAOS_LARGE_ICON27#alias 2 : TIDAL_TEMPEST_LARGE_ICON28#alias 3 : QUARTZ_QUADRANT_LARGE_ICON29#alias 4 : WACKY_WORKBENCH_LARGE_ICON30#alias 5 : STARDUST_SPEEDWAY_LARGE_ICON31#alias 6 : METALLIC_MADNESS_LARGE_ICON323334sub ObjectMain35switch Object.State36case LARGEICON_BLANK37break38case LARGEICON_ENTER_SCREEN39TempValue0 = Screen.CenterX40TempValue0 -= 7241TempValue0 <<= 1642if Object.XPos < TempValue043Object.XPos += 0x10000044if Object.XPos > TempValue045Object.XPos = TempValue046end if47else48Object.State = LARGEICON_BLANK49end if50break5152case LARGEICON_LEAVE_SCREEN53if Object.XPos > -0x48000054Object.XPos -= 0x10000055if Object.XPos < -0x48000056Object.XPos = -0x48000057end if58else59Object.State = LARGEICON_BLANK60end if61break6263end switch64end sub656667sub ObjectDraw68DrawSprite(15)69DrawSprite(Object.Portrait)70TempValue0 = Screen.CenterX71TempValue0 -= 7272TempValue0 <<= 1673TempValue0 -= Object.XPos74TempValue0 >>= 1675TempValue0 += Screen.CenterX76TempValue0 += 2077TempValue1 = TempValue078TempValue1 += 687980#platform: Mobile81switch MenuControl.State82default83DrawSprite(16)84DrawSpriteScreenXY(18, TempValue0, 11)85DrawSpriteScreenXY(20, TempValue1, 11)86break8788case MENUCONTROL_SM_CONTROLS89switch MenuControl.SMCurrentButton90default91DrawSprite(16)92DrawSpriteScreenXY(18, TempValue0, 11)93DrawSpriteScreenXY(20, TempValue1, 11)94break9596case 097DrawSprite(17)98DrawSpriteScreenXY(18, TempValue0, 11)99DrawSpriteScreenXY(20, TempValue1, 11)100break101102case 1103DrawSprite(16)104DrawSpriteScreenXY(19, TempValue0, 11)105DrawSpriteScreenXY(20, TempValue1, 11)106break107108case 2109DrawSprite(16)110DrawSpriteScreenXY(18, TempValue0, 11)111DrawSpriteScreenXY(21, TempValue1, 11)112break113114end switch115break116117case MENUCONTROL_SM_CONFIRMED118TempValue2 = MenuControl.Timer119TempValue2 &= 3120TempValue2 >>= 1121if TempValue2 == 0122DrawSpriteScreenXY(21, TempValue1, 11)123else124DrawSpriteScreenXY(20, TempValue1, 11)125end if126DrawSprite(16)127DrawSpriteScreenXY(18, TempValue0, 11)128break129130case MENUCONTROL_SM_LOAD_LEVEL131DrawSprite(16)132DrawSpriteScreenXY(18, TempValue0, 11)133DrawSpriteScreenXY(21, TempValue1, 11)134break135136case MENUCONTROL_SM_COMFIRMED_LEAVE137TempValue2 = MenuControl.Timer138TempValue2 &= 3139TempValue2 >>= 1140if TempValue2 == 0141DrawSprite(17)142else143DrawSprite(16)144end if145DrawSpriteScreenXY(18, TempValue0, 11)146DrawSpriteScreenXY(20, TempValue1, 11)147break148149end switch150#endplatform151end sub152153154sub ObjectStartup155LoadSpriteSheet("TAttack/TimeAttack.gif")156157SpriteFrame(-64, -72, 128, 144, 0, 0) // #0 - Palmtree Panic Icon158SpriteFrame(-64, -72, 128, 144, 256, 0) // #1 - Collision Chaos Icon159SpriteFrame(-64, -72, 128, 144, 384, 0) // #2 - Tidal Tempest Icon160SpriteFrame(-64, -72, 128, 144, 0, 144) // #3 - Quartz Quadrant Icon161SpriteFrame(-64, -72, 128, 144, 128, 144) // #4 - Wacky Workbench Icon162SpriteFrame(-64, -72, 128, 144, 256, 144) // #5 - Stardust Speedway Icon163SpriteFrame(-64, -72, 128, 144, 384, 144) // #6 - Metallic Madnes Icon164SpriteFrame(-64, -72, 128, 144, 0, 288) // #7 - Special Stage 1 Icon (Unused)165SpriteFrame(-64, -72, 128, 144, 128, 288) // #8 - Special Stage 2 Icon (Unused)166SpriteFrame(-64, -72, 128, 144, 256, 288) // #9 - Special Stage 3 Icon (Unused)167SpriteFrame(-64, -72, 128, 144, 384, 288) // #10 - Special Stage 4 Icon (Unused)168SpriteFrame(-64, -72, 128, 144, 0, 432) // #11 - Special Stage 5 Icon (Unused)169SpriteFrame(-64, -72, 128, 144, 128, 432) // #12 - Special Stage 6 Icon (Unused)170SpriteFrame(-64, -72, 128, 144, 256, 432) // #13 - Special Stage 7 Icon (Unused)171SpriteFrame(-64, -72, 128, 144, 384, 432) // #14 - Sonic The Hedgehog CD (Unused)172SpriteFrame(-67, -75, 134, 150, 306, 873) // #15 - Icon Border173SpriteFrame(-67, -95, 64, 20, 280, 680) // #16 - Exit174SpriteFrame(-67, -95, 64, 20, 135, 617) // #17 - Exit Highlight175SpriteFrame(0, 0, 64, 20, 280, 659) // #18 - Next176SpriteFrame(0, 0, 64, 20, 200, 617) // #19 - Next Highlight177SpriteFrame(0, 0, 64, 20, 345, 659) // #20 - Go178SpriteFrame(0, 0, 64, 20, 265, 617) // #21 - Go Highlight179end sub180181182// ========================183// Editor Subs184// ========================185186sub RSDKEdit187if Editor.ReturnVariable == true188switch Editor.VariableID189case EDIT_VAR_PROPVAL // Property Value190CheckResult = Object.PropertyValue191break192case 0 // frame193CheckResult = Object.PropertyValue194break195end switch196else197switch Editor.VariableID198case EDIT_VAR_PROPVAL // Property Value199Object.PropertyValue = Editor.VariableValue200break201case 0 // frame202Object.PropertyValue = Editor.VariableValue203break204end switch205end if206end sub207208209sub RSDKDraw210DrawSprite(15)211DrawSprite(Object.PropertyValue)212end sub213214215sub RSDKLoad216LoadSpriteSheet("TAttack/TimeAttack.gif")217SpriteFrame(-64, -72, 128, 144, 0, 0) // #0 - Palmtree Panic Icon218SpriteFrame(-64, -72, 128, 144, 256, 0) // #1 - Collision Chaos Icon219SpriteFrame(-64, -72, 128, 144, 384, 0) // #2 - Tidal Tempest Icon220SpriteFrame(-64, -72, 128, 144, 0, 144) // #3 - Quartz Quadrant Icon221SpriteFrame(-64, -72, 128, 144, 128, 144) // #4 - Wacky Workbench Icon222SpriteFrame(-64, -72, 128, 144, 256, 144) // #5 - Stardust Speedway Icon223SpriteFrame(-64, -72, 128, 144, 384, 144) // #6 - Metallic Madnes Icon224SpriteFrame(-64, -72, 128, 144, 0, 288) // #7 - Special Zone 1 Icon (Unused)225SpriteFrame(-64, -72, 128, 144, 128, 288) // #8 - Special Zone 2 Icon (Unused)226SpriteFrame(-64, -72, 128, 144, 256, 288) // #9 - Special Zone 3 Icon (Unused)227SpriteFrame(-64, -72, 128, 144, 384, 288) // #10 - Special Zone 4 Icon (Unused)228SpriteFrame(-64, -72, 128, 144, 0, 432) // #11 - Special Zone 5 Icon (Unused)229SpriteFrame(-64, -72, 128, 144, 128, 432) // #12 - Special Zone 6 Icon (Unused)230SpriteFrame(-64, -72, 128, 144, 256, 432) // #13 - Special Zone 7 Icon (Unused)231SpriteFrame(-64, -72, 128, 144, 384, 432) // #14 - Sonic The Hedgehog CD (Unused)232SpriteFrame(-67, -75, 134, 150, 306, 873) // #15 - Icon Border233SpriteFrame(-67, -95, 64, 20, 280, 680) // #16 - Exit234SpriteFrame(-67, -95, 64, 20, 135, 617) // #17 - Exit Highlight235SpriteFrame(0, 0, 64, 20, 280, 659) // #18 - Next236SpriteFrame(0, 0, 64, 20, 200, 617) // #19 - Next Highlight237SpriteFrame(0, 0, 64, 20, 345, 659) // #20 - Go238SpriteFrame(0, 0, 64, 20, 265, 617) // #21 - Go Highlight239240AddEditorVariable("frame")241SetActiveVariable("frame")242AddEnumVariable("Palmtree Panic", 0)243AddEnumVariable("Collision Chaos", 1)244AddEnumVariable("Tidal Tempest", 2)245AddEnumVariable("Quartz Quadrant", 3)246AddEnumVariable("Wacky Workbench", 4)247AddEnumVariable("Stardust Speedway", 5)248AddEnumVariable("Metallic Madness", 6)249AddEnumVariable("Special Zone 1", 7)250AddEnumVariable("Special Zone 2", 8)251AddEnumVariable("Special Zone 3", 9)252AddEnumVariable("Special Zone 4", 10)253AddEnumVariable("Special Zone 5", 11)254AddEnumVariable("Special Zone 6", 12)255AddEnumVariable("Special Zone 7", 13)256AddEnumVariable("Sonic CD Icon", 14)257end sub258259260