diff --git a/modules/game_hotkeys/hotkeys_manager.lua b/modules/game_hotkeys/hotkeys_manager.lua index 3e122453..b6dbaa0d 100644 --- a/modules/game_hotkeys/hotkeys_manager.lua +++ b/modules/game_hotkeys/hotkeys_manager.lua @@ -18,8 +18,8 @@ currentHotkeysList = nil hotkeyLabelSelectedOnList = nil currentItemPreview = nil itemWidget = nil -addHotkey = nil -removeHotkey = nil +addHotkeyButton = nil +removeHotkeyButton = nil hotkeyText = nil hotKeyTextLabel = nil sendAutomatically = nil @@ -43,8 +43,8 @@ function init() currentHotkeysList = hotkeysWindow:getChildById('currentHotkeys') currentItemPreview = hotkeysWindow:getChildById('itemPreview') - addHotkey = hotkeysWindow:getChildById('addHotkey') - removeHotkey = hotkeysWindow:getChildById('removeHotkey') + addHotkeyButton = hotkeysWindow:getChildById('addHotkeyButton') + removeHotkeyButton = hotkeysWindow:getChildById('removeHotkeyButton') hotkeyText = hotkeysWindow:getChildById('hotkeyText') hotKeyTextLabel = hotkeysWindow:getChildById('hotKeyTextLabel') sendAutomatically = hotkeysWindow:getChildById('sendAutomatically') @@ -164,7 +164,7 @@ function onChooseItemMouseRelease(self, mousePosition, mouseButton) hotkeyLabelSelectedOnList.itemId = item:getId() changeUseType(HOTKEY_MANAGER_USEONSELF) checkSelectedHotkey(hotkeyLabelSelectedOnList) - HotkeysManager:show() + show() end g_mouse.restoreCursor() @@ -182,7 +182,7 @@ function startChooseItem() mouseGrabberWidget:grabMouse() g_mouse.setTargetCursor() - HotkeysManager:hide() + hide() end function clearObject() @@ -314,7 +314,7 @@ function checkSelectedHotkey(focused) hotkeyLabelSelectedOnList = focused if hotkeyLabelSelectedOnList ~= nil then - removeHotkey:enable() + removeHotkeyButton:enable() if hotkeyLabelSelectedOnList.itemId == nil then hotkeyText:enable() @@ -347,7 +347,7 @@ function checkSelectedHotkey(focused) changeUseType(hotkeyLabelSelectedOnList.useType) else hotkeyText:clearText() - removeHotkey:disable() + removeHotkeyButton:disable() hotkeyText:disable() sendAutomatically:disable() sendAutomatically:setChecked(false) diff --git a/modules/game_hotkeys/hotkeys_manager.otui b/modules/game_hotkeys/hotkeys_manager.otui index f8f0e45d..89c69c25 100644 --- a/modules/game_hotkeys/hotkeys_manager.otui +++ b/modules/game_hotkeys/hotkeys_manager.otui @@ -13,8 +13,8 @@ MainWindow !text: tr('Hotkeys') size: 340 460 - @onEnter: hide() - @onEscape: hide() + @onEnter: modules.game_hotkeys.hide() + @onEscape: modules.game_hotkeys.hide() Label id: currentHotkeysLabel @@ -50,23 +50,23 @@ MainWindow margin-top: 10 Button - id: addHotkey + id: addHotkeyButton !text: tr('Add') width: 64 anchors.left: parent.left anchors.top: prev.bottom margin-top: 2 - @onClick: addHotkey() + @onClick: modules.game_hotkeys.addHotkey() Button - id: removeHotkey + id: removeHotkeyButton !text: tr('Remove') width: 64 enabled: false anchors.left: prev.right anchors.top: prev.top margin-left: 10 - @onClick: removeHotkey() + @onClick: modules.game_hotkeys.removeHotkey() Label id: hotKeyTextLabel @@ -84,7 +84,7 @@ MainWindow anchors.right: parent.right anchors.top: prev.bottom margin-bottom: 2 - @onTextChange: onHotkeyTextChange(self:getId(), self:getText()) + @onTextChange: modules.game_hotkeys.onHotkeyTextChange(self:getId(), self:getText()) CheckBox id: sendAutomatically @@ -94,7 +94,7 @@ MainWindow anchors.top: prev.bottom enabled:false margin-top: 10 - @onCheckChange: setSendAutomatically(self:isChecked()) + @onCheckChange: modules.game_hotkeys.setSendAutomatically(self:isChecked()) Item id: itemPreview @@ -111,7 +111,7 @@ MainWindow anchors.left: prev.right anchors.top: prev.top margin-left: 10 - @onClick: startChooseItem() + @onClick: modules.game_hotkeys.startChooseItem() Button id: clearObjectButton @@ -122,7 +122,7 @@ MainWindow anchors.right: prev.right anchors.top: prev.bottom margin-top: 2 - @onClick: clearObject() + @onClick: modules.game_hotkeys.clearObject() ButtonBox id: useOnSelf @@ -134,7 +134,7 @@ MainWindow anchors.top: selectObjectButton.top checked: false margin-left: 10 - @onCheckChange: changeUseType(HOTKEY_MANAGER_USEONSELF, self:isChecked()) + @onCheckChange: modules.game_hotkeys.changeUseType(HOTKEY_MANAGER_USEONSELF, self:isChecked()) ButtonBox id: useOnTarget @@ -146,7 +146,7 @@ MainWindow anchors.top: prev.bottom checked: false margin-top: 2 - @onCheckChange: changeUseType(HOTKEY_MANAGER_USEONTARGET, self:isChecked()) + @onCheckChange: modules.game_hotkeys.changeUseType(HOTKEY_MANAGER_USEONTARGET, self:isChecked()) ButtonBox id: useWith @@ -158,11 +158,11 @@ MainWindow anchors.top: prev.bottom checked: false margin-top: 2 - @onCheckChange: changeUseType(HOTKEY_MANAGER_USEWITH, self:isChecked()) + @onCheckChange: modules.game_hotkeys.changeUseType(HOTKEY_MANAGER_USEWITH, self:isChecked()) Button !text: tr('Close') width: 64 anchors.right: parent.right anchors.bottom: parent.bottom - @onClick: hide() + @onClick: modules.game_hotkeys.hide() diff --git a/modules/game_textmessage/textmessage.lua b/modules/game_textmessage/textmessage.lua index 77e2ac6f..561a680b 100644 --- a/modules/game_textmessage/textmessage.lua +++ b/modules/game_textmessage/textmessage.lua @@ -12,8 +12,8 @@ MessageSettings = { } MessageTypes = { - [MessageModes.MonsterSay] = MessageSettings.orange, - [MessageModes.MonsterYell] = MessageSettings.orange, + [MessageModes.MonsterSay] = MessageSettings.consoleOrange, + [MessageModes.MonsterYell] = MessageSettings.consoleOrange, [MessageModes.Failure] = MessageSettings.statusSmall, [MessageModes.Login] = MessageSettings.bottomWhite, [MessageModes.Game] = MessageSettings.centerWhite, @@ -31,7 +31,6 @@ messagesPanel = nil function init() connect(g_game, 'onTextMessage', displayMessage) - connect(g_game, 'onPrivateTalk', onPrivateTalk) connect(g_game, 'onGameEnd', clearMessages) messagesPanel = g_ui.loadUI('textmessage.otui', modules.game_interface.getRootPanel()) end diff --git a/modules/game_viplist/addvip.otui b/modules/game_viplist/addvip.otui index 3ffeddad..bc88a2ab 100644 --- a/modules/game_viplist/addvip.otui +++ b/modules/game_viplist/addvip.otui @@ -1,8 +1,8 @@ MainWindow size: 256 128 !text: tr('Add to VIP list') - @onEnter: addVip() - @onEscape: destroyAddWindow() + @onEnter: modules.game_viplist.addVip() + @onEscape: modules.game_viplist.destroyAddWindow() Label !text: tr('Please enter a character name:') @@ -29,11 +29,11 @@ MainWindow anchors.right: next.left anchors.bottom: parent.bottom margin-right: 10 - @onClick: addVip() + @onClick: modules.game_viplist.addVip() Button !text: tr('Cancel') width: 64 anchors.right: parent.right anchors.bottom: parent.bottom - @onClick: destroyAddWindow() + @onClick: modules.game_viplist.destroyAddWindow() diff --git a/modules/game_viplist/viplist.lua b/modules/game_viplist/viplist.lua index 781a5d7f..42e9fbc8 100644 --- a/modules/game_viplist/viplist.lua +++ b/modules/game_viplist/viplist.lua @@ -11,6 +11,7 @@ function init() g_keyboard.bindKeyDown('Ctrl+P', toggle) vipWindow = g_ui.loadUI('viplist.otui', modules.game_interface.getRightPanel()) + vipWindow.onClose = onMiniWindowClose vipButton = TopMenu.addRightGameToggleButton('vipListButton', tr('VIP list') .. ' (Ctrl+P)', 'viplist.png', toggle) vipButton:setOn(true) @@ -71,6 +72,7 @@ function onAddVip(id, name, online) local vipList = vipWindow:getChildById('contentsPanel') local label = g_ui.createWidget('VipListLabel') + label.onMousePress = onVipListLabelMousePress label:setId('vip' .. id) label:setText(name) diff --git a/modules/game_viplist/viplist.otui b/modules/game_viplist/viplist.otui index 11ca1992..22ef225c 100644 --- a/modules/game_viplist/viplist.otui +++ b/modules/game_viplist/viplist.otui @@ -1,17 +1,15 @@ VipListLabel < GameLabel font: verdana-11px-monochrome phantom: false - &onMousePress: onVipListLabelMousePress MiniWindow id: vipWindow !text: tr('VIP List') height: 100 icon: viplist.png - @onClose: onMiniWindowClose() &save: true MiniWindowContents layout: verticalBox anchors.fill: parent - &onMousePress: onVipListMousePress + @onMousePress: onVipListMousePress() diff --git a/src/framework/core/module.cpp b/src/framework/core/module.cpp index 458a5e05..fd772ed4 100644 --- a/src/framework/core/module.cpp +++ b/src/framework/core/module.cpp @@ -39,6 +39,12 @@ bool Module::load() return true; try { + // add to package.loaded + g_lua.getGlobalField("package", "loaded"); + g_lua.getRef(m_sandboxEnv); + g_lua.setField(m_name); + g_lua.pop(); + for(const std::string& depName : m_dependencies) { ModulePtr dep = g_modules.getModule(depName); if(!dep) @@ -70,15 +76,15 @@ bool Module::load() if(m_sandboxed) g_lua.resetGlobalEnvironment(); - // add to package.loaded + m_loaded = true; + g_logger.debug(stdext::format("Loaded module '%s'", m_name)); + } catch(stdext::exception& e) { + // remove from package.loaded g_lua.getGlobalField("package", "loaded"); - g_lua.getRef(m_sandboxEnv); + g_lua.pushNil(); g_lua.setField(m_name); g_lua.pop(); - m_loaded = true; - g_logger.debug(stdext::format("Loaded module '%s'", m_name)); - } catch(stdext::exception& e) { if(m_sandboxed) g_lua.resetGlobalEnvironment(); g_logger.error(stdext::format("Unable to load module '%s': %s", m_name, e.what()));