Made some notes for the next bit of work.

master
Zed A. Shaw 6 days ago
parent 7b0bac4f59
commit 7db64b73c5
  1. 13
      systems.cpp

@ -317,8 +317,11 @@ void System::pickup(GameLevel &level, DinkyECS::Entity entity) {
auto player = world.get_the<Player>();
if(world.has<InventoryItem>(entity)) {
// NOTE: this might need to be a separate system so that people can leave stuff alone
auto item = world.get<InventoryItem>(entity);
auto& item_pos = world.get<Position>(entity);
level.collision->remove(item_pos.location);
world.remove<Tile>(entity);
if(world.has<ritual::JunkPile>(entity)) {
auto& pile = world.get<ritual::JunkPile>(entity);
@ -327,11 +330,13 @@ void System::pickup(GameLevel &level, DinkyECS::Entity entity) {
for(auto& junk : pile.contents) {
blanket.add(junk);
}
// NOTE: have the gui notify them that some new stuff is in the blanket
} else {
// NOTE: chests are different from say a torch, maybe 2 events or the
// GUI figures out which it is, then when you click either pick it up
// and move it or show the loot container UI
world.send<Events::GUI>(Events::GUI::LOOT, entity, item);
}
level.collision->remove(item_pos.location);
world.remove<Tile>(entity);
world.send<Events::GUI>(Events::GUI::LOOT, entity, item);
} else if(world.has<Device>(entity)) {
System::device(world, player.entity, entity);
}

Loading…
Cancel
Save