diff options
| author | ilotterytea <iltsu@alright.party> | 2025-02-01 22:11:28 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2025-02-01 22:11:28 +0500 |
| commit | 860773932a67fa0a30c5943336bef6e0be0414a1 (patch) | |
| tree | bc3bc08027d4ace29587d414bbead409596f5afa /src/tileset.cpp | |
| parent | c89db32c69c2ca3db059193591ec910d45fbbcc3 (diff) | |
feat: select a tile
Diffstat (limited to 'src/tileset.cpp')
| -rw-r--r-- | src/tileset.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/tileset.cpp b/src/tileset.cpp index 8651a8f..5e5b47a 100644 --- a/src/tileset.cpp +++ b/src/tileset.cpp @@ -1,5 +1,7 @@ #include "tileset.hpp" +#include <memory> + namespace silly::editor { void Tileset::add_tile(const std::string &path, TilesetTileType type) { TilesetTile tile; @@ -11,18 +13,19 @@ namespace silly::editor { return; } - this->tiles.push_back(tile); + this->tiles.push_back(std::make_shared<TilesetTile>(tile)); } void Tileset::remove_tile(const TilesetTile &tile) { this->tiles.resize(std::distance( this->tiles.begin(), - std::remove_if( - this->tiles.begin(), this->tiles.end(), - [&tile](const TilesetTile &t) { return t.id == tile.id; }))); + std::remove_if(this->tiles.begin(), this->tiles.end(), + [&tile](const std::shared_ptr<TilesetTile> &t) { + return t.get()->id == tile.id; + }))); } - const std::vector<TilesetTile> &Tileset::get_tiles() const { + const std::vector<std::shared_ptr<TilesetTile>> &Tileset::get_tiles() const { return this->tiles; } }
\ No newline at end of file |
