diff --git a/include/InteractionComponent.h b/include/InteractionComponent.h index 2de6e0b..68adb5a 100644 --- a/include/InteractionComponent.h +++ b/include/InteractionComponent.h @@ -4,6 +4,7 @@ #include "Entity.h" #include +#include class InteractionComponent : public Component { @@ -12,7 +13,7 @@ public: ~InteractionComponent(); void init() override; - void update() override; + void update(); bool interact(Entity* interactor, Entity* interactee); diff --git a/src/InteractionComponent.cpp b/src/InteractionComponent.cpp index 4cb28a8..03ace7b 100644 --- a/src/InteractionComponent.cpp +++ b/src/InteractionComponent.cpp @@ -44,18 +44,18 @@ Entity* InteractionComponent::findClosestEntity(std::vector& entities, auto isInDirection = getDirectionalCheck(direction, interactorT); entities.erase(std::remove_if(entities.begin(), entities.end(), [&](Entity* e){ - auto& entityT = entity->getComponent(); + auto& entityT = e->getComponent(); return !isInDirection(entityT) || !isEntityCloseEnough(interactorT, entityT, direction); }), entities.end()); for(auto e : entities) { - auto& entityT = entity->getComponent(); + auto& entityT = e->getComponent(); float distance = calculateDistance(interactorT.position, entityT.position); if (distance < closestDistance) { closestDistance = distance; - closestEntity = entity; + closestEntity = e; } }