OpenFusion/src/NPCManager.hpp

33 lines
866 B
C++
Raw Normal View History

#pragma once
2020-08-19 22:21:35 +00:00
#include "CNProtocol.hpp"
2020-08-20 21:43:48 +00:00
#include "PlayerManager.hpp"
#include "NPC.hpp"
2020-08-19 22:21:35 +00:00
#include <map>
#include <vector>
2020-08-19 22:21:35 +00:00
#define RESURRECT_HEIGHT 400
// this should really be called vec3 or something...
struct WarpLocation {
int x, y, z;
};
2020-08-19 22:21:35 +00:00
namespace NPCManager {
2020-08-20 21:43:48 +00:00
extern std::map<int32_t, BaseNPC> NPCs;
extern std::map<int32_t, WarpLocation> Warps;
extern std::vector<WarpLocation> RespawnPoints;
2020-08-19 22:21:35 +00:00
void init();
void npcBarkHandler(CNSocket* sock, CNPacketData* data);
void npcSummonHandler(CNSocket* sock, CNPacketData* data);
void npcWarpHandler(CNSocket* sock, CNPacketData* data);
void npcVendorStart(CNSocket* sock, CNPacketData* data);
void npcVendorTable(CNSocket* sock, CNPacketData* data);
void npcVendorBuy(CNSocket* sock, CNPacketData* data);
void updatePlayerNPCS(CNSocket* sock, PlayerView& plr);
2020-08-19 22:21:35 +00:00
}