summaryrefslogtreecommitdiff
path: root/src/elogin/send.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/send.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/send.c')
-rw-r--r--src/elogin/send.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/elogin/send.c b/src/elogin/send.c
new file mode 100644
index 0000000..396c314
--- /dev/null
+++ b/src/elogin/send.c
@@ -0,0 +1,47 @@
+// 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 "elogin/config.h"
+#include "elogin/send.h"
+
+void send_server_version(int fd)
+{
+ WFIFOHEAD(fd, 4 + 8);
+ WFIFOW(fd, 0) = 0x7531;
+ WFIFOW(fd, 2) = 4 + 8;
+ WFIFOL(fd, 4) = 0; // unused
+ WFIFOL(fd, 8) = 6; // server version
+ WFIFOSET(fd, WFIFOW(fd,2));
+}
+
+void send_update_host(int fd)
+{
+ if (!update_server)
+ return;
+ const int sz = strlen(update_server);
+ WFIFOHEAD(fd, sz + 4);
+ WFIFOW(fd, 0) = 0x63;
+ WFIFOW(fd, 2) = sz + 4;
+ memcpy(WFIFOP (fd, 4), update_server, sz);
+ WFIFOSET(fd, sz + 4);
+}
+
+void send_char_password_change_ack(int fd, int accoundId, char status)
+{
+ WFIFOHEAD(fd, 7);
+ WFIFOW(fd, 0) = 0x5001;
+ WFIFOL(fd, 2) = accoundId;
+ WFIFOB(fd, 6) = status;
+ WFIFOSET(fd, 7);
+}