summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/eathena/mail2handler.cpp10
-rw-r--r--src/net/eathena/mail2handler.h2
-rw-r--r--src/net/eathena/packetsout.inc2
-rw-r--r--src/net/mail2handler.h2
-rw-r--r--src/net/tmwa/mail2handler.cpp4
-rw-r--r--src/net/tmwa/mail2handler.h2
6 files changed, 22 insertions, 0 deletions
diff --git a/src/net/eathena/mail2handler.cpp b/src/net/eathena/mail2handler.cpp
index f6a3c88ca..550d5f6c1 100644
--- a/src/net/eathena/mail2handler.cpp
+++ b/src/net/eathena/mail2handler.cpp
@@ -20,6 +20,10 @@
#include "net/eathena/mail2handler.h"
+#include "net/eathena/messageout.h"
+#include "net/eathena/updateprotocol.h"
+#include "net/eathena/protocolout.h"
+
#include "debug.h"
namespace EAthena
@@ -35,4 +39,10 @@ Mail2Handler::~Mail2Handler()
mail2Handler = nullptr;
}
+void Mail2Handler::openWriteMail(const std::string &receiver) const
+{
+ createOutPacket(CMSG_MAIL2_OPEN_WRITE_MAIL);
+ outMsg.writeString(receiver, 24, "receiver name");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/mail2handler.h b/src/net/eathena/mail2handler.h
index 41004c72c..66bc11c44 100644
--- a/src/net/eathena/mail2handler.h
+++ b/src/net/eathena/mail2handler.h
@@ -34,6 +34,8 @@ class Mail2Handler final : public Net::Mail2Handler
A_DELETE_COPY(Mail2Handler)
~Mail2Handler();
+
+ void openWriteMail(const std::string &receiver) const override final;
};
} // namespace EAthena
diff --git a/src/net/eathena/packetsout.inc b/src/net/eathena/packetsout.inc
index 92c986755..3cbc29988 100644
--- a/src/net/eathena/packetsout.inc
+++ b/src/net/eathena/packetsout.inc
@@ -317,6 +317,7 @@ packet(CMSG_BOOKING_REGISTER_REQ, 0x0000, 0, nullptr);
packet(CMSG_BOOKING_SEARCH_REQ, 0x0000, 0, nullptr);
packet(CMSG_BOOKING_DELETE_REQ, 0x0000, 0, nullptr);
packet(CMSG_BOOKING_UPDATE_REQ, 0x0000, 0, nullptr);
+packet(CMSG_MAIL2_OPEN_WRITE_MAIL, 0x0000, 0, nullptr);
#else
// 20040713
if (packetVersion >= 20040713)
@@ -1374,6 +1375,7 @@ if (packetVersion == 20140416)
packet(CMSG_SKILL_USE_BEING, 0x083c, 10, clif->pUseSkillToId);
packet(CMSG_STORAGE_PASSWORD, 0x095c, 36, clif->pStoragePassword);
packet(CMSG_NAME_REQUEST, 0x096a, 6, clif->pGetCharNameRequest);
+ packet(CMSG_MAIL2_OPEN_WRITE_MAIL, 0x0a08, 26, clif->pRodexOpenWriteMail);
}
// 20140605
diff --git a/src/net/mail2handler.h b/src/net/mail2handler.h
index 41fc17d57..ad6d2d88c 100644
--- a/src/net/mail2handler.h
+++ b/src/net/mail2handler.h
@@ -38,6 +38,8 @@ class Mail2Handler notfinal
virtual ~Mail2Handler()
{ }
+
+ virtual void openWriteMail(const std::string &receiver) const = 0;
};
} // namespace Net
diff --git a/src/net/tmwa/mail2handler.cpp b/src/net/tmwa/mail2handler.cpp
index 51d530c3a..2175a5bd3 100644
--- a/src/net/tmwa/mail2handler.cpp
+++ b/src/net/tmwa/mail2handler.cpp
@@ -35,4 +35,8 @@ Mail2Handler::~Mail2Handler()
mail2Handler = nullptr;
}
+void Mail2Handler::openWriteMail(const std::string &receiver A_UNUSED) const
+{
+}
+
} // namespace TmwAthena
diff --git a/src/net/tmwa/mail2handler.h b/src/net/tmwa/mail2handler.h
index f130a1822..7842d101c 100644
--- a/src/net/tmwa/mail2handler.h
+++ b/src/net/tmwa/mail2handler.h
@@ -34,6 +34,8 @@ class Mail2Handler final : public Net::Mail2Handler
A_DELETE_COPY(Mail2Handler)
~Mail2Handler();
+
+ void openWriteMail(const std::string &receiver) const override final;
};
} // namespace TmwAthena