]> git.localhorst.tv Git - blank.git/blobdiff - src/server/ClientConnection.hpp
server: notify clients of player joins/parts
[blank.git] / src / server / ClientConnection.hpp
index 4927d1ce831fb9ab26c15cbeb68db9826b3c497c..1a781c5dd6ad5dea7f88b033e4648bed6aee4550 100644 (file)
@@ -19,7 +19,7 @@
 
 namespace blank {
 
-class CompositeModel;
+class Model;
 
 namespace server {
 
@@ -57,9 +57,11 @@ public:
        ChunkIndex &PlayerChunks() noexcept { return input->GetPlayer().GetChunks(); }
        const ChunkIndex &PlayerChunks() const noexcept { return input->GetPlayer().GetChunks(); }
 
-       void SetPlayerModel(const CompositeModel &) noexcept;
+       void SetPlayerModel(const Model &) noexcept;
        bool HasPlayerModel() const noexcept;
-       const CompositeModel &GetPlayerModel() const noexcept;
+       const Model &GetPlayerModel() const noexcept;
+
+       bool ChunkInRange(const glm::ivec3 &) const noexcept;
 
 private:
        struct SpawnStatus {
@@ -81,6 +83,7 @@ private:
        void On(const Packet::Login &) override;
        void On(const Packet::Part &) override;
        void On(const Packet::PlayerUpdate &) override;
+       void On(const Packet::Message &) override;
 
        bool CanSpawn(const Entity &) const noexcept;
        bool CanDespawn(const Entity &) const noexcept;
@@ -98,7 +101,7 @@ private:
        Server &server;
        Connection conn;
        std::unique_ptr<DirectInput> input;
-       const CompositeModel *player_model;
+       const Model *player_model;
        std::list<SpawnStatus> spawns;
        unsigned int confirm_wait;