summaryrefslogtreecommitdiff
path: root/src/net/ea/npchandler.h
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-03-31 15:11:26 -0600
committerJared Adams <jaxad0127@gmail.com>2009-03-31 15:11:26 -0600
commit37432edac65a6b85c7a3414a421f2afd3e67a14e (patch)
treea4dc561371fab9d1800aec72960d7f86a1e88135 /src/net/ea/npchandler.h
parent2c5f308192d18b5447a5b0e2ee3428984c1f1b78 (diff)
downloadmana-37432edac65a6b85c7a3414a421f2afd3e67a14e.tar.gz
mana-37432edac65a6b85c7a3414a421f2afd3e67a14e.tar.bz2
mana-37432edac65a6b85c7a3414a421f2afd3e67a14e.tar.xz
mana-37432edac65a6b85c7a3414a421f2afd3e67a14e.zip
Add first draft of net handlers
eAthena NPC handler has been implemented and is being used for NPC interraction.
Diffstat (limited to 'src/net/ea/npchandler.h')
-rw-r--r--src/net/ea/npchandler.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/net/ea/npchandler.h b/src/net/ea/npchandler.h
index 8c252175..71e15e02 100644
--- a/src/net/ea/npchandler.h
+++ b/src/net/ea/npchandler.h
@@ -23,13 +23,36 @@
#define NET_EA_NPCHANDLER_H
#include "net/messagehandler.h"
+#include "net/net.h"
-class NPCHandler : public MessageHandler
+class NPCHandler : public MessageHandler, public Net::NpcHandler
{
public:
NPCHandler();
void handleMessage(MessageIn &msg);
+
+ void talk(int npcId);
+
+ void nextDialog(int npcId);
+
+ void closeDialog(int npcId);
+
+ void listInput(int npcId, int value);
+
+ void integerInput(int npcId, int value);
+
+ void stringInput(int npcId, const std::string &value);
+
+ void buy(int beingId);
+
+ void sell(int beingId);
+
+ void buyItem(int beingId, int itemId, int amount);
+
+ void sellItem(int beingId, int itemId, int amount);
};
+extern NPCHandler *npcHandler;
+
#endif // NET_EA_NPCHANDLER_H