Files
Editor2D/libtest.cpp

62 lines
1.4 KiB
C++

#include <Tileset.hpp>
#include <Level.hpp>
#include <Entity.hpp>
#include <Layer.hpp>
void CreateSampleLevel()
{
Level level;
level.name = "Test Level";
level.author = "Automated Tooling";
level.rows = 128;
level.cols = 128;
level.tileset_path = "tileset.json";
write_file_contents("level.json", json::deparse(level.Serialize()));
}
void CreateSampleTileset()
{
// TODO: Read texture size via std_image.
Tileset tileset("tileset", "../megacommando.png", 1024, 1280, 16, 16, 0);
write_file_contents("tileset.json", json::deparse(tileset.Serialize()));
}
int main()
{
if (!std::filesystem::exists("tileset.json"))
CreateSampleTileset();
if (!std::filesystem::exists("level.json"))
CreateSampleLevel();
Tileset tileset = Tileset(std::filesystem::path("tileset.json"));
Tile specialized_tile;
specialized_tile.name = "Special Tile";
specialized_tile.id = 9999;
specialized_tile.quad = {0,0,16,16};
json::object meta;
meta["color"] = json::string("#FFAAFF");
specialized_tile.metadata = meta;
tileset.tiles.push_back(specialized_tile);
Level level = Level(std::filesystem::path("level.json"));
Layer layer(128, 128, 16, 16);
layer.binary_path = "test.lvl";
layer.ReadBinaryData();
level.layers.push_back(layer);
write_file_contents("level.json", json::deparse(level.Serialize()));
write_file_contents("tileset.json", json::deparse(tileset.Serialize()));
std::cout << "Completed all tests" << std::endl;
return 0;
}