diff --git a/include/guecs/sfml/components.hpp b/include/guecs/sfml/components.hpp index 1b87999..593f5f4 100644 --- a/include/guecs/sfml/components.hpp +++ b/include/guecs/sfml/components.hpp @@ -103,6 +103,7 @@ namespace guecs { sf::Color color=THEME.BG_COLOR; shared_ptr shape = nullptr; shared_ptr sprite = nullptr; + shared_ptr texture = nullptr; Background(lel::Parser& parser, sf::Color bg_color=THEME.BG_COLOR) : x(parser.grid_x), diff --git a/src/guecs/sfml/components.cpp b/src/guecs/sfml/components.cpp index 7bb6f9c..dba17b1 100644 --- a/src/guecs/sfml/components.cpp +++ b/src/guecs/sfml/components.cpp @@ -158,7 +158,8 @@ namespace guecs { auto sprite_texture = BACKEND->get_sprite(name); sf::IntRect rect{{0,0},sprite_texture.frame_size}; - sprite = make_shared(*sprite_texture.texture, rect); + texture = sprite_texture.texture; + sprite = make_shared(*texture, rect); sprite->setPosition({float(x), float(y)});