diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-06-24 19:34:08 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-06-24 21:41:20 +0300 |
commit | 3b537e109df901df3da4c706f827c8d3d39a7238 (patch) | |
tree | ae5a83f71954aaeb45ce3f8d609e6f4a8dc0678c /src/gui | |
parent | 4ef35e9ef757da1db724c5d784048601144c934c (diff) | |
download | manaplus-3b537e109df901df3da4c706f827c8d3d39a7238.tar.gz manaplus-3b537e109df901df3da4c706f827c8d3d39a7238.tar.bz2 manaplus-3b537e109df901df3da4c706f827c8d3d39a7238.tar.xz manaplus-3b537e109df901df3da4c706f827c8d3d39a7238.zip |
Add basic support for eathena stable.
Can register, create char, connect to map server and get map info.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/editserverdialog.cpp | 31 | ||||
-rw-r--r-- | src/gui/editserverdialog.h | 8 | ||||
-rw-r--r-- | src/gui/serverdialog.cpp | 13 |
3 files changed, 52 insertions, 0 deletions
diff --git a/src/gui/editserverdialog.cpp b/src/gui/editserverdialog.cpp index b52559ecc..0a8c3e816 100644 --- a/src/gui/editserverdialog.cpp +++ b/src/gui/editserverdialog.cpp @@ -43,10 +43,19 @@ std::string TypeListModel::getElementAt(int elementIndex) return "TmwAthena"; else if (elementIndex == 1) return "Evol"; +#ifdef EATHENA_SUPPORT + else if (elementIndex == 2) + return "eAthena"; +#ifdef MANASERV_SUPPORT + else if (elementIndex == 3) + return "ManaServ"; +#endif +#else #ifdef MANASERV_SUPPORT else if (elementIndex == 2) return "ManaServ"; #endif +#endif else return "Unknown"; } @@ -129,11 +138,22 @@ EditServerDialog::EditServerDialog(ServerDialog *parent, ServerInfo server, switch (mServer.type) { +#ifdef EATHENA_SUPPORT + case ServerInfo::EATHENA: + mTypeField->setSelected(2); + break; + case ServerInfo::MANASERV: +#ifdef MANASERV_SUPPORT + mTypeField->setSelected(3); + break; +#endif +#else case ServerInfo::MANASERV: #ifdef MANASERV_SUPPORT mTypeField->setSelected(2); break; #endif +#endif default: case ServerInfo::UNKNOWN: case ServerInfo::TMWATHENA: @@ -199,11 +219,22 @@ void EditServerDialog::action(const gcn::ActionEvent &event) case 1: mServer.type = ServerInfo::EVOL; break; +#ifdef EATHENA_SUPPORT + case 2: + mServer.type = ServerInfo::EATHENA; + break; +#ifdef MANASERV_SUPPORT + case 3: + mServer.type = ServerInfo::MANASERV; + break; +#endif +#else #ifdef MANASERV_SUPPORT case 2: mServer.type = ServerInfo::MANASERV; break; #endif +#endif default: mServer.type = ServerInfo::UNKNOWN; } diff --git a/src/gui/editserverdialog.h b/src/gui/editserverdialog.h index 4ad6b8fcb..5f7b4318d 100644 --- a/src/gui/editserverdialog.h +++ b/src/gui/editserverdialog.h @@ -51,11 +51,19 @@ class TypeListModel : public gcn::ListModel * Used to get number of line in the list */ int getNumberOfElements() +#ifdef EATHENA_SUPPORT +#ifdef MANASERV_SUPPORT + { return 4; } +#else + { return 3; } +#endif +#else #ifdef MANASERV_SUPPORT { return 3; } #else { return 2; } #endif +#endif /** * Used to get an element from the list diff --git a/src/gui/serverdialog.cpp b/src/gui/serverdialog.cpp index c2045effa..a0cfda292 100644 --- a/src/gui/serverdialog.cpp +++ b/src/gui/serverdialog.cpp @@ -71,12 +71,19 @@ static std::string serverTypeToString(ServerInfo::Type type) return "TmwAthena"; case ServerInfo::EVOL: return "Evol"; +#ifdef EATHENA_SUPPORT + case ServerInfo::EATHENA: + return "eAthena"; +#endif #ifdef MANASERV_SUPPORT case ServerInfo::MANASERV: return "ManaServ"; #else case ServerInfo::MANASERV: #endif +#ifndef EATHENA_SUPPORT + case ServerInfo::EATHENA: +#endif default: case ServerInfo::UNKNOWN: return ""; @@ -88,6 +95,12 @@ static unsigned short defaultPortForServerType(ServerInfo::Type type) switch (type) { default: + case ServerInfo::EATHENA: +#ifdef EATHENA_SUPPORT + return 6900; +#else + return 6901; +#endif case ServerInfo::UNKNOWN: case ServerInfo::TMWATHENA: case ServerInfo::EVOL: |