#include #include #include #include #include #include namespace Scop { Sprite::Sprite(std::shared_ptr texture) { Verify((bool)texture, "Sprite: invalid texture"); m_uuid = UUID(); p_mesh = CreateQuad(0, 0, texture->GetWidth(), texture->GetHeight()); p_texture = texture; if(p_script) p_script->OnInit(this); } Sprite::Sprite(std::uint64_t uuid, std::shared_ptr texture) { Verify((bool)texture, "Sprite: invalid texture"); m_uuid = uuid; p_mesh = CreateQuad(0, 0, texture->GetWidth(), texture->GetHeight()); p_texture = texture; if(p_script) p_script->OnInit(this); } void Sprite::Update(NonOwningPtr scene, Inputs& input, float delta) { if(p_script) p_script->OnUpdate(scene, this, input, delta); } Sprite::~Sprite() { if(p_script) p_script->OnQuit(this); } }