1 #ifndef BLANK_SERVER_SERVER_HPP
2 #define BLANK_SERVER_SERVER_HPP
4 #include "../app/Config.hpp"
5 #include "../world/WorldManipulator.hpp"
19 class ClientConnection;
22 : public WorldManipulator {
25 Server(const Config::Network &, World &, const WorldSave &);
32 UDPsocket &GetSocket() noexcept { return serv_sock; }
33 UDPpacket &GetPacket() noexcept { return serv_pack; }
35 World &GetWorld() noexcept { return world; }
36 const WorldSave &GetWorldSave() noexcept { return save; }
38 void SetPlayerModel(const CompositeModel &) noexcept;
39 bool HasPlayerModel() const noexcept;
40 const CompositeModel &GetPlayerModel() const noexcept;
42 void SetBlock(Chunk &, int, const Block &) override;
45 void HandlePacket(const UDPpacket &);
47 ClientConnection &GetClient(const IPaddress &);
52 std::list<ClientConnection> clients;
55 const WorldSave &save;
56 const CompositeModel *player_model;