#pragma once #include "botcraft/Game/Vector3.hpp" #include "botcraft/AI/TemplatedBehaviourClient.hpp" /// @brief Example of a class where we inherit /// TemplatedBehaviourClient, with this class as parameter. /// We can then use Behaviour Trees with this class as /// context, and do our stuff. We also override on Handle function class CommandClient : public Botcraft::TemplatedBehaviourClient { public: CommandClient(const bool use_renderer_); ~CommandClient(); protected: #if PROTOCOL_VERSION < 759 /* < 1.19 */ // virtual void Handle(ProtocolCraft::ClientboundChatPacket& msg) override; #else // virtual void Handle(ProtocolCraft::ClientboundPlayerChatPacket& msg) override; // virtual void Handle(ProtocolCraft::ClientboundSystemChatPacket& msg) override; #endif // void ProcessChatMsg(const std::vector& splitted_msg); // Check for any spawnable blocks in a sphere from pos and prints // all the positions into a file // Use check_lighting to add a check on light block value (> 7) // (warning: ignore top slabs and upside-down stairs, // you should check for such blocks manually) // void CheckPerimeter(const Botcraft::Position& pos, const float radius, const bool check_lighting); };