diff options
-rw-r--r-- | src/net/ea/charserverhandler.cpp | 38 | ||||
-rw-r--r-- | src/net/ea/charserverhandler.h | 8 | ||||
-rw-r--r-- | src/net/eathena/charserverhandler.cpp | 40 | ||||
-rw-r--r-- | src/net/eathena/charserverhandler.h | 8 | ||||
-rw-r--r-- | src/net/tmwa/charserverhandler.cpp | 40 | ||||
-rw-r--r-- | src/net/tmwa/charserverhandler.h | 8 |
6 files changed, 96 insertions, 46 deletions
diff --git a/src/net/ea/charserverhandler.cpp b/src/net/ea/charserverhandler.cpp index 15bcb135a..e142fe27d 100644 --- a/src/net/ea/charserverhandler.cpp +++ b/src/net/ea/charserverhandler.cpp @@ -61,44 +61,6 @@ void CharServerHandler::setCharSelectDialog(CharSelectDialog *const window) updateCharSelectDialog(); } -void CharServerHandler::setCharCreateDialog(CharCreateDialog *const window) -{ - mCharCreateDialog = window; - - if (!mCharCreateDialog) - return; - - StringVect attributes; - // TRANSLATORS: playe stat - attributes.push_back(_("Strength:")); - // TRANSLATORS: playe stat - attributes.push_back(_("Agility:")); - // TRANSLATORS: playe stat - attributes.push_back(_("Vitality:")); - // TRANSLATORS: playe stat - attributes.push_back(_("Intelligence:")); - // TRANSLATORS: playe stat - attributes.push_back(_("Dexterity:")); - // TRANSLATORS: playe stat - attributes.push_back(_("Luck:")); - - const Token &token = - static_cast<LoginHandler*>(Net::getLoginHandler())->getToken(); - - int minStat = CharDB::getMinStat(); - if (!minStat) - minStat = 1; - int maxStat = CharDB::getMaxStat(); - if (!maxStat) - maxStat = 9; - int sumStat = CharDB::getSumStat(); - if (!sumStat) - sumStat = 30; - - mCharCreateDialog->setAttributes(attributes, sumStat, minStat, maxStat); - mCharCreateDialog->setFixedGender(true, token.sex); -} - void CharServerHandler::requestCharacters() { connect(); diff --git a/src/net/ea/charserverhandler.h b/src/net/ea/charserverhandler.h index ce5443753..c9b324c5b 100644 --- a/src/net/ea/charserverhandler.h +++ b/src/net/ea/charserverhandler.h @@ -44,14 +44,6 @@ class CharServerHandler notfinal : public Net::CharServerHandler virtual void setCharSelectDialog(CharSelectDialog *const window) override final; - /** - * Sets the character create dialog. The handler will clean up this - * dialog when a new character is succesfully created, and will unlock - * the dialog when a new character failed to be created. - */ - virtual void setCharCreateDialog(CharCreateDialog *const window) - override final; - virtual void requestCharacters() override final; virtual unsigned int baseSprite() const override final A_WARN_UNUSED; diff --git a/src/net/eathena/charserverhandler.cpp b/src/net/eathena/charserverhandler.cpp index d7d7be582..e353d970e 100644 --- a/src/net/eathena/charserverhandler.cpp +++ b/src/net/eathena/charserverhandler.cpp @@ -44,9 +44,11 @@ #include "resources/iteminfo.h" +#include "resources/db/chardb.h" #include "resources/db/itemdb.h" #include "utils/dtor.h" +#include "utils/gettext.h" #include "debug.h" @@ -291,6 +293,44 @@ void CharServerHandler::connect() mNetwork->skip(4); } +void CharServerHandler::setCharCreateDialog(CharCreateDialog *const window) +{ + mCharCreateDialog = window; + + if (!mCharCreateDialog) + return; + + StringVect attributes; + // TRANSLATORS: playe stat + attributes.push_back(_("Strength:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Agility:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Vitality:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Intelligence:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Dexterity:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Luck:")); + + const Token &token = + static_cast<LoginHandler*>(Net::getLoginHandler())->getToken(); + + int minStat = CharDB::getMinStat(); + if (!minStat) + minStat = 1; + int maxStat = CharDB::getMaxStat(); + if (!maxStat) + maxStat = 9; + int sumStat = CharDB::getSumStat(); + if (!sumStat) + sumStat = 30; + + mCharCreateDialog->setAttributes(attributes, sumStat, minStat, maxStat); + mCharCreateDialog->setFixedGender(true, token.sex); +} + void CharServerHandler::processCharLogin(Net::MessageIn &msg) { msg.skip(2, "packet len"); diff --git a/src/net/eathena/charserverhandler.h b/src/net/eathena/charserverhandler.h index d14c82cb7..cd14660ed 100644 --- a/src/net/eathena/charserverhandler.h +++ b/src/net/eathena/charserverhandler.h @@ -68,6 +68,14 @@ class CharServerHandler final : public MessageHandler, void setNewPincode(const std::string &pin) override final; + /** + * Sets the character create dialog. The handler will clean up this + * dialog when a new character is succesfully created, and will unlock + * the dialog when a new character failed to be created. + */ + void setCharCreateDialog(CharCreateDialog *const window) + override final; + protected: void readPlayerData(Net::MessageIn &msg, Net::Character *const character, diff --git a/src/net/tmwa/charserverhandler.cpp b/src/net/tmwa/charserverhandler.cpp index 3fed3b568..b9997320a 100644 --- a/src/net/tmwa/charserverhandler.cpp +++ b/src/net/tmwa/charserverhandler.cpp @@ -44,9 +44,11 @@ #include "resources/iteminfo.h" +#include "resources/db/chardb.h" #include "resources/db/itemdb.h" #include "utils/dtor.h" +#include "utils/gettext.h" #include "debug.h" @@ -335,6 +337,44 @@ void CharServerHandler::connect() mNetwork->skip(4); } +void CharServerHandler::setCharCreateDialog(CharCreateDialog *const window) +{ + mCharCreateDialog = window; + + if (!mCharCreateDialog) + return; + + StringVect attributes; + // TRANSLATORS: playe stat + attributes.push_back(_("Strength:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Agility:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Vitality:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Intelligence:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Dexterity:")); + // TRANSLATORS: playe stat + attributes.push_back(_("Luck:")); + + const Token &token = + static_cast<LoginHandler*>(Net::getLoginHandler())->getToken(); + + int minStat = CharDB::getMinStat(); + if (!minStat) + minStat = 1; + int maxStat = CharDB::getMaxStat(); + if (!maxStat) + maxStat = 9; + int sumStat = CharDB::getSumStat(); + if (!sumStat) + sumStat = 30; + + mCharCreateDialog->setAttributes(attributes, sumStat, minStat, maxStat); + mCharCreateDialog->setFixedGender(true, token.sex); +} + void CharServerHandler::processCharLogin(Net::MessageIn &msg) { BLOCK_START("CharServerHandler::processCharLogin") diff --git a/src/net/tmwa/charserverhandler.h b/src/net/tmwa/charserverhandler.h index b8cb5182e..0fd6f1f93 100644 --- a/src/net/tmwa/charserverhandler.h +++ b/src/net/tmwa/charserverhandler.h @@ -69,6 +69,14 @@ class CharServerHandler final : public MessageHandler, void setNewPincode(const std::string &pin A_UNUSED) override final { } + /** + * Sets the character create dialog. The handler will clean up this + * dialog when a new character is succesfully created, and will unlock + * the dialog when a new character failed to be created. + */ + void setCharCreateDialog(CharCreateDialog *const window) + override final; + protected: void readPlayerData(Net::MessageIn &msg, Net::Character *const character, |