renderd7/source/Sheet.cpp

22 lines
655 B
C++
Raw Permalink Normal View History

2024-02-19 19:20:37 +01:00
#include <renderd7/Sheet.hpp>
#include <renderd7/internal_db.hpp>
2024-02-19 19:20:37 +01:00
Result RenderD7::Sheet::Load(const std::string& path) {
2024-06-13 22:13:17 +02:00
if (this->spritesheet) Free();
2024-02-19 19:20:37 +01:00
this->spritesheet = C2D_SpriteSheetLoad(path.c_str());
if (!this->spritesheet) {
_rd7i_logger()->Write("Failed to Load Spritesheet from: " + path, 0);
}
2024-02-19 19:20:37 +01:00
return 0;
}
void RenderD7::Sheet::Free() {
if (!this->spritesheet) return;
2024-02-19 19:20:37 +01:00
C2D_SpriteSheetFree(this->spritesheet);
this->spritesheet = nullptr;
}
2024-06-13 22:13:17 +02:00
C2D_Image RenderD7::Sheet::GetImage(int idx) {
if (!this->spritesheet) return {nullptr, nullptr};
return C2D_SpriteSheetGetImage(this->spritesheet, idx);
2024-06-13 22:13:17 +02:00
}