From 481da76f4d47df864d460647e905f74684be26a1 Mon Sep 17 00:00:00 2001 From: Mike Date: Sat, 11 May 2024 14:20:09 -0400 Subject: [PATCH] Match `ActorTypeIsOneOf` --- include/Actor/ActorManager.hpp | 2 +- src/00_Core/Actor/ActorManager.cpp | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/include/Actor/ActorManager.hpp b/include/Actor/ActorManager.hpp index 41d09d4a..d513df37 100644 --- a/include/Actor/ActorManager.hpp +++ b/include/Actor/ActorManager.hpp @@ -92,7 +92,7 @@ public: s32 func_ov00_020c3bb0(unk32 param1, s32 *param2); void func_ov00_020c3ce8(unk32 param1, unk32 param2); void Actor_vfunc_28(); - static bool ActorTypeIsOneOf(u32 type, ActorTypeId *types); + static bool ActorTypeIsOneOf(char *type,char **types); }; extern ActorManager *gActorManager; diff --git a/src/00_Core/Actor/ActorManager.cpp b/src/00_Core/Actor/ActorManager.cpp index 66c431c4..9e4d2b88 100644 --- a/src/00_Core/Actor/ActorManager.cpp +++ b/src/00_Core/Actor/ActorManager.cpp @@ -218,3 +218,20 @@ void ActorManager::Actor_vfunc_28() { pActor = pActor + 1; } } + +char nullStr[] = "LLUN"; + +ARM bool ActorManager::ActorTypeIsOneOf(char *type, char **types) { + int i; + bool found = false; + + for (i = 0; *types != nullStr; i++) { + if (type == *types) { + found = true; + break; + } + types += 1; + } + + return found; +}