#pragma once #include "Level.h" #include "Texture.h" #include "WorldLevel.h" #include "WorldTile.h" #include #include "Collision.h" #include "Player.h" #include "utils.h" #include "WorldGridManager.h" class WorldLevel : public Level { public: WorldLevel(Camera* camera, Rectf viewport); ~WorldLevel() override; 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; // ImGui Vars bool m_ShowTextureManagerWindow{ false }; bool m_ShowCameraWindow{ false }; bool m_ShowPlayerInfo{ true }; };