mirror of
https://github.com/HowestDAE/dae16-VerhulstBram.git
synced 2025-12-16 04:21:48 +01:00
47 lines
957 B
C++
47 lines
957 B
C++
#pragma once
|
|
#include "Level.h"
|
|
#include "Texture.h"
|
|
#include "WorldLevel.h"
|
|
#include "WorldTile.h"
|
|
#include <array>
|
|
|
|
#include "Collision.h"
|
|
#include "Player.h"
|
|
#include "utils.h"
|
|
|
|
|
|
class WorldLevel : public Level {
|
|
public:
|
|
static const int WORLD_WIDTH = 34;
|
|
static const int WORLD_HEIGHT = 34;
|
|
|
|
static const int TILE_WIDTH = 50;
|
|
static const int TILE_HEIGHT = 50;
|
|
|
|
WorldLevel(Camera* camera);
|
|
~WorldLevel() override;
|
|
|
|
void Update(float elapsedSec) override;
|
|
void Draw() const override;
|
|
|
|
void MouseMove(const Point2f& mousePos) override;
|
|
void ProcessImGui() override;
|
|
|
|
WorldTile* GetTileAt(const Point2f& pos) const;
|
|
void SetTileAt(const Point2f& pos, WorldTile* tile);
|
|
|
|
std::array<std::array<WorldTile*, WORLD_WIDTH>, WORLD_HEIGHT> GetAllTiles() const;
|
|
|
|
std::vector<Collision::CollisionRect> m_Rects;
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
std::array<std::array<WorldTile*, WORLD_WIDTH>, WORLD_HEIGHT> m_worldTiles;
|
|
|
|
Player m_player;
|
|
Point2f m_mousePos{};
|
|
};
|