#ifndef BLANK_CLIENT_CLIENTSTATE_HPP_
#define BLANK_CLIENT_CLIENTSTATE_HPP_
-#include "InitialState.hpp"
-#include "InteractiveState.hpp"
#include "../app/State.hpp"
-#include "../net/Client.hpp"
#include "../net/ConnectionHandler.hpp"
+#include "Client.hpp"
+#include "InitialState.hpp"
+#include "InteractiveState.hpp"
+#include "../app/Config.hpp"
+
+#include <map>
#include <memory>
public:
MasterState(
Environment &,
- const World::Config &,
- const Interface::Config &,
- const Client::Config &
+ Config &,
+ const World::Config &
);
Client &GetClient() noexcept { return client; }
Environment &GetEnv() noexcept { return env; }
+ Config &GetConfig() noexcept { return config; }
+ const Config &GetConfig() const noexcept { return config; }
+
World::Config &GetWorldConf() noexcept { return world_conf; }
const World::Config &GetWorldConf() const noexcept { return world_conf; }
- const Interface::Config &GetInterfaceConf() const noexcept { return intf_conf; }
- const Client::Config &GetClientConf() const noexcept { return client_conf; }
void Quit();
void On(const Packet::Join &) override;
void On(const Packet::Part &) override;
+ void On(const Packet::SpawnEntity &) override;
+ void On(const Packet::DespawnEntity &) override;
+ void On(const Packet::EntityUpdate &) override;
+ void On(const Packet::PlayerCorrection &) override;
+ void On(const Packet::ChunkBegin &) override;
+ void On(const Packet::ChunkData &) override;
+ void On(const Packet::BlockUpdate &) override;
+ void On(const Packet::Message &) override;
private:
Environment &env;
+ Config &config;
World::Config world_conf;
- const Interface::Config &intf_conf;
- const Client::Config &client_conf;
std::unique_ptr<InteractiveState> state;
Client client;