summaryrefslogtreecommitdiff
path: root/src/elogin/init.c
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-07-04 22:37:51 +0300
committerAndrei Karas <akaras@inbox.ru>2015-07-04 22:37:51 +0300
commit58b8c8d8cb9f78537495f908887fea9d0a451637 (patch)
tree74438cc91f5c5a6a7a953c98aa52106eb88b250f /src/elogin/init.c
parent857c86d93ebd68e5edbbe14ce26a16a967622822 (diff)
downloadevol-hercules-58b8c8d8cb9f78537495f908887fea9d0a451637.tar.gz
evol-hercules-58b8c8d8cb9f78537495f908887fea9d0a451637.tar.bz2
evol-hercules-58b8c8d8cb9f78537495f908887fea9d0a451637.tar.xz
evol-hercules-58b8c8d8cb9f78537495f908887fea9d0a451637.zip
Rename login/char/map dirs to elogin/echar/emap for avoid conflicts with hercules.
Diffstat (limited to 'src/elogin/init.c')
-rw-r--r--src/elogin/init.c59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/elogin/init.c b/src/elogin/init.c
new file mode 100644
index 0000000..6105b3b
--- /dev/null
+++ b/src/elogin/init.c
@@ -0,0 +1,59 @@
+// Copyright (c) Copyright (c) Hercules Dev Team, licensed under GNU GPL.
+// Copyright (c) 2014 Evol developers
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "common/HPMi.h"
+#include "common/malloc.h"
+#include "common/mmo.h"
+#include "common/socket.h"
+#include "common/strlib.h"
+#include "login/login.h"
+
+#include "ecommon/init.h"
+#include "elogin/config.h"
+#include "elogin/login.h"
+#include "elogin/parse.h"
+
+#include "common/HPMDataCheck.h" /* should always be the last file included! (if you don't make it last, it'll intentionally break compile time) */
+
+HPExport struct hplugin_info pinfo =
+{
+ "evol_login",
+ SERVER_TYPE_LOGIN,
+ "0.1",
+ HPM_VERSION
+};
+
+HPExport void plugin_init (void)
+{
+ interfaces_init_common();
+
+ login = GET_SYMBOL("login");
+
+ addPacket(0x7530, 22, login_parse_version, hpParse_Login);
+ addPacket(0x027c, 95, elogin_parse_client_login2, hpParse_Login);
+ addPacket(0x5000, 54, elogin_parse_change_paassword, hpParse_FromChar);
+ addHookPre("login->parse_client_login", elogin_parse_client_login_pre);
+ addHookPre("login->parse_request_connection", elogin_parse_request_connection);
+ addHookPre("login->check_password", elogin_check_password);
+ addHookPre("login->parse_ping", elogin_parse_ping);
+}
+
+HPExport void server_preinit (void)
+{
+ iMalloc = GET_SYMBOL("iMalloc");
+ addLoginConf("update_server", config_update_server);
+ addLoginConf("inter_server_ip", config_inter_server_ip);
+}
+
+HPExport void server_online (void)
+{
+}
+
+HPExport void plugin_final (void)
+{
+ config_final();
+}