diff options
author | Eugenio Favalli <elvenprogrammer@gmail.com> | 2006-08-02 09:43:57 +0000 |
---|---|---|
committer | Eugenio Favalli <elvenprogrammer@gmail.com> | 2006-08-02 09:43:57 +0000 |
commit | 25fe73f89756cb4102f97bcccdb8635a6a56f35d (patch) | |
tree | 12f6737acba4927f49f7d7b676467fe301a2a430 /src/gui | |
parent | 2ae843719c2a7b2325309404a0e3cbb4aeb9c3df (diff) | |
download | mana-25fe73f89756cb4102f97bcccdb8635a6a56f35d.tar.gz mana-25fe73f89756cb4102f97bcccdb8635a6a56f35d.tar.bz2 mana-25fe73f89756cb4102f97bcccdb8635a6a56f35d.tar.xz mana-25fe73f89756cb4102f97bcccdb8635a6a56f35d.zip |
Ported account registration to tmwserv. There's still a disconnection/reconnection between registration and login.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/char_select.cpp | 14 | ||||
-rw-r--r-- | src/gui/char_select.h | 7 | ||||
-rw-r--r-- | src/gui/register.cpp | 20 | ||||
-rw-r--r-- | src/gui/register.h | 1 |
4 files changed, 24 insertions, 18 deletions
diff --git a/src/gui/char_select.cpp b/src/gui/char_select.cpp index 934988f4..27b5b55a 100644 --- a/src/gui/char_select.cpp +++ b/src/gui/char_select.cpp @@ -70,10 +70,9 @@ void CharDeleteConfirm::action(const std::string &eventId, gcn::Widget *widget) } CharSelectDialog::CharSelectDialog(Network *network, - LockedArray<LocalPlayer*> *charInfo, - unsigned char sex): + LockedArray<LocalPlayer*> *charInfo): Window("Select Character"), mNetwork(network), - mCharInfo(charInfo), mSex(sex), mCharSelected(false) + mCharInfo(charInfo), mCharSelected(false) { mSelectButton = new Button("Ok", "ok", this); mCancelButton = new Button("Cancel", "cancel", this); @@ -86,7 +85,7 @@ CharSelectDialog::CharSelectDialog(Network *network, mLevelLabel = new gcn::Label("Level"); mJobLevelLabel = new gcn::Label("Job Level"); mMoneyLabel = new gcn::Label("Money"); - mPlayerBox = new PlayerBox(sex); + mPlayerBox = new PlayerBox(0); int w = 195; int h = 220; @@ -149,7 +148,7 @@ void CharSelectDialog::action(const std::string &eventId, gcn::Widget *widget) { // Start new character dialog mCharInfo->lock(); - new CharCreateDialog(this, mCharInfo->getPos(), mNetwork, mSex); + new CharCreateDialog(this, mCharInfo->getPos(), mNetwork); mCharInfo->unlock(); } } @@ -228,8 +227,7 @@ void CharSelectDialog::logic() updatePlayerInfo(); } -CharCreateDialog::CharCreateDialog(Window *parent, int slot, Network *network, - unsigned char sex): +CharCreateDialog::CharCreateDialog(Window *parent, int slot, Network *network): Window("Create Character", true, parent), mNetwork(network), mSlot(slot) { mNameField = new TextField(""); @@ -242,7 +240,7 @@ CharCreateDialog::CharCreateDialog(Window *parent, int slot, Network *network, mHairStyleLabel = new gcn::Label("Hair Style:"); mCreateButton = new Button("Create", "create", this); mCancelButton = new Button("Cancel", "cancel", this); - mPlayerBox = new PlayerBox(sex); + mPlayerBox = new PlayerBox(0); mPlayerBox->mShowPlayer = true; mNameField->setEventId("create"); diff --git a/src/gui/char_select.h b/src/gui/char_select.h index 20105516..3bf9911e 100644 --- a/src/gui/char_select.h +++ b/src/gui/char_select.h @@ -48,8 +48,7 @@ class CharSelectDialog : public Window, public gcn::ActionListener * Constructor. */ CharSelectDialog(Network *network, - LockedArray<LocalPlayer*> *charInfo, - unsigned char sex); + LockedArray<LocalPlayer*> *charInfo); void action(const std::string& eventId, gcn::Widget* widget); @@ -75,7 +74,6 @@ class CharSelectDialog : public Window, public gcn::ActionListener PlayerBox *mPlayerBox; - unsigned char mSex; bool mCharSelected; /** @@ -100,8 +98,7 @@ class CharCreateDialog : public Window, public gcn::ActionListener /** * Constructor. */ - CharCreateDialog(Window *parent, int slot, Network *network, - unsigned char sex); + CharCreateDialog(Window *parent, int slot, Network *network); void action(const std::string& eventId, gcn::Widget* widget); diff --git a/src/gui/register.cpp b/src/gui/register.cpp index 38136b87..82e5f716 100644 --- a/src/gui/register.cpp +++ b/src/gui/register.cpp @@ -50,10 +50,12 @@ RegisterDialog::RegisterDialog(LoginData *loginData): gcn::Label *userLabel = new gcn::Label("Name:"); gcn::Label *passwordLabel = new gcn::Label("Password:"); gcn::Label *confirmLabel = new gcn::Label("Confirm:"); + gcn::Label *emailLabel = new gcn::Label("Email:"); gcn::Label *serverLabel = new gcn::Label("Server:"); mUserField = new TextField("player"); mPasswordField = new PasswordField(); mConfirmField = new PasswordField(); + mEmailField = new TextField(); mServerField = new TextField(); mMaleButton = new RadioButton("Male", "sex", true); mFemaleButton = new RadioButton("Female", "sex", false); @@ -61,7 +63,7 @@ RegisterDialog::RegisterDialog(LoginData *loginData): mCancelButton = new Button("Cancel", "cancel", this); int width = 200; - int height = 150; + int height = 170; setContentSize(width, height); mUserField->setPosition(65, 5); @@ -72,17 +74,21 @@ RegisterDialog::RegisterDialog(LoginData *loginData): mConfirmField->setPosition( 65, mPasswordField->getY() + mPasswordField->getHeight() + 7); mConfirmField->setWidth(130); + mEmailField->setPosition( + 65, mConfirmField->getY() + mConfirmField->getHeight() + 7); + mEmailField->setWidth(130); mServerField->setPosition( - 65, 23 + mConfirmField->getY() + mConfirmField->getHeight() + 7); + 65, 23 + mEmailField->getY() + mEmailField->getHeight() + 7); mServerField->setWidth(130); userLabel->setPosition(5, mUserField->getY() + 1); passwordLabel->setPosition(5, mPasswordField->getY() + 1); confirmLabel->setPosition(5, mConfirmField->getY() + 1); + emailLabel->setPosition(5, mEmailField->getY() + 1); serverLabel->setPosition(5, mServerField->getY() + 1); mFemaleButton->setPosition(width - mFemaleButton->getWidth() - 10, - mConfirmField->getY() + mConfirmField->getHeight() + 7); + mEmailField->getY() + mEmailField->getHeight() + 7); mMaleButton->setPosition(mFemaleButton->getX() - mMaleButton->getWidth() - 5, mFemaleButton->getY()); @@ -92,11 +98,13 @@ RegisterDialog::RegisterDialog(LoginData *loginData): add(userLabel); add(passwordLabel); + add(emailLabel); add(serverLabel); add(confirmLabel); add(mUserField); add(mPasswordField); add(mConfirmField); + add(mEmailField); add(mServerField); add(mMaleButton); add(mFemaleButton); @@ -176,6 +184,8 @@ RegisterDialog::action(const std::string &eventId, gcn::Widget *widget) error = 2; } + // TODO: Check if a valid email address was given + if (error > 0) { if (error == 1) @@ -202,9 +212,9 @@ RegisterDialog::action(const std::string &eventId, gcn::Widget *widget) mLoginData->port = (short)config.getValue("port", 0); mLoginData->username = mUserField->getText(); mLoginData->password = mPasswordField->getText(); - mLoginData->username += mFemaleButton->isMarked() ? "_F" : "_M"; + mLoginData->email = mEmailField->getText(); - state = ACCOUNT_STATE; + state = REGISTER_ACCOUNT_STATE; } } } diff --git a/src/gui/register.h b/src/gui/register.h index 5d3f6cd5..30dacd3e 100644 --- a/src/gui/register.h +++ b/src/gui/register.h @@ -65,6 +65,7 @@ class RegisterDialog : public Window, public gcn::ActionListener { gcn::TextField *mUserField; gcn::TextField *mPasswordField; gcn::TextField *mConfirmField; + gcn::TextField *mEmailField; gcn::TextField *mServerField; gcn::Button *mRegisterButton; |