-- ------------------------------------------------------------------------------------------------------------- -- -- currentMenuScreen = nil TScreen = {} function TScreen:new(_param) _param =_param or {} setmetatable(_param, self) self.__index = self return _param end TMenuScreen = TScreen:new{ onTraverseForward = function(_self) print ("Traverse forward event") end, onTraverseBackward = function(_self) print ("Traverse backward event") end, onTraverseUp = function(_self) print ("Traverse up event") end, onTraverseDown = function(_self) print ("Traverse down event") end, onAcceptButton = function (_self) print ("Accept Button event") end, onCancelButton = function (_self) print ("CancelButton event") end, onBack = function (_self) print ("onBack event") end, onResetScreen = function (_self) --_self.enableOption(_self.options["option".._self.currOption].representation); --DisableScrolls() end, onLButton = function (_self) print ("LButton event") end, onRButton = function (_self) print ("RButton event") end, onGetVScrollSpeed = function (_self) return 0.0 end, onGetHScrollSpeed = function (_self) return 0.0 end, onPreLoadScreenResources = function (_self) -- Preloads resources that can be needed by te menu screen to avoid registering/unregistering end, onPostFreeScreenResources= function (_self) -- Frees resources allocated by preload end, enableOption = function (_actorName) --SetTextColor(_actorName, 255, 0, 0, 255) end, disableOption = function (_actorName) --SetTextColor(_actorName, 255, 255, 255, 255) end, } function TMenuScreen:traverseForward() self.onTraverseForward(self) end function TMenuScreen:traverseBackward() self.onTraverseBackward(self) end function TMenuScreen:traverseUp() self.onTraverseUp(self) end function TMenuScreen:traverseDown() self.onTraverseDown(self) end function TMenuScreen:back() self.onBack(self) end function TMenuScreen:accept() self.onAcceptButton(self) end function TMenuScreen:cancel() self.onCancelButton(self) end function TMenuScreen:LButton() self.onLButton(self) end function TMenuScreen:RButton() self.onRButton(self) end function TMenuScreen:resetScreen() self.onResetScreen(self) self.onPreLoadScreenResources(self) end function TMenuScreen:getVScrollSpeed() return self.onGetVScrollSpeed(self) end function TMenuScreen:getHScrollSpeed() return self.onGetHScrollSpeed(self) end function TMenuScreen:preLoadScreenResources() return self.onPreLoadScreenResources(self) end function TMenuScreen:postFreeScreenResources() return self.onPostFreeScreenResources(self) end TNullScreen = TMenuScreen:new{ onBack = function (_self) end, } TMainMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/quitGame.lua") end, } TOptionsMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/soundOK.lua") end, } TCreditsMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/creditsBack.lua") end, } TTournamentMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/difficultyBack.lua") end, } TTimeTrialMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/trackBack.lua") end, } TTutorialMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/trackBack.lua") end, } TCupMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/cupBack.lua") end, } TGarageMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/garageBack.lua") end, } TPreRaceMenuScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/firstRaceQuit.lua") end, } TPauseTournamentScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/pause_tournament_op2.lua") end, } TPauseTimeTrialScreen = TMenuScreen:new{ onBack = function (_self) execute("menu/pause_timetrial_op3.lua") end, }