Decompile fn_17678 (WorldScene::FindActorInCell)

Batch #1912 by eAthena: 0 byte-identical, 1 confirmed by peer review.

- fn_17678 WorldScene::FindActorInCell: logic confirmed by peer review

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-10-28 23:39:00 +00:00
commit edd5a4a066

View file

@ -34,6 +34,18 @@ void UpdateWorldProximityNotification(
}
// OFFSET: 0x00AC8A40
// FUNCTION: fn_17678
bool WorldScene::FindActorInCell(const float* position, std::function<bool(std::uint32_t)> predicate) const {
const float key = static_cast<float>(this->terrain->width) * position[1] + position[0];
const auto found = this->actorCells.find(key);
if (found == this->actorCells.end()) {
return false;
}
const std::list<std::uint32_t>& ids = found->second;
return std::find_if(ids.begin(), ids.end(), predicate) != ids.end();
}
// OFFSET: 0x00ACA180
// FUNCTION: fn_17689