Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/tutorial/data/gui/scripts/SingleplayerMenu.lua @ 7187

Last change on this file since 7187 was 6417, checked in by rgrieder, 15 years ago

Merged presentation2 branch back to trunk.
Major new features:

  • Actual GUI with settings, etc.
  • Improved space ship steering (human interaction)
  • Rocket fire and more particle effects
  • Advanced sound framework
  • Property svn:eol-style set to native
File size: 1.5 KB
Line 
1-- SingleplayerMenu.lua
2
3BasicGUI = require("BasicGUI")
4local P = BasicGUI:new() --inherit everything from the gui package
5if _REQUIREDNAME == nil then
6    SingleplayerMenu = P
7else
8    _G[_REQUIREDNAME] = P
9end
10
11P.filename = "SingleplayerMenu"
12P.layoutString = "SingleplayerMenu.layout"
13
14function P:init()
15    listbox = winMgr:getWindow("orxonox/SingleplayerLevelListbox")
16    preselect = orxonox.LevelManager:getInstance():getDefaultLevel()
17    orxonox.LevelManager:getInstance():compileAvailableLevelList()
18    local levelList = {}
19    local index = 0
20    local level = ""
21    while true do
22      level = orxonox.LevelManager:getInstance():getAvailableLevelListItem(index)
23      if level == "" then
24        break
25      end
26      table.insert(levelList, level)
27      index = index + 1
28    end
29    table.sort(levelList)
30    for k,v in pairs(levelList) do
31        item = CEGUI.createListboxTextItem(v)
32        item:setSelectionBrushImage("TaharezLook", "MultiListSelectionBrush")
33        CEGUI.toListbox(listbox):addItem(item)
34        if v .. ".oxw" == preselect then
35            listbox:setItemSelectState(item, true)
36        end
37    end
38end
39
40function P.SingleplayerStartButton_clicked(e)
41    choice = winMgr:getWindow("orxonox/SingleplayerLevelListbox"):getFirstSelectedItem()
42    if choice then
43        orxonox.LevelManager:getInstance():setDefaultLevel(choice:getText() .. ".oxw")
44        orxonox.execute("startGame")
45        hideAllGUIs()
46    end
47end
48
49function P.SingleplayerBackButton_clicked(e)
50    hideGUI(P.filename)
51end
52
53return P
54
Note: See TracBrowser for help on using the repository browser.