OpenFusion/src/PlayerManager.hpp

67 lines
2.4 KiB
C++
Raw Normal View History

#pragma once
2020-08-18 20:42:30 +00:00
#include "Player.hpp"
#include "CNProtocol.hpp"
#include "CNStructs.hpp"
#include "CNShardServer.hpp"
2020-09-17 22:45:43 +00:00
#include "ChunkManager.hpp"
2020-08-18 20:42:30 +00:00
2020-09-17 22:45:43 +00:00
#include <utility>
2020-08-18 20:42:30 +00:00
#include <map>
#include <list>
struct WarpLocation;
2020-08-18 20:42:30 +00:00
namespace PlayerManager {
2020-11-17 23:16:16 +00:00
extern std::map<CNSocket*, Player*> players;
2020-08-18 20:42:30 +00:00
void init();
void addPlayer(CNSocket* key, Player plr);
void removePlayer(CNSocket* key);
2020-11-18 00:07:04 +00:00
void updatePlayerPosition(CNSocket* sock, int X, int Y, int Z, uint64_t I, int angle);
2020-09-17 22:45:43 +00:00
2020-10-12 16:55:41 +00:00
void sendPlayerTo(CNSocket* sock, int X, int Y, int Z, uint64_t I);
void sendPlayerTo(CNSocket* sock, int X, int Y, int Z);
2020-09-17 22:45:43 +00:00
void sendToViewable(CNSocket* sock, void* buf, uint32_t type, size_t size);
2020-08-18 20:42:30 +00:00
void enterPlayer(CNSocket* sock, CNPacketData* data);
void loadPlayer(CNSocket* sock, CNPacketData* data);
void movePlayer(CNSocket* sock, CNPacketData* data);
void stopPlayer(CNSocket* sock, CNPacketData* data);
void jumpPlayer(CNSocket* sock, CNPacketData* data);
void jumppadPlayer(CNSocket* sock, CNPacketData* data);
void launchPlayer(CNSocket* sock, CNPacketData* data);
void ziplinePlayer(CNSocket* sock, CNPacketData* data);
2020-08-18 20:42:30 +00:00
void movePlatformPlayer(CNSocket* sock, CNPacketData* data);
2020-09-23 04:08:51 +00:00
void moveSliderPlayer(CNSocket* sock, CNPacketData* data);
void moveSlopePlayer(CNSocket* sock, CNPacketData* data);
2020-08-18 20:42:30 +00:00
void gotoPlayer(CNSocket* sock, CNPacketData* data);
void setSpecialPlayer(CNSocket* sock, CNPacketData* data);
2020-08-19 01:34:39 +00:00
void heartbeatPlayer(CNSocket* sock, CNPacketData* data);
void revivePlayer(CNSocket* sock, CNPacketData* data);
void exitGame(CNSocket* sock, CNPacketData* data);
void setSpecialSwitchPlayer(CNSocket* sock, CNPacketData* data);
void setGMSpecialSwitchPlayer(CNSocket* sock, CNPacketData* data);
void changePlayerGuide(CNSocket *sock, CNPacketData *data);
void enterPlayerVehicle(CNSocket* sock, CNPacketData* data);
void exitPlayerVehicle(CNSocket* sock, CNPacketData* data);
2020-12-07 18:01:29 +00:00
void setFirstUseFlag(CNSocket* sock, CNPacketData* data);
Player *getPlayer(CNSocket* key);
std::string getPlayerName(Player *plr, bool id=true);
WarpLocation* getRespawnPoint(Player *plr);
bool isAccountInUse(int accountId);
void exitDuplicate(int accountId);
void setSpecialState(CNSocket* sock, CNPacketData* data);
Player *getPlayerFromID(int32_t iID);
CNSocket *getSockFromID(int32_t iID);
void sendNanoBookSubset(CNSocket *sock);
2020-08-18 20:42:30 +00:00
}