Path: blob/main/Scripts/Menu/HelpButtons.txt
1319 views
//----------------Sonic CD Help Buttons Script----------------//1//--------Scripted by Christian Whitehead 'The Taxman'--------//2//-------Unpacked By Rubberduckycooly's Script Unpacker-------//34// Aliases5#alias Object[0].State : Object.HelpState6#alias Object[0].Value0 : Object.HelpFade7#alias Object[0].Value1 : Object.ButtonPressed8#alias Object[0].Value3 : Object.CurrentPage910// Global SFX11#alias 26 : SFX_G_OUTTAHERE12#alias 27 : SFX_G_SELECT1314//Engine & CallBacks15#alias 2 : MESSAGE_LOSTFOCUS1617// Device Type18#alias 1 : RETRO_MOBILE1920// Help Menu States21#alias 2 : HELPMENU_CONTROLS22#alias 3 : HELPMENU_PAGEDOWN23#alias 4 : HELPMENU_PAGEUP24#alias 5 : HELPMENU_LEAVE2526// Property Values27#alias 0 : BUTTON_DOWN28#alias 1 : BUTTON_UP29#alias 2 : BUTTON_BACK303132sub ObjectMain33if Object.HelpState == HELPMENU_CONTROLS34if Engine.Message == MESSAGE_LOSTFOCUS35Object.ButtonPressed = 036end if3738TempValue0 = Object.XPos39TempValue0 >>= 1640TempValue1 = TempValue04142TempValue0 -= 1843TempValue0 -= Screen.XOffset4445TempValue1 += 1846TempValue1 -= Screen.XOffset47CheckTouchRect(TempValue0, 0, TempValue1, 48)48if CheckResult > -149Object.ButtonPressed = Object.PropertyValue50Object.ButtonPressed++51else52CheckTouchRect(0, 0, Screen.XSize, Screen.YSize)53if CheckResult < 054switch Object.PropertyValue55case BUTTON_DOWN56if Object.ButtonPressed == true57Object.ButtonPressed = 058if Object.CurrentPage < 859PlaySfx(SFX_G_SELECT, false)60Object.HelpFade = 25661Object.HelpState = HELPMENU_PAGEDOWN62end if63end if64break6566case BUTTON_UP67if Object.ButtonPressed == 268Object.ButtonPressed = 069if Object.CurrentPage > 070PlaySfx(SFX_G_SELECT, false)71Object.HelpState = HELPMENU_PAGEUP72end if73end if74break7576case BUTTON_BACK77if Object.ButtonPressed == 378Object.ButtonPressed = 079PlaySfx(SFX_G_OUTTAHERE, false)80StopMusic()81Object.HelpState = HELPMENU_LEAVE82end if83break8485end switch86else87switch Object.PropertyValue88case BUTTON_DOWN89if Object.ButtonPressed == 190Object.ButtonPressed = 091end if92break9394case BUTTON_UP95if Object.ButtonPressed == 296Object.ButtonPressed = 097end if98break99100case BUTTON_BACK101if Object.ButtonPressed == 3102Object.ButtonPressed = 0103end if104break105106end switch107end if108end if109end if110end sub111112113sub ObjectDraw114Object.Scale = 128115switch Object.PropertyValue116case BUTTON_DOWN117if Object.ButtonPressed == 1118DrawSpriteFX(1, FX_SCALE, Object.XPos, Object.YPos)119else120DrawSpriteFX(0, FX_SCALE, Object.XPos, Object.YPos)121end if122break123case BUTTON_UP124if Object.ButtonPressed == 2125DrawSpriteFX(3, FX_SCALE, Object.XPos, Object.YPos)126else127DrawSpriteFX(2, FX_SCALE, Object.XPos, Object.YPos)128end if129break130case BUTTON_BACK131if Object.ButtonPressed == 3132DrawSpriteFX(5, FX_SCALE, Object.XPos, Object.YPos)133else134DrawSpriteFX(4, FX_SCALE, Object.XPos, Object.YPos)135end if136break137end switch138end sub139140141sub ObjectStartup142LoadSpriteSheet("Menu/Buttons.gif")143144SpriteFrame(-63, -39, 126, 78, 1, 1) // #0 - Down Button145SpriteFrame(-60, -37, 120, 74, 132, 3) // #1 - Down Button Highlight146SpriteFrame(-63, -39, 126, 78, 1, 81) // #2 - Up Button147SpriteFrame(-60, -37, 120, 74, 132, 83) // #3 - Up Button Highlight148149#platform: Use_Origins150if Engine.DeviceType == RETRO_MOBILE151SpriteFrame(-63, -39, 126, 78, 1, 161) // #4 - Back Button152SpriteFrame(-60, -37, 120, 74, 132, 163)// #5 - Back Button Highlight153else154SpriteFrame(-63, -39, 0, 0, 0, 0)155SpriteFrame(-60, -37, 0, 0, 0, 0)156end if157#endplatform158159#platform: Use_Standalone160SpriteFrame(-63, -39, 126, 78, 1, 161) // #4 - Back Button161SpriteFrame(-60, -37, 120, 74, 132, 163) // #5 - Back Button Highlight162#endplatform163164TempValue0 = Screen.CenterX165TempValue0 -= 160166TempValue0 <<= 16167168ArrayPos0 = 32169while ArrayPos0 < 1056170if Object[ArrayPos0].Type == TypeName[Help Buttons]171Object[ArrayPos0].XPos += TempValue0172end if173ArrayPos0++174loop175end sub176177178// ========================179// Editor Subs180// ========================181182sub RSDKEdit183if Editor.ReturnVariable == true184switch Editor.VariableID185case EDIT_VAR_PROPVAL // Property Value186CheckResult = Object.PropertyValue187break188case 0 // Type189CheckResult = Object.PropertyValue190break191end switch192else193switch Editor.VariableID194case EDIT_VAR_PROPVAL // Property Value195Object.PropertyValue = Editor.VariableValue196break197case 0 // Type198Object.PropertyValue = Editor.VariableValue199break200end switch201end if202end sub203204205sub RSDKDraw206switch Object.PropertyValue207case 0208DrawSprite(0)209break210211case 1212DrawSprite(2)213break214215case 2216DrawSprite(4)217break218end switch219end sub220221222sub RSDKLoad223LoadSpriteSheet("Menu/Buttons.gif")224SpriteFrame(-63, -39, 126, 78, 1, 1) // #0 - Down Button225SpriteFrame(-60, -37, 120, 74, 132, 3) // #1 - Down Button Highlight226SpriteFrame(-63, -39, 126, 78, 1, 81) // #2 - Up Button227SpriteFrame(-60, -37, 120, 74, 132, 83) // #3 - Up Button Highlight228SpriteFrame(-63, -39, 126, 78, 1, 161) // #4 - Back Button229SpriteFrame(-60, -37, 120, 74, 132, 163) // #5 - Back Button Highlight230231AddEditorVariable("Type")232SetActiveVariable("Type")233AddEnumVariable("Down Button", 0)234AddEnumVariable("Up Button", 1)235AddEnumVariable("Back Button", 2)236end sub237238239