]> git.localhorst.tv Git - blank.git/blobdiff - src/server/ClientConnection.hpp
split input handling
[blank.git] / src / server / ClientConnection.hpp
index 99657de3642d262b70dbdcee5504e32efb66680b..2089dd17c8eec85a7acf7e6e7d3d930f03946a5f 100644 (file)
@@ -47,13 +47,13 @@ public:
        /// send the previously prepared packet of non-default length
        std::uint16_t Send(std::size_t len);
 
-       void AttachPlayer(const Player &);
+       void AttachPlayer(Player &);
        void DetachPlayer();
-       bool HasPlayer() const noexcept { return player.entity; }
-       Entity &PlayerEntity() noexcept { return *player.entity; }
-       const Entity &PlayerEntity() const noexcept { return *player.entity; }
-       ChunkIndex &PlayerChunks() noexcept { return *player.chunks; }
-       const ChunkIndex &PlayerChunks() const noexcept { return *player.chunks; }
+       bool HasPlayer() const noexcept { return player; }
+       Entity &PlayerEntity() noexcept { return player->GetEntity(); }
+       const Entity &PlayerEntity() const noexcept { return player->GetEntity(); }
+       ChunkIndex &PlayerChunks() noexcept { return player->GetChunks(); }
+       const ChunkIndex &PlayerChunks() const noexcept { return player->GetChunks(); }
 
        void SetPlayerModel(const CompositeModel &) noexcept;
        bool HasPlayerModel() const noexcept;
@@ -95,7 +95,7 @@ private:
 private:
        Server &server;
        Connection conn;
-       Player player;
+       Player *player;
        const CompositeModel *player_model;
        std::list<SpawnStatus> spawns;
        unsigned int confirm_wait;