Implement/match LegoPathController::AddActor and RemoveActor (#915)

* Implement/match LegoPathController::AddActor and RemoveActor

* Fix types
This commit is contained in:
Christian Semmler
2024-05-13 06:46:59 -04:00
committed by GitHub
parent 91fe09af3c
commit 5f34d2e877
14 changed files with 145 additions and 69 deletions

View File

@@ -431,19 +431,19 @@ MxU32 LegoPathActor::VTable0x6c(
Vector3& p_v3
)
{
LegoAnimPresenterSet* laps = p_boundary->GetPresenters();
LegoAnimPresenterSet& laps = p_boundary->GetPresenters();
for (LegoAnimPresenterSet::iterator itap = laps->begin(); itap != laps->end(); itap++) {
for (LegoAnimPresenterSet::iterator itap = laps.begin(); itap != laps.end(); itap++) {
if ((*itap)->VTable0x94(p_v1, p_v2, p_f1, p_f2, p_v3)) {
return 1;
}
}
LegoPathActorSet* plpas = p_boundary->GetActors();
LegoPathActorSet lpas(*plpas);
LegoPathActorSet& plpas = p_boundary->GetActors();
LegoPathActorSet lpas(plpas);
for (LegoPathActorSet::iterator itpa = lpas.begin(); itpa != lpas.end(); itpa++) {
if (plpas->find(*itpa) != plpas->end()) {
if (plpas.find(*itpa) != plpas.end()) {
LegoPathActor* actor = *itpa;
if (this != actor && !(actor->GetState() & 0x100)) {