fix possible crash when reading border style, fix onLogin event
This commit is contained in:
parent
b56a7e3029
commit
f056131ae1
3
TODO
3
TODO
|
@ -1,14 +1,11 @@
|
|||
====================================================
|
||||
High priority TODO in order (before first public disclose)
|
||||
|
||||
restore map moving
|
||||
multiline text edit
|
||||
remove UIGame
|
||||
move windows, navigate in containers
|
||||
complete miniwindow (close, minimize, resize, move)
|
||||
create and bind all game functions/events
|
||||
let windows stay open while playing
|
||||
combat controls
|
||||
player status icons (poison, etc)
|
||||
load modules from zip files
|
||||
display exit box when exiting from game
|
||||
|
|
|
@ -122,8 +122,11 @@ void UIWidget::parseBaseStyle(const OTMLNodePtr& styleNode)
|
|||
setFixedSize(node->value<bool>());
|
||||
else if(node->tag() == "border") {
|
||||
auto split = Fw::split(node->value(), " ");
|
||||
setBorderWidth(Fw::safeCast<int>(split[0]));
|
||||
setBorderColor(Fw::safeCast<Color>(split[1]));
|
||||
if(split.size() == 2) {
|
||||
setBorderWidth(Fw::safeCast<int>(split[0]));
|
||||
setBorderColor(Fw::safeCast<Color>(split[1]));
|
||||
} else
|
||||
throw OTMLException(node, "border param must have its width followed by its color");
|
||||
}
|
||||
else if(node->tag() == "border-width")
|
||||
setBorderWidth(node->value<int>());
|
||||
|
|
|
@ -1111,7 +1111,7 @@ ThingPtr ProtocolGame::internalGetThing(InputMessage& msg)
|
|||
creature->setDirection(direction);
|
||||
|
||||
// now that the local player is known, we can schedule login event
|
||||
if(creature == m_localPlayer) {
|
||||
if(creature == m_localPlayer && !m_localPlayer->isKnown()) {
|
||||
m_localPlayer->setKnown(true);
|
||||
g_dispatcher.addEvent([] { g_game.processLogin(); });
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue