Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/trunk/data/gui/scripts/SingleplayerMenu.lua @ 7082

Last change on this file since 7082 was 6754, checked in by rgrieder, 15 years ago

Fixed bug in SingleplayerMenu that happened when starting a level manually.

  • Property svn:eol-style set to native
File size: 1.3 KB
RevLine 
[6363]1-- SingleplayerMenu.lua
2
[6746]3local P = createMenuSheet("SingleplayerMenu")
[6363]4
[6746]5function P.onLoad()
[6363]6    listbox = winMgr:getWindow("orxonox/SingleplayerLevelListbox")
7    preselect = orxonox.LevelManager:getInstance():getDefaultLevel()
8    orxonox.LevelManager:getInstance():compileAvailableLevelList()
9    local levelList = {}
10    local index = 0
11    local level = ""
12    while true do
13      level = orxonox.LevelManager:getInstance():getAvailableLevelListItem(index)
14      if level == "" then
15        break
16      end
17      table.insert(levelList, level)
18      index = index + 1
19    end
20    table.sort(levelList)
21    for k,v in pairs(levelList) do
[6388]22        item = CEGUI.createListboxTextItem(v)
[6746]23        item:setSelectionBrushImage(menuImageSet, "MultiListSelectionBrush")
[6363]24        CEGUI.toListbox(listbox):addItem(item)
25        if v .. ".oxw" == preselect then
26            listbox:setItemSelectState(item, true)
27        end
28    end
29end
30
31function P.SingleplayerStartButton_clicked(e)
[6754]32    local choice = CEGUI.toListbox(winMgr:getWindow("orxonox/SingleplayerLevelListbox")):getFirstSelectedItem()
[6363]33    if choice then
34        orxonox.LevelManager:getInstance():setDefaultLevel(choice:getText() .. ".oxw")
[6403]35        orxonox.execute("startGame")
[6746]36        hideAllMenuSheets()
[6363]37    end
38end
39
40function P.SingleplayerBackButton_clicked(e)
[6746]41    hideMenuSheet(P.name)
[6363]42end
43
44return P
45
Note: See TracBrowser for help on using the repository browser.