mirror of
https://github.com/zeldaret/st
synced 2026-08-29 09:00:07 -04:00
Decompile ActorManager_001.cpp (#31)
* started ActorManager_001.cpp * create, ctor, dtor * prog * fix build * fix build issues * progress * struct comments * match ClearInstance
This commit is contained in:
@@ -16,7 +16,7 @@ ARM Actor::Actor() {
|
||||
this->mUnk_50 = 0;
|
||||
this->mUnk_52 = 0;
|
||||
this->mUnk_54 = 0;
|
||||
this->mFlags = 0;
|
||||
this->ResetFlags();
|
||||
this->mUnk_84 = 0;
|
||||
this->mUnk_5c.func_ov000_020975f8();
|
||||
this->mRef.Reset();
|
||||
@@ -24,7 +24,7 @@ ARM Actor::Actor() {
|
||||
Copy256(&data_ov000_020b539c.mUnk_00, &this->mUnk_5c, sizeof(data_ov000_020b539c.mUnk_00));
|
||||
this->mPrevPos = this->mPos = this->mUnk_5c.mUnk_00;
|
||||
this->mAngle = this->mUnk_5c.mUnk_0c;
|
||||
this->mFlags = (1 << ActorFlag_Alive) | (1 << ActorFlag_Visible) | (1 << ActorFlag_Active) | (1 << ActorFlag_14);
|
||||
SET_FLAGS(this->mFlags, ActorFlag_Alive, ActorFlag_Visible, ActorFlag_Active, ActorFlag_14);
|
||||
this->mUnk_44 = 0xFF;
|
||||
this->mUnk_46 = 0;
|
||||
this->func_ov000_0209862c(0);
|
||||
@@ -67,9 +67,9 @@ ARM unk32 Actor::vfunc_34() {
|
||||
}
|
||||
|
||||
ARM void Actor::func_ov000_020984d0() {
|
||||
UNSET_FLAG(&this->mFlags, ActorFlag_Alive);
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
|
||||
if (GET_FLAG(&this->mFlags, ActorFlag_16)) {
|
||||
if (GET_FLAG(this->mFlags, ActorFlag_16)) {
|
||||
this->func_ov000_020984f0();
|
||||
}
|
||||
}
|
||||
@@ -116,12 +116,12 @@ ARM unk32 Actor::vfunc_38(unk32 param1) {
|
||||
|
||||
var_r3 = param1 >> 16;
|
||||
|
||||
if (GET_FLAG(&this->mFlags, ActorFlag_Grabbed)) {
|
||||
if (GET_FLAG(this->mFlags, ActorFlag_Grabbed)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
SET_FLAG(&this->mFlags, ActorFlag_Grabbed);
|
||||
stack_c = this->mFlags;
|
||||
SET_FLAG(this->mFlags, ActorFlag_Grabbed);
|
||||
stack_c = this->mFlags[0];
|
||||
|
||||
switch (stack_c) {
|
||||
case 0x100:
|
||||
@@ -142,12 +142,12 @@ ARM unk32 Actor::vfunc_38(unk32 param1) {
|
||||
|
||||
// non-matching
|
||||
ARM bool Actor::vfunc_3c(unk32 param2, Vec3p *param3) {
|
||||
if (!GET_FLAG(&this->mFlags, ActorFlag_Grabbed)) {
|
||||
if (!GET_FLAG(this->mFlags, ActorFlag_Grabbed)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this->mVel = *param3;
|
||||
UNSET_FLAG(&this->mFlags, ActorFlag_Grabbed);
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Grabbed);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ ARM ActorUnk_ov000_020a8bb0::~ActorUnk_ov000_020a8bb0() {}
|
||||
|
||||
ARM bool ActorUnk_ov000_020a8bb0::vfunc_18(unk32 param1) {
|
||||
if (this->mUnk_70 == 0 && this->func_ov000_020a8dd0() != 0) {
|
||||
UNSET_FLAG(&this->mFlags, ActorFlag_Alive);
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
}
|
||||
|
||||
if (this->mUnk_0b0 & 8) {
|
||||
@@ -165,7 +165,7 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_60() {
|
||||
}
|
||||
|
||||
ARM bool ActorUnk_ov000_020a8bb0::vfunc_64() {
|
||||
return GET_FLAG(&this->mFlags, ActorFlag_Interacting);
|
||||
return GET_FLAG(this->mFlags, ActorFlag_Interacting);
|
||||
}
|
||||
|
||||
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8ff4() {}
|
||||
@@ -173,7 +173,7 @@ ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8ff4() {}
|
||||
ARM void ActorUnk_ov000_020a8bb0::vfunc_6c() {}
|
||||
|
||||
ARM void ActorUnk_ov000_020a8bb0::vfunc_68() {
|
||||
UNSET_FLAG(&this->mFlags, ActorFlag_Interacting);
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Interacting);
|
||||
this->func_ov000_020a9200();
|
||||
this->vfunc_ac();
|
||||
this->mUnk_0b0 &= ~0x01;
|
||||
|
||||
Reference in New Issue
Block a user