7#ifndef BABA_IS_AUTO_MAP_HPP
8#define BABA_IS_AUTO_MAP_HPP
19using Position = std::pair<std::size_t, std::size_t>;
35 Map(std::size_t width, std::size_t height);
51 void Load(std::string_view filename);
75 const Object&
At(std::size_t x, std::size_t y)
const;
83 std::size_t m_width = 0;
84 std::size_t m_height = 0;
86 std::vector<Object> m_initObjects;
87 std::vector<Object> m_objects;
Map class.
Definition Map.hpp:27
void AddObject(std::size_t x, std::size_t y, ObjectType type)
void RemoveObject(std::size_t x, std::size_t y, ObjectType type)
Map()=default
Default constructor.
std::size_t GetHeight() const
void Reset()
Resets map data.
Object & At(std::size_t x, std::size_t y)
std::size_t GetWidth() const
const Object & At(std::size_t x, std::size_t y) const
Map(std::size_t width, std::size_t height)
std::vector< Position > GetPositions(ObjectType type) const
void Load(std::string_view filename)
Object class.
Definition Object.hpp:32
ObjectType
An enumerator for identifying the object.
Definition GameEnums.hpp:14
std::pair< std::size_t, std::size_t > Position
A zero-based (x, y) map position.
Definition Map.hpp:19