#pragma once #include "Collision.h" #include "Level.h" #include "Player.h" #include "utils.h" #include "GridSystem/WorldGridManager.h" #include "Gui/Screen.h" class WorldLevel : public Level { public: WorldLevel(Camera* camera, Rectf viewport); ~WorldLevel() override; WorldLevel(const WorldLevel& other) = default; WorldLevel(WorldLevel&& other) = default; void Update(float elapsedSec) override; void Draw() const override; void MouseMove(const Point2f& mousePos) override; void ProcessImGui() override; WorldGridManager& GetGridManager() { return m_gridManager; } std::vector m_Rects; private: WorldGridManager m_gridManager {}; Player m_player; Point2f m_mousePos {}; Rectf m_viewport; Screen m_screen; // ImGui Vars bool m_ShowTextureManagerWindow { false }; bool m_ShowCameraWindow { false }; bool m_ShowPlayerInfo { true }; };