#include "ChunkReceiver.hpp"
#include "NetworkedInput.hpp"
+#include "../app/ChatState.hpp"
#include "../app/IntervalTimer.hpp"
#include "../audio/SoundBank.hpp"
#include "../graphics/SkyBox.hpp"
class InteractiveState
: public State
-, public ClientController {
+, public ClientController
+, public ChatState::Responder {
public:
explicit InteractiveState(MasterState &, std::uint32_t player_id);
void Handle(const Packet::EntityUpdate &);
void Handle(const Packet::PlayerCorrection &);
void Handle(const Packet::BlockUpdate &);
+ void Handle(const Packet::Message &);
void SetAudio(bool) override;
void SetVideo(bool) override;
void SetDebug(bool) override;
void Exit() override;
+ void OnLineSubmit(const std::string &) override;
+
private:
/// flag entity as updated by given packet
/// returns false if the update should be ignored
};
std::map<std::uint32_t, UpdateStatus> update_status;
+ ChatState chat;
+
};
}