From f8de6e16f2fd5905d7dd8fffb7763861045c48b4 Mon Sep 17 00:00:00 2001
From: Andrei Karas <akaras@inbox.ru>
Date: Wed, 20 May 2015 17:33:35 +0300
Subject: eathena: impliment packet CMSG_GUILD_ALLIANCE_REQUEST.

---
 src/net/ea/guildhandler.cpp      |  5 -----
 src/net/ea/guildhandler.h        |  3 ---
 src/net/eathena/guildhandler.cpp | 11 +++++++++++
 src/net/eathena/guildhandler.h   |  2 ++
 src/net/guildhandler.h           |  3 +--
 src/net/tmwa/guildhandler.cpp    |  4 ++++
 src/net/tmwa/guildhandler.h      |  2 ++
 7 files changed, 20 insertions(+), 10 deletions(-)

(limited to 'src')

diff --git a/src/net/ea/guildhandler.cpp b/src/net/ea/guildhandler.cpp
index 0326ad82b..020897193 100644
--- a/src/net/ea/guildhandler.cpp
+++ b/src/net/ea/guildhandler.cpp
@@ -60,11 +60,6 @@ GuildHandler::~GuildHandler()
     delete2(guildTab);
 }
 
-void GuildHandler::requestAlliance(const int guildId A_UNUSED,
-                                   const int otherGuildId A_UNUSED) const
-{
-}
-
 void GuildHandler::requestAllianceResponse(const int guildId A_UNUSED,
                                            const int otherGuildId A_UNUSED,
                                            const bool response A_UNUSED) const
diff --git a/src/net/ea/guildhandler.h b/src/net/ea/guildhandler.h
index 0485e5cfc..6a8b78fbd 100644
--- a/src/net/ea/guildhandler.h
+++ b/src/net/ea/guildhandler.h
@@ -42,9 +42,6 @@ class GuildHandler notfinal : public Net::GuildHandler
 
         virtual ~GuildHandler();
 
-        void requestAlliance(const int guildId,
-                             const int otherGuildId) const override final;
-
         void requestAllianceResponse(const int guildId, const int otherGuildId,
                                      const bool response) const override final;
 
diff --git a/src/net/eathena/guildhandler.cpp b/src/net/eathena/guildhandler.cpp
index 4fbf4ca58..609ae9182 100644
--- a/src/net/eathena/guildhandler.cpp
+++ b/src/net/eathena/guildhandler.cpp
@@ -450,4 +450,15 @@ void GuildHandler::processGuildEmblem(Net::MessageIn &msg)
     msg.readInt16("emblem id");
 }
 
+void GuildHandler::requestAlliance(const Being *const being) const
+{
+    if (!being)
+        return;
+
+    createOutPacket(CMSG_GUILD_ALLIANCE_REQUEST);
+    outMsg.writeInt32(being->getId(), "account id");
+    outMsg.writeInt32(0, "inviter account id");
+    outMsg.writeInt32(0, "inviter char id");
+}
+
 }  // namespace EAthena
diff --git a/src/net/eathena/guildhandler.h b/src/net/eathena/guildhandler.h
index c4436fa98..c1678484f 100644
--- a/src/net/eathena/guildhandler.h
+++ b/src/net/eathena/guildhandler.h
@@ -70,6 +70,8 @@ class GuildHandler final : public Ea::GuildHandler, public MessageHandler
 
         void checkMaster() const override final;
 
+        void requestAlliance(const Being *const being) const override final;
+
     protected:
         static void processGuildUpdateCoords(Net::MessageIn &msg);
 
diff --git a/src/net/guildhandler.h b/src/net/guildhandler.h
index e68bac19c..31c225e03 100644
--- a/src/net/guildhandler.h
+++ b/src/net/guildhandler.h
@@ -61,8 +61,7 @@ class GuildHandler notfinal
         virtual void changeMemberPostion(const GuildMember *const member,
                                          const int level) const = 0;
 
-        virtual void requestAlliance(const int guildId,
-                                     const int otherGuildId) const = 0;
+        virtual void requestAlliance(const Being *const being) const = 0;
 
         virtual void requestAllianceResponse(const int guildId,
                                              int const otherGuildId,
diff --git a/src/net/tmwa/guildhandler.cpp b/src/net/tmwa/guildhandler.cpp
index 4947f99da..cc3dd3c2f 100644
--- a/src/net/tmwa/guildhandler.cpp
+++ b/src/net/tmwa/guildhandler.cpp
@@ -421,4 +421,8 @@ void GuildHandler::processGuildExpulsionList(Net::MessageIn &msg)
     }
 }
 
+void GuildHandler::requestAlliance(const Being *const being A_UNUSED) const
+{
+}
+
 }  // namespace TmwAthena
diff --git a/src/net/tmwa/guildhandler.h b/src/net/tmwa/guildhandler.h
index 8c875ec1c..1dbbd3d2e 100644
--- a/src/net/tmwa/guildhandler.h
+++ b/src/net/tmwa/guildhandler.h
@@ -70,6 +70,8 @@ class GuildHandler final : public Ea::GuildHandler, public MessageHandler
 
         void checkMaster() const override final;
 
+        void requestAlliance(const Being *const being) const override final;
+
     protected:
         static void processGuildPositionInfo(Net::MessageIn &msg);
 
-- 
cgit v1.2.3-70-g09d2