Path: blob/master/Sonic 2/Scripts/LevelSelect/ConfigScreen.txt
1479 views
// ----------------------------------1// RSDK Project: Sonic 22// Script Description: Config Screen Object3// Script Author: Christian Whitehead/Simon Thomley4// Unpacked by Rubberduckycooly's script unpacker5// ----------------------------------67// ========================8// Aliases9// ========================1011private alias object.value0 : object.timer12private alias object.value1 : object.bgBoxSize.x13private alias object.value2 : object.bgBoxSize.y14private alias object.value3 : object.selection15private alias object.value4 : object.playerID1617private alias object.value5 : object.prevPlayerSelected18private alias object.value6 : object.prevItemsSelected19private alias object.value7 : object.nextPlayerSelected20private alias object.value8 : object.nextItemsSelected21private alias object.value9 : object.flightOnSelected22private alias object.value10 : object.spdCapOnSelected23private alias object.value11 : object.flightOffSelected24private alias object.value12 : object.spdCapOffSelected25private alias object.value13 : object.okSelected2627// States28private alias 0 : CONFIGSCREEN_SETUP29private alias 1 : CONFIGSCREEN_ENTERMENU30private alias 2 : CONFIGSCREEN_APPEAR31private alias 3 : CONFIGSCREEN_SELECTING32private alias 4 : CONFIGSCREEN_SELECTEDDELAY33private alias 5 : CONFIGSCREEN_DISAPPEAR34private alias 6 : CONFIGSCREEN_EXITMENU3536// Selection IDs37private alias 0 : CONFIGSCREEN_SEL_NONE38private alias 1 : CONFIGSCREEN_SEL_PLAYER39private alias 2 : CONFIGSCREEN_SEL_ITEMS40private alias 3 : CONFIGSCREEN_SEL_FLIGHT41private alias 4 : CONFIGSCREEN_SEL_SPDCAP42private alias 5 : CONFIGSCREEN_SEL_OK4344// Player IDs45private alias 0 : CONFIGSCREEN_PLAYER_ST46private alias 1 : CONFIGSCREEN_PLAYER_S47private alias 2 : CONFIGSCREEN_PLAYER_T48private alias 3 : CONFIGSCREEN_PLAYER_K49private alias 4 : CONFIGSCREEN_PLAYER_KT5051// Origins Plus Player IDs52private alias 4 : CONFIGSCREEN_PLAYER_A53private alias 5 : CONFIGSCREEN_PLAYER_KT_O54private alias 6 : CONFIGSCREEN_PLAYER_AT5556// Shield Types Aliases57private alias 0 : SHIELDTYPE_S258private alias 1 : SHIELDTYPE_S359private alias 2 : SHIELDTYPE_RAND_S260private alias 3 : SHIELDTYPE_RAND_S36162// Player List Pos Aliases63private alias 0 : PLAYER_SONIC_A64private alias 1 : PLAYER_TAILS_A65private alias 2 : PLAYER_KNUCKLES_A66private alias 3 : PLAYER_SONIC_TAILS_A67private alias 4 : PLAYER_KNUCKLES_TAILS_A68private alias 5 : PLAYER_AMY_A69private alias 6 : PLAYER_AMY_TAILS_A707172// ========================73// Function Declarations74// ========================7576reserve function ConfigScreen_SetPlayer777879// ========================80// Function Definitions81// ========================8283private function ConfigScreen_SetPlayer84#platform: USE_ORIGINS85// Introduced in Origins Plus8687switch object.playerID88case CONFIGSCREEN_PLAYER_ST89stage.playerListPos = PLAYER_SONIC90stage.player2Enabled = true91break9293case CONFIGSCREEN_PLAYER_S94stage.playerListPos = PLAYER_SONIC95stage.player2Enabled = false96break9798case CONFIGSCREEN_PLAYER_T99stage.playerListPos = PLAYER_TAILS100stage.player2Enabled = false101break102103case CONFIGSCREEN_PLAYER_K104stage.playerListPos = PLAYER_KNUCKLES105stage.player2Enabled = false106break107108case CONFIGSCREEN_PLAYER_KT_O109stage.playerListPos = PLAYER_KNUCKLES110stage.player2Enabled = true111break112113case CONFIGSCREEN_PLAYER_A114stage.playerListPos = PLAYER_AMY115stage.player2Enabled = false116break117118case CONFIGSCREEN_PLAYER_AT119stage.playerListPos = PLAYER_AMY120stage.player2Enabled = true121break122end switch123#endplatform124end function125126// ========================127// Events128// ========================129130event ObjectUpdate131switch object.state132case CONFIGSCREEN_SETUP133object.inkEffect = INK_ALPHA134object.alpha = 0x00135object.drawOrder = 6136object.state++137break138139case CONFIGSCREEN_ENTERMENU140temp0 = 198141temp0 -= object.bgBoxSize.x142temp0 >>= 3143object.bgBoxSize.x += temp0144145temp0 = 216146temp0 -= object.bgBoxSize.y147temp0 >>= 3148object.bgBoxSize.y += temp0149150if object.bgBoxSize.x >= 188151object.bgBoxSize.x = 188152object.bgBoxSize.y = 208153object.state++154end if155break156157case CONFIGSCREEN_APPEAR158if object.alpha < 0x100159object.alpha += 0x10160else161if options.physicalControls == true162object.selection = CONFIGSCREEN_SEL_PLAYER163else164object.selection = CONFIGSCREEN_SEL_NONE165end if166object.state++167end if168break169170case CONFIGSCREEN_SELECTING171if options.physicalControls == true172if keyPress[0].up == true173object.selection--174if object.selection < CONFIGSCREEN_SEL_PLAYER175object.selection = CONFIGSCREEN_SEL_OK176end if177PlaySfx(SfxName[Menu Move], false)178end if179180if keyPress[0].down == true181object.selection++182if object.selection > CONFIGSCREEN_SEL_OK183object.selection = CONFIGSCREEN_SEL_PLAYER184end if185186PlaySfx(SfxName[Menu Move], false)187end if188189switch object.selection190case CONFIGSCREEN_SEL_PLAYER191if keyPress[0].left == true192object.playerID--193194#platform: USE_STANDALONE195if object.playerID < CONFIGSCREEN_PLAYER_ST196object.playerID = CONFIGSCREEN_PLAYER_KT197end if198#endplatform199200#platform: USE_ORIGINS201if object.playerID == CONFIGSCREEN_PLAYER_A202if game.hasPlusDLC == false203object.playerID--204end if205end if206207if object.playerID < CONFIGSCREEN_PLAYER_ST208if game.hasPlusDLC == true209object.playerID = CONFIGSCREEN_PLAYER_AT210else211object.playerID = CONFIGSCREEN_PLAYER_KT_O212end if213end if214#endplatform215PlaySfx(SfxName[Menu Move], false)216end if217218if keyPress[0].right == true219object.playerID++220221#platform: USE_STANDALONE222if object.playerID > CONFIGSCREEN_PLAYER_KT223object.playerID = CONFIGSCREEN_PLAYER_ST224end if225#endplatform226227#platform: USE_ORIGINS228if object.playerID == CONFIGSCREEN_PLAYER_A229if game.hasPlusDLC == false230object.playerID++231end if232end if233234if object.playerID == CONFIGSCREEN_PLAYER_AT235if game.hasPlusDLC == false236object.playerID++237end if238end if239240if object.playerID > CONFIGSCREEN_PLAYER_AT241object.playerID = CONFIGSCREEN_PLAYER_ST242end if243#endplatform244PlaySfx(SfxName[Menu Move], false)245end if246247#platform: USE_STANDALONE248switch object.playerID249case CONFIGSCREEN_PLAYER_ST250stage.playerListPos = PLAYER_SONIC_A251stage.player2Enabled = true252break253254case CONFIGSCREEN_PLAYER_S255stage.playerListPos = PLAYER_SONIC_A256stage.player2Enabled = false257break258259case CONFIGSCREEN_PLAYER_T260stage.playerListPos = PLAYER_TAILS_A261stage.player2Enabled = false262break263264case CONFIGSCREEN_PLAYER_K265stage.playerListPos = PLAYER_KNUCKLES_A266stage.player2Enabled = false267break268269case CONFIGSCREEN_PLAYER_KT270stage.playerListPos = PLAYER_KNUCKLES_A271stage.player2Enabled = true272break273end switch274#endplatform275276#platform: USE_ORIGINS277CallFunction(ConfigScreen_SetPlayer)278#endplatform279break280281case CONFIGSCREEN_SEL_ITEMS282if keyPress[0].left == true283options.shieldType--284if options.shieldType < SHIELDTYPE_S2285options.shieldType = SHIELDTYPE_RAND_S3286end if287PlaySfx(SfxName[Menu Move], false)288end if289290if keyPress[0].right == true291options.shieldType++292if options.shieldType > SHIELDTYPE_RAND_S3293options.shieldType = SHIELDTYPE_S2294end if295PlaySfx(SfxName[Menu Move], false)296end if297break298299case CONFIGSCREEN_SEL_FLIGHT300if keyPress[0].left == true301options.tailsFlight ^= 1302PlaySfx(SfxName[Menu Move], false)303end if304305if keyPress[0].right == true306options.tailsFlight ^= 1307PlaySfx(SfxName[Menu Move], false)308end if309break310311case CONFIGSCREEN_SEL_SPDCAP312if keyPress[0].left == true313options.airSpeedCap ^= 1314PlaySfx(SfxName[Menu Move], false)315end if316317if keyPress[0].right == true318options.airSpeedCap ^= 1319PlaySfx(SfxName[Menu Move], false)320end if321break322323case CONFIGSCREEN_SEL_OK324if keyPress[0].buttonA == true325object.state = CONFIGSCREEN_SELECTEDDELAY326PlaySfx(SfxName[Menu Select], false)327end if328329if keyPress[0].start == true330object.state = CONFIGSCREEN_SELECTEDDELAY331PlaySfx(SfxName[Menu Select], false)332end if333break334end switch335336if keyPress[0].buttonB == true337object.state = CONFIGSCREEN_DISAPPEAR338PlaySfx(SfxName[Menu Back], false)339end if340341if object.state == CONFIGSCREEN_SELECTING342CheckTouchRect(0, 0, screen.xsize, screen.ysize)343if checkResult > -1344options.physicalControls = false345object.selection = CONFIGSCREEN_SEL_NONE346end if347end if348else349CheckTouchRect(0, 0, screen.xsize, screen.ysize)350if checkResult > -1351// Prev Player & Item Mode352temp0 = screen.xcenter353temp0 -= 26354temp1 = temp0355temp1 += 38356CheckTouchRect(temp0, 36, temp1, 68)357if checkResult > -1358object.prevPlayerSelected = true359else360object.prevPlayerSelected = false361end if362363CheckTouchRect(temp0, 76, temp1, 108)364if checkResult > -1365object.prevItemsSelected = true366else367object.prevItemsSelected = false368end if369370// Next Player & Item Mode371temp0 = screen.xcenter372temp0 += 58373temp1 = temp0374temp1 += 38375CheckTouchRect(temp0, 36, temp1, 68)376if checkResult > -1377object.nextPlayerSelected = true378else379object.nextPlayerSelected = false380end if381382CheckTouchRect(temp0, 76, temp1, 108)383if checkResult > -1384object.nextItemsSelected = true385else386object.nextItemsSelected = false387end if388389// Flight on/Speed Cap on390temp0 = screen.xcenter391temp0 -= 16392temp1 = temp0393temp1 += 54394CheckTouchRect(temp0, 116, temp1, 148)395if checkResult > -1396object.flightOnSelected = true397else398object.flightOnSelected = false399end if400401CheckTouchRect(temp0, 156, temp1, 188)402if checkResult > -1403object.spdCapOnSelected = true404else405object.spdCapOnSelected = false406end if407408// Flight on/Speed Cap off409temp0 = screen.xcenter410temp0 += 38411temp1 = temp0412temp1 += 54413CheckTouchRect(temp0, 116, temp1, 148)414if checkResult > -1415object.flightOffSelected = true416else417object.flightOffSelected = false418end if419420CheckTouchRect(temp0, 156, temp1, 188)421if checkResult > -1422object.spdCapOffSelected = true423else424object.spdCapOffSelected = false425end if426427// OK button428temp0 = screen.xcenter429temp0 -= 27430temp1 = temp0431temp1 += 54432CheckTouchRect(temp0, 192, temp1, 218)433if checkResult > -1434object.okSelected = true435else436object.okSelected = false437end if438else439if object.prevPlayerSelected == true440object.prevPlayerSelected = false441object.playerID--442443#platform: USE_STANDALONE444if object.playerID < CONFIGSCREEN_PLAYER_ST445object.playerID = CONFIGSCREEN_PLAYER_KT446end if447448switch object.playerID449case CONFIGSCREEN_PLAYER_ST450stage.playerListPos = PLAYER_SONIC_A451stage.player2Enabled = true452break453454case CONFIGSCREEN_PLAYER_S455stage.playerListPos = PLAYER_SONIC_A456stage.player2Enabled = false457break458459case CONFIGSCREEN_PLAYER_T460stage.playerListPos = PLAYER_TAILS_A461stage.player2Enabled = false462break463464case CONFIGSCREEN_PLAYER_K465stage.playerListPos = PLAYER_KNUCKLES_A466stage.player2Enabled = false467break468469case CONFIGSCREEN_PLAYER_KT470stage.playerListPos = PLAYER_KNUCKLES_A471stage.player2Enabled = true472break473end switch474#endplatform475476#platform: USE_ORIGINS477// Uh... there's no DLC checks here...478// Yeah, Origins doesn't have touch controls, but why did they edit this at all at that point?479if object.playerID < CONFIGSCREEN_PLAYER_ST480object.playerID = CONFIGSCREEN_PLAYER_AT481end if482483CallFunction(ConfigScreen_SetPlayer)484#endplatform485486PlaySfx(SfxName[Menu Move], false)487end if488489if object.prevItemsSelected == true490object.prevItemsSelected = false491options.shieldType--492if options.shieldType < SHIELDTYPE_S2493options.shieldType = SHIELDTYPE_RAND_S3494end if495PlaySfx(SfxName[Menu Move], false)496end if497498if object.nextPlayerSelected == true499object.nextPlayerSelected = false500object.playerID++501if object.playerID > CONFIGSCREEN_PLAYER_KT502object.playerID = CONFIGSCREEN_PLAYER_ST503end if504505#platform: USE_STANDALONE506switch object.playerID507case CONFIGSCREEN_PLAYER_ST508stage.playerListPos = PLAYER_SONIC_A509stage.player2Enabled = true510break511512case CONFIGSCREEN_PLAYER_S513stage.playerListPos = PLAYER_SONIC_A514stage.player2Enabled = false515break516517case CONFIGSCREEN_PLAYER_T518stage.playerListPos = PLAYER_TAILS_A519stage.player2Enabled = false520break521522case CONFIGSCREEN_PLAYER_K523stage.playerListPos = PLAYER_KNUCKLES_A524stage.player2Enabled = false525break526527case CONFIGSCREEN_PLAYER_KT528stage.playerListPos = PLAYER_KNUCKLES_A529stage.player2Enabled = true530break531end switch532#endplatform533534#platform: USE_ORIGINS535// Uh... there's no DLC checks here...536// Yeah, Origins doesn't have touch controls, but why did they edit this at all at that point?537if object.playerID > CONFIGSCREEN_PLAYER_AT538object.playerID = CONFIGSCREEN_PLAYER_ST539end if540541CallFunction(ConfigScreen_SetPlayer)542#endplatform543544PlaySfx(SfxName[Menu Move], false)545end if546547if object.nextItemsSelected == true548object.nextItemsSelected = false549options.shieldType++550if options.shieldType > SHIELDTYPE_RAND_S3551options.shieldType = SHIELDTYPE_S2552end if553PlaySfx(SfxName[Menu Move], false)554end if555556if object.flightOnSelected == true557object.flightOnSelected = false558options.tailsFlight = true559PlaySfx(SfxName[Menu Move], false)560end if561562if object.flightOffSelected == true563object.flightOffSelected = false564options.tailsFlight = false565PlaySfx(SfxName[Menu Move], false)566end if567568if object.spdCapOnSelected == true569object.spdCapOnSelected = false570options.airSpeedCap = true571PlaySfx(SfxName[Menu Move], false)572end if573574if object.spdCapOffSelected == true575object.spdCapOffSelected = false576options.airSpeedCap = false577PlaySfx(SfxName[Menu Move], false)578end if579580if object.okSelected == true581object.okSelected = false582object.state = CONFIGSCREEN_SELECTEDDELAY583PlaySfx(SfxName[Menu Select], false)584end if585end if586587if keyPress[0].buttonB == true588object.state = CONFIGSCREEN_DISAPPEAR589PlaySfx(SfxName[Menu Back], false)590end if591592if object.state == CONFIGSCREEN_SELECTING593if keyPress[0].up == true594options.physicalControls = true595object.selection = CONFIGSCREEN_SEL_OK596end if597598if keyPress[0].down == true599options.physicalControls = true600object.selection = CONFIGSCREEN_SEL_PLAYER601end if602end if603end if604break605606case CONFIGSCREEN_SELECTEDDELAY607if object.timer < 32608object.timer++609else610object.timer = 0611object.state++612end if613break614615case CONFIGSCREEN_DISAPPEAR616if object.alpha > 0617object.alpha -= 16618else619object.state++620end if621break622623case CONFIGSCREEN_EXITMENU624temp0 = 0625temp0 -= object.bgBoxSize.x626temp0 >>= 3627object.bgBoxSize.x += temp0628629temp0 = 0630temp0 -= object.bgBoxSize.y631temp0 >>= 3632object.bgBoxSize.y += temp0633634if object.bgBoxSize.x < 4635object.bgBoxSize.x = 0636object.bgBoxSize.y = 0637MenuControl_optionsMenuOpen = false638ResetObjectEntity(object.entityPos, TypeName[Blank Object], 0, 0, 0)639end if640break641642end switch643end event644645646event ObjectDraw647temp0 = object.bgBoxSize.x648temp0 >>= 1649FlipSign(temp0)650temp0 += screen.xcenter651temp1 = object.bgBoxSize.y652temp1 >>= 1653FlipSign(temp1)654temp1 += screen.ycenter655DrawRect(temp0, temp1, object.bgBoxSize.x, object.bgBoxSize.y, 0x00, 0x00, 0x60, 0xFF)656657temp0 += 2658temp1 += 2659temp2 = object.bgBoxSize.x660temp2 -= 4661temp3 = object.bgBoxSize.y662temp3 -= 4663DrawRect(temp0, temp1, temp2, temp3, 0x00, 0x20, 0xC0, 0xFF)664665DrawSpriteScreenFX(0, FX_INK, screen.xcenter, 25)666if object.selection == CONFIGSCREEN_SEL_PLAYER667DrawSpriteScreenFX(2, FX_INK, screen.xcenter, 49)668else669DrawSpriteScreenFX(1, FX_INK, screen.xcenter, 49)670end if671672if object.selection == CONFIGSCREEN_SEL_ITEMS673DrawSpriteScreenFX(4, FX_INK, screen.xcenter, 89)674else675DrawSpriteScreenFX(3, FX_INK, screen.xcenter, 89)676end if677678if object.selection == CONFIGSCREEN_SEL_FLIGHT679DrawSpriteScreenFX(6, FX_INK, screen.xcenter, 129)680else681DrawSpriteScreenFX(5, FX_INK, screen.xcenter, 129)682end if683684if object.selection == CONFIGSCREEN_SEL_SPDCAP685DrawSpriteScreenFX(8, FX_INK, screen.xcenter, 169)686else687DrawSpriteScreenFX(7, FX_INK, screen.xcenter, 169)688end if689690if object.prevPlayerSelected == true691DrawSpriteScreenFX(10, FX_INK, screen.xcenter, 43)692else693DrawSpriteScreenFX(9, FX_INK, screen.xcenter, 43)694end if695696if object.nextPlayerSelected == true697DrawSpriteScreenFX(12, FX_INK, screen.xcenter, 43)698else699DrawSpriteScreenFX(11, FX_INK, screen.xcenter, 43)700end if701702if object.prevItemsSelected == true703DrawSpriteScreenFX(10, FX_INK, screen.xcenter, 83)704else705DrawSpriteScreenFX(9, FX_INK, screen.xcenter, 83)706end if707708if object.nextItemsSelected == true709DrawSpriteScreenFX(12, FX_INK, screen.xcenter, 83)710else711DrawSpriteScreenFX(11, FX_INK, screen.xcenter, 83)712end if713714if object.flightOnSelected == true715DrawSpriteScreenFX(14, FX_INK, screen.xcenter, 123)716else717DrawSpriteScreenFX(13, FX_INK, screen.xcenter, 123)718end if719720if object.flightOffSelected == true721DrawSpriteScreenFX(16, FX_INK, screen.xcenter, 123)722else723DrawSpriteScreenFX(15, FX_INK, screen.xcenter, 123)724end if725726if options.tailsFlight == true727DrawSpriteScreenFX(19, FX_INK, screen.xcenter, 123)728else729DrawSpriteScreenFX(20, FX_INK, screen.xcenter, 123)730end if731732if object.spdCapOnSelected == true733DrawSpriteScreenFX(14, FX_INK, screen.xcenter, 163)734else735DrawSpriteScreenFX(13, FX_INK, screen.xcenter, 163)736end if737738if object.spdCapOffSelected == true739DrawSpriteScreenFX(16, FX_INK, screen.xcenter, 163)740else741DrawSpriteScreenFX(15, FX_INK, screen.xcenter, 163)742end if743744if options.airSpeedCap == true745DrawSpriteScreenFX(19, FX_INK, screen.xcenter, 163)746else747DrawSpriteScreenFX(20, FX_INK, screen.xcenter, 163)748end if749750temp0 = object.timer751temp0 >>= 1752temp0 &= 1753temp0 += 17754if object.okSelected == true755temp0 = 18756end if757DrawSpriteScreenFX(temp0, FX_INK, screen.xcenter, 195)758759if options.physicalControls == true760if object.selection == CONFIGSCREEN_SEL_OK761if object.state != CONFIGSCREEN_SELECTEDDELAY762DrawSpriteScreenFX(21, FX_INK, screen.xcenter, 195)763end if764end if765end if766767switch object.playerID768case CONFIGSCREEN_PLAYER_ST769DrawSpriteScreenFX(22, FX_INK, screen.xcenter, 41)770DrawSpriteScreenFX(23, FX_INK, screen.xcenter, 41)771break772773case CONFIGSCREEN_PLAYER_S774DrawSpriteScreenFX(24, FX_INK, screen.xcenter, 41)775break776777case CONFIGSCREEN_PLAYER_T778DrawSpriteScreenFX(25, FX_INK, screen.xcenter, 41)779break780781case CONFIGSCREEN_PLAYER_K782DrawSpriteScreenFX(26, FX_INK, screen.xcenter, 41)783break784785#platform: USE_STANDALONE786case CONFIGSCREEN_PLAYER_KT787DrawSpriteScreenFX(27, FX_INK, screen.xcenter, 41)788DrawSpriteScreenFX(28, FX_INK, screen.xcenter, 41)789break790#endplatform791792#platform: USE_ORIGINS793case CONFIGSCREEN_PLAYER_KT_O794DrawSpriteScreenFX(27, FX_INK, screen.xcenter, 41)795DrawSpriteScreenFX(28, FX_INK, screen.xcenter, 41)796break797798case CONFIGSCREEN_PLAYER_A799DrawSpriteScreenFX(29, FX_INK, screen.xcenter, 41)800break801802case CONFIGSCREEN_PLAYER_AT803DrawSpriteScreenFX(30, FX_INK, screen.xcenter, 41)804DrawSpriteScreenFX(31, FX_INK, screen.xcenter, 41)805break806#endplatform807end switch808809#platform: USE_STANDALONE810switch options.shieldType811case SHIELDTYPE_S2812DrawSpriteScreenFX(29, FX_INK, screen.xcenter, 86)813break814815case SHIELDTYPE_S3816DrawSpriteScreenFX(30, FX_INK, screen.xcenter, 78)817break818819case SHIELDTYPE_RAND_S2820DrawSpriteScreenFX(31, FX_INK, screen.xcenter, 86)821break822823case SHIELDTYPE_RAND_S3824DrawSpriteScreenFX(30, FX_INK, screen.xcenter, 78)825DrawSpriteScreenFX(32, FX_INK, screen.xcenter, 78)826break827end switch828#endplatform829830#platform: USE_ORIGINS831switch options.shieldType832case SHIELDTYPE_S2833DrawSpriteScreenFX(32, FX_INK, screen.xcenter, 86)834break835836case SHIELDTYPE_S3837DrawSpriteScreenFX(33, FX_INK, screen.xcenter, 78)838break839840case SHIELDTYPE_RAND_S2841DrawSpriteScreenFX(34, FX_INK, screen.xcenter, 86)842break843844case SHIELDTYPE_RAND_S3845DrawSpriteScreenFX(33, FX_INK, screen.xcenter, 78)846DrawSpriteScreenFX(35, FX_INK, screen.xcenter, 78)847break848end switch849#endplatform850end event851852853event ObjectStartup854LoadSpriteSheet("LevelSelect/Icons.gif")855SpriteFrame(-52, 0, 104, 7, 103, 430) // GAME CONFIG text - #0856857SpriteFrame(-82, 0, 48, 7, 158, 454) // PLAYER text - #1858SpriteFrame(-82, 0, 48, 7, 207, 454) // PLAYER text (Selected) - #2859SpriteFrame(-82, 0, 40, 7, 158, 446) // ITEMS text - #3860SpriteFrame(-82, 0, 40, 7, 207, 446) // ITEMS text (Selected) - #4861SpriteFrame(-82, 0, 48, 7, 158, 438) // FLIGHT text - #5862SpriteFrame(-82, 0, 48, 7, 207, 438) // FLIGHT text (Selected) - #6863SpriteFrame(-82, 0, 56, 7, 46, 378) // AIR CAP text - #7864SpriteFrame(-82, 0, 56, 7, 199, 462) // AIR CAP text (Selected) - #8865866SpriteFrame(-16, 0, 20, 20, 138, 22) // Left - #9867SpriteFrame(-16, 0, 20, 20, 138, 64) // Left (Selected) - #10868SpriteFrame(64, 0, 20, 20, 159, 22) // Right - #11869SpriteFrame(64, 0, 20, 20, 159, 64) // Right (Selected) - #12870871SpriteFrame(-8, 0, 40, 20, 1, 411) // ON - #13872SpriteFrame(-8, 0, 40, 20, 42, 411) // ON (Selected) - #14873SpriteFrame(44, 0, 40, 20, 1, 432) // OFF - #15874SpriteFrame(44, 0, 40, 20, 42, 432) // OFF (Selected) - #16875SpriteFrame(-20, 0, 40, 20, 1, 320) // OK - #17876SpriteFrame(-20, 0, 40, 20, 42, 320) // OK (Selected) - #18877SpriteFrame(-10, -2, 42, 22, 1, 362) // Back - #19878SpriteFrame(42, -2, 42, 22, 1, 362) // Back (Selected) - #20879SpriteFrame(-22, -2, 42, 22, 1, 362) // Selection Box - #21880881SpriteFrame(16, 0, 16, 23, 46, 386) // Sonic (Alone) - #22882SpriteFrame(36, 0, 16, 23, 63, 386) // Tails (Alone) - #23883SpriteFrame(26, 0, 16, 23, 46, 386) // Sonic (& Tails) - #24884SpriteFrame(26, 0, 16, 23, 63, 386) // Tails (& Sonic) - #25885SpriteFrame(26, 0, 16, 23, 80, 386) // Knuckles (Alone) - #26886SpriteFrame(16, 0, 16, 23, 80, 386) // Knuckles (& Tails) - #27887SpriteFrame(36, 0, 16, 23, 63, 386) // Tails (& Knux) - #28888#platform: USE_ORIGINS889SpriteFrame(25, 1, 17, 22, 83, 410) // Amy (Alone) - #29890SpriteFrame(17, 1, 17, 22, 83, 410) // Amy (& Tails) - #30891SpriteFrame(36, 0, 16, 23, 63, 386) // Tails (& Amy) - #31892#endplatform893894SpriteFrame(26, 0, 16, 14, 207, 314) // Shields (S2) - #29/32895SpriteFrame(17, 0, 34, 30, 207, 314) // Shields (S3) - #30/33896SpriteFrame(26, 0, 16, 14, 228, 299) // Random (S2) - #31/34897SpriteFrame(17, 0, 16, 14, 228, 299) // Random (S3) - #32/35898end event899900901// ========================902// Events903// ========================904905event RSDKDraw906DrawSprite(0)907end event908909910event RSDKLoad911LoadSpriteSheet("Global/Display.gif")912SpriteFrame(-16, -16, 32, 32, 1, 143)913914SetVariableAlias(ALIAS_VAR_PROPVAL, "unused")915end event916917918