tibia-client/modules/game/game.lua

59 lines
1.3 KiB
Lua
Raw Normal View History

2011-08-30 17:12:57 +02:00
require 'textmessage'
2011-09-02 06:29:00 +02:00
require 'vip'
2011-08-30 17:12:57 +02:00
-- private functions
local function onGameKeyPress(self, keyCode, keyChar, keyboardModifiers)
if keyboardModifiers == KeyboardCtrlModifier then
if keyCode == KeyG then
CharacterList.show()
return true
elseif keyCode == KeyQ then
2011-08-30 01:20:30 +02:00
Game.logout(false)
return true
end
end
return false
end
local function createMainInterface()
2011-08-30 17:12:57 +02:00
Game.gameUi = loadUI('/game/ui/gameinterface.otui', UI.root)
Game.gameMapUi = Game.gameUi:getChildById('gameMap')
Game.gameUi.onKeyPress = onGameKeyPress
2011-09-02 06:29:00 +02:00
2011-09-04 19:21:42 +02:00
createTextInterface()
2011-09-02 06:29:00 +02:00
createVipWindow()
2011-08-29 05:44:02 +02:00
end
local function destroyMainInterface()
2011-08-31 01:39:14 +02:00
if Game.gameUi then
2011-08-30 17:12:57 +02:00
Game.gameUi:destroy()
Game.gameUi = nil
end
end
2011-08-29 20:38:01 +02:00
-- public functions
function Game.onLogin()
MainMenu.hide()
CharacterList.destroyLoadBox()
createMainInterface()
2011-08-29 05:44:02 +02:00
end
2011-08-30 01:20:30 +02:00
function Game.onLoginError(message)
CharacterList.destroyLoadBox()
local errorBox = displayErrorBox("Login Error", "Login error: " .. message)
errorBox.onOk = CharacterList.show
end
2011-08-29 20:38:01 +02:00
function Game.onConnectionError(message)
CharacterList.destroyLoadBox()
local errorBox = displayErrorBox("Login Error", "Connection error: " .. message)
errorBox.onOk = CharacterList.show
end
2011-08-29 05:44:02 +02:00
function Game.onLogout()
MainMenu.show()
2011-08-30 01:20:30 +02:00
CharacterList.show()
destroyMainInterface()
2011-08-29 05:44:02 +02:00
end