|
|
@ -67,8 +67,11 @@ namespace gui { |
|
|
|
"item in inventory UI doesn't exist in world. New level?"); |
|
|
|
"item in inventory UI doesn't exist in world. New level?"); |
|
|
|
auto& sprite = $level.world->get<components::Sprite>(item); |
|
|
|
auto& sprite = $level.world->get<components::Sprite>(item); |
|
|
|
$gui.set_init<guecs::Sprite>(id, {sprite.name}); |
|
|
|
$gui.set_init<guecs::Sprite>(id, {sprite.name}); |
|
|
|
$gui.set<guecs::GrabSource>(id, { |
|
|
|
|
|
|
|
item, [&, id]() { return remove_slot(id); }}); |
|
|
|
guecs::GrabSource grabber{ |
|
|
|
|
|
|
|
item, [&, id]() { return remove_slot(id); }}; |
|
|
|
|
|
|
|
grabber.setSprite($gui, id); |
|
|
|
|
|
|
|
$gui.set<guecs::GrabSource>(id, grabber); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
$gui.set<guecs::DropTarget>(id, { |
|
|
|
$gui.set<guecs::DropTarget>(id, { |
|
|
|
[&, id](DinkyECS::Entity world_entity) -> bool { return place_slot(id, world_entity); } |
|
|
|
[&, id](DinkyECS::Entity world_entity) -> bool { return place_slot(id, world_entity); } |
|
|
|