Program Listing for File Tilemap.hpp¶
↰ Return to documentation for file (gui/API/TileMap/Tilemap.hpp)
#pragma once
#include "API/Inventory/Inventory.hpp"
#include "Tile.hpp"
#include <vector>
class Tilemap {
private:
int _sizeX = 0;
int _sizeY = 0;
std::vector<std::vector<Tile>> _tilemap;
public:
Tilemap()
{
_tilemap.clear();
_tilemap.resize(0);
_sizeX = 0;
_sizeY = 0;
}
~Tilemap() = default;
std::pair<int, int> GetSize() const;
[[nodiscard]] std::vector<std::vector<Tile>> GetTilemap();
void SetSize(int x, int y);
void SetTileInventory(
int x,
int y,
size_t food,
size_t linemate,
size_t deraumere,
size_t sibur,
size_t mendiane,
size_t phiras,
size_t thystame);
void AddToInventory(int x, int y, Item item, int quantity);
[[nodiscard]] Inventory GetTileInventory(int x, int y);
[[nodiscard]] int GetItemQuantity(Item id);
};