From 3b537e109df901df3da4c706f827c8d3d39a7238 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 24 Jun 2012 19:34:08 +0300 Subject: Add basic support for eathena stable. Can register, create char, connect to map server and get map info. --- src/gui/editserverdialog.cpp | 31 +++++++++++++++++++++++++++++++ src/gui/editserverdialog.h | 8 ++++++++ src/gui/serverdialog.cpp | 13 +++++++++++++ 3 files changed, 52 insertions(+) (limited to 'src/gui') 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,9 +43,18 @@ 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,10 +138,21 @@ 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: @@ -199,10 +219,21 @@ 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,10 +51,18 @@ 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 /** 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,11 +71,18 @@ 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: @@ -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: -- cgit v1.2.3-60-g2f50