summaryrefslogtreecommitdiff
path: root/src/00_Core/Actor/ActorManager.cpp
diff options
context:
space:
mode:
authorMike <mikebuntu68@gmail.com>2024-05-05 16:15:07 -0400
committerMike <mikebuntu68@gmail.com>2024-07-20 11:33:19 -0400
commitea0fcb1d74128940f9d1c62b6aa7b1a65e3060d1 (patch)
tree4c043ec6500328c423974a442c99bdf891c0bb35 /src/00_Core/Actor/ActorManager.cpp
parentf1559f1ef11b525d32f54275ef6d09871fdc074a (diff)
Match `ActorManager::GetActor`
Diffstat (limited to 'src/00_Core/Actor/ActorManager.cpp')
-rw-r--r--src/00_Core/Actor/ActorManager.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/00_Core/Actor/ActorManager.cpp b/src/00_Core/Actor/ActorManager.cpp
index 27acf972..e85dd20f 100644
--- a/src/00_Core/Actor/ActorManager.cpp
+++ b/src/00_Core/Actor/ActorManager.cpp
@@ -183,3 +183,24 @@ Actor* NONMATCH(ActorManager::FindActorById)(s32 id) {
return actor;
#endif
}
+
+Actor* ActorManager::GetActor(ActorRef *ref) {
+ Actor *pActor;
+ u32 alive;
+
+ alive = ref->index;
+
+ if ((s32)alive < 0) {
+ return NULL;
+ }
+
+ pActor = this->mActorTable[alive];
+ if (pActor != NULL) {
+ alive = pActor->mAlive;
+ if (alive != 0 && ref->id == pActor->mId) {
+ return pActor;
+ }
+ }
+
+ return NULL;
+}