Mumbo tokens enum WIP

This commit is contained in:
MaikelChan
2023-08-11 07:09:04 +02:00
parent a9463632e3
commit 9886d4aa28
4 changed files with 24 additions and 19 deletions

View File

@@ -1447,6 +1447,11 @@ enum honeycomb_e
HONEYCOMB_18_SM_QUARRIES HONEYCOMB_18_SM_QUARRIES
}; };
enum mumbotoken_e
{
MUMBOTOKEN_01_MM_HILL = 1
};
enum actor_e enum actor_e
{ {
ACTOR_1_UNKNOWN = 0x1, ACTOR_1_UNKNOWN = 0x1,

View File

@@ -5,7 +5,7 @@
extern void func_80329904(ActorMarker*, s32, f32*); extern void func_80329904(ActorMarker*, s32, f32*);
typedef struct{ typedef struct{
s32 uid; enum honeycomb_e uid;
s32 unk4; s32 unk4;
}ActorLocal_EmptyHoneycomb; }ActorLocal_EmptyHoneycomb;

View File

@@ -5,11 +5,11 @@
extern void func_8035644C(s32); extern void func_8035644C(s32);
typedef struct { typedef struct {
s32 unk0; enum mumbotoken_e uid;
}ActorLocal_Core2_59A80; }ActorLocal_MumboToken;
void func_802E0B10(Actor *this); void func_802E0B10(Actor *this);
s32 func_802E0CB0(Actor *this); enum mumbotoken_e func_802E0CB0(Actor *this);
/* .data */ /* .data */
ActorInfo D_803685A0 = { ActorInfo D_803685A0 = {
@@ -20,7 +20,7 @@ s32 func_802E0CB0(Actor *this);
}; };
/* .bss */ /* .bss */
s32 D_8037E610; enum mumbotoken_e D_8037E610;
/* .code */ /* .code */
void chMumboToken_collect(ActorMarker *marker, ActorMarker *other_marker){ void chMumboToken_collect(ActorMarker *marker, ActorMarker *other_marker){
@@ -36,7 +36,7 @@ void chMumboToken_collect(ActorMarker *marker, ActorMarker *other_marker){
} }
s32 func_802E0A90(Actor *this){ enum mumbotoken_e func_802E0A90(Actor *this){
s32 id; s32 id;
s32 pos[3]; s32 pos[3];
@@ -54,21 +54,21 @@ s32 func_802E0A90(Actor *this){
} }
void func_802E0B10(Actor *this){ void func_802E0B10(Actor *this){
ActorLocal_Core2_59A80 *local; ActorLocal_MumboToken *local;
f32 sp28[3]; f32 sp28[3];
local = (ActorLocal_Core2_59A80 *)&this->local; local = (ActorLocal_MumboToken *)&this->local;
if(!this->initialized){ if(!this->initialized){
this->initialized = TRUE; this->initialized = TRUE;
if(local->unk0 == NULL){ if(local->uid == NULL){
if(!this->unk44_2){ if(!this->unk44_2){
local->unk0 = D_8037E610; local->uid = D_8037E610;
} }
else{ else{
local->unk0 = func_802E0A90(this); local->uid = func_802E0A90(this);
} }
} }
if( mumboscore_get(local->unk0) if( mumboscore_get(local->uid)
|| func_803203FC(1) || func_803203FC(1)
|| func_803203FC(2) || func_803203FC(2)
|| func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE) || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
@@ -90,14 +90,14 @@ void func_802E0B10(Actor *this){
} }
} }
s32 func_802E0CB0(Actor *this){ enum mumbotoken_e func_802E0CB0(Actor *this){
ActorLocal_Core2_59A80 *local; ActorLocal_MumboToken *local;
f32 sp28[3]; f32 sp28[3];
local = (ActorLocal_Core2_59A80 *)&this->local; local = (ActorLocal_MumboToken *)&this->local;
return local->unk0; return local->uid;
} }
void func_802E0CB8(s32 mumbo_token_id){ void func_802E0CB8(enum mumbotoken_e mumbo_token_id){
D_8037E610 = mumbo_token_id; D_8037E610 = mumbo_token_id;
} }

View File

@@ -19,7 +19,7 @@ u8* func_80321538(void){
return sMumboTokenScore; return sMumboTokenScore;
} }
bool mumboscore_get(s32 indx){ bool mumboscore_get(enum mumbotoken_e indx){
if( indx <= 0 || indx >= MUMBO_TOKEN_COUNT) if( indx <= 0 || indx >= MUMBO_TOKEN_COUNT)
return 0; return 0;
return (sMumboTokenScore[(indx - 1) / 8] & (1 << (indx & 7))) != 0; return (sMumboTokenScore[(indx - 1) / 8] & (1 << (indx & 7))) != 0;
@@ -34,7 +34,7 @@ void mumboscore_clear(void){
} }
} }
void mumboscore_set(s32 indx, bool val){ void mumboscore_set(enum mumbotoken_e indx, bool val){
if( 0 < indx && indx < MUMBO_TOKEN_COUNT){ if( 0 < indx && indx < MUMBO_TOKEN_COUNT){
if(val) if(val)
sMumboTokenScore[(indx - 1) / 8] |= (1 << (indx & 7)); sMumboTokenScore[(indx - 1) / 8] |= (1 << (indx & 7));