diff --git a/src/Battling/Models/ExecutingAttack.hpp b/src/Battling/Models/ExecutingAttack.hpp index 0ece7cd..07f97c0 100644 --- a/src/Battling/Models/ExecutingAttack.hpp +++ b/src/Battling/Models/ExecutingAttack.hpp @@ -60,25 +60,25 @@ namespace CreatureLib::Battling { virtual ~ExecutingAttack() noexcept = default; - HitData& GetHitData(Creature* creature, uint8_t hit) { + HitData& GetHitData(ArbUt::BorrowedPtr creature, uint8_t hit) { for (uint8_t i = 0; i < _targetCount; i++) { if (_targets[i] == creature) { - return _hits[(i * _numberHits + hit) * sizeof(HitData)]; + return _hits[i * _numberHits + hit]; } } THROW_CREATURE("Invalid target requested."); } - HitData* GetTargetIteratorBegin(Creature* creature) { + HitData* GetTargetIteratorBegin(ArbUt::BorrowedPtr creature) { for (uint8_t i = 0; i < _targetCount; i++) { if (_targets[i] == creature) { - return &_hits[i * _numberHits * sizeof(HitData)]; + return &_hits[i * _numberHits]; } } THROW_CREATURE("Invalid target requested."); } - bool IsCreatureTarget(Creature* creature) noexcept { + bool IsCreatureTarget(ArbUt::BorrowedPtr creature) noexcept { for (uint8_t i = 0; i < _targetCount; i++) { if (_targets[i] == creature) { return true;