Merge branch 'mr-origin-80'

This commit is contained in:
Banjo Kazooie
2024-09-26 19:10:37 -05:00
170 changed files with 1495 additions and 1305 deletions

View File

@@ -3,7 +3,7 @@
#include "variables.h"
extern void func_8028E668(f32[3], f32, f32, f32);
extern s32 func_8028F31C(f32[3], f32, s32, Actor **);
extern s32 player_setCarryObjectPoseInHorizontalRadius(f32[3], f32, s32, Actor **);
typedef struct {
s32 unk0;
@@ -48,11 +48,19 @@ Struct_FP_3E00 D_80391E80[] ={
/* .code */
void func_8038A1F0(Actor **this_ptr, enum marker_e carried_obj_marker_id, enum actor_e actor_id, enum actor_e arg3){
func_8028F31C((*this_ptr)->position, 600.0f, actor_id, this_ptr);
player_setCarryObjectPoseInHorizontalRadius((*this_ptr)->position, 600.0f, actor_id, this_ptr);
if(!func_80329530(*this_ptr, 400)) return;
if(bacarry_get_markerId() != carried_obj_marker_id) return;
if(!func_8028FC34()) return;
if (!func_80329530(*this_ptr, 400)) {
return;
}
if (bacarry_get_markerId() != carried_obj_marker_id) {
return;
}
if (!player_throwCarriedObject()) {
return;
}
func_8028FA34(arg3, *this_ptr);
}
@@ -116,9 +124,9 @@ void func_8038A384(Actor *this){
}//L8038A4E4
sp34 = levelSpecificFlags_get(0x11) + levelSpecificFlags_get(0x12) + levelSpecificFlags_get(0x13);
sp38 = (sp34 == 1) ? 0xC17
: (sp34 == 2) ? 0xC18
: 0xC19;
sp38 = (sp34 == 1) ? ASSET_C17_TEXT_UNKNOWN
: (sp34 == 2) ? ASSET_C18_TEXT_UNKNOWN
: ASSET_C19_TEXT_UNKNOWN;
this->yaw_ideal = (f32)func_80329784(this);
func_80328FB0(this, 2.0f);
@@ -132,8 +140,9 @@ void func_8038A384(Actor *this){
&& !jiggyscore_isCollected(JIGGY_2C_FP_BOGGY_3)
&& !jiggyscore_isSpawned(JIGGY_2C_FP_BOGGY_3)
){
if(func_80311480(0xc1a, 0x2a, NULL, NULL, NULL, NULL))
if (gcdialog_showText(ASSET_C1A_TEXT_UNKNOWN, 0x2a, NULL, NULL, NULL, NULL)) {
levelSpecificFlags_set(0x19, TRUE);
}
}
}
@@ -154,11 +163,11 @@ void func_8038A384(Actor *this){
}
if(levelSpecificFlags_get(D_80391E80[sp3C].unk0)){
subaddie_set_state_with_direction(this, 2, 0.001f, 1);
if(sp38 == 0xc19){
func_80311480(sp38, 0x2f, this->position, this->marker, func_8038A318, NULL);
if (sp38 == ASSET_C19_TEXT_UNKNOWN) {
gcdialog_showText(sp38, 0x2f, this->position, this->marker, func_8038A318, NULL);
}
else{
func_80311480(sp38, 0x3, this->position, this->marker, func_8038A318, NULL);
else {
gcdialog_showText(sp38, 0x3, this->position, this->marker, func_8038A318, NULL);
}
}
else{//L8038A73C

View File

@@ -85,8 +85,8 @@ void func_803877A8(ActorMarker *caller, enum asset_e text_id, s32 arg2){
void func_80387828(ActorMarker *caller, enum asset_e text_id, s32 arg2){
Actor *this = marker_getActor(caller);
if(text_id == 0xc00){
func_80311480(0xc2b, 0xf, NULL, this->marker, NULL, func_803877A8);
if (text_id == 0xc00) {
gcdialog_showText(ASSET_C2B_TEXT_UNKNOWN, 0xf, NULL, this->marker, NULL, func_803877A8);
}
}
@@ -137,7 +137,7 @@ void func_8038794C(Actor *this){
switch(this->state){
case 1://L80387AB0
if(mapSpecificFlags_get(0xb))
this->is_first_encounter = TRUE;
this->has_met_before = TRUE;
if(mapSpecificFlags_get(0x1)){
func_8028F94C(1, this->position);
@@ -147,13 +147,13 @@ void func_8038794C(Actor *this){
break;
}//L80387B38
if(!this->is_first_encounter && func_80329530(this, 0x1f4)){
if(!this->has_met_before && func_80329530(this, 0x1f4)){
if(!func_8028ECAC() || func_8028ECAC() == BSGROUP_8_TROT){
if(func_80311480(0xbff, 0x2a, this->position, NULL, NULL, NULL)){
for(i = 0; i <5; i++ ){
timedFunc_set_1(D_80391BEC[i], (GenFunction_1)func_8038787C, (s32)this->marker);
if (gcdialog_showText(ASSET_BFF_TEXT_UNKNOWN, 0x2a, this->position, NULL, NULL, NULL)) {
for (i = 0; i < 5; i++) {
timedFunc_set_1(D_80391BEC[i], (GenFunction_1) func_8038787C, (s32) this->marker);
}
this->is_first_encounter = TRUE;
this->has_met_before = TRUE;
}
}
}

View File

@@ -124,10 +124,10 @@ void func_80388A50(Actor *this){
void func_80388A94(Actor *this){
func_80388A50(this);
if(mapSpecificFlags_get(6)){
func_80311480(0xc0a, 0xe, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C0A_TEXT_UNKNOWN, 0xe, this->position, this->marker, func_80388D70, NULL);
}
else{
func_80311480(0xc09, 0xe, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C09_TEXT_UNKNOWN, 0xe, this->position, this->marker, func_80388D70, NULL);
}
}
@@ -136,15 +136,15 @@ void func_80388B18(Actor *this, u8 arg1){
if(player_getTransformation() == TRANSFORM_4_WALRUS){
func_80388A50(this);
if(mapSpecificFlags_get(5)){
func_80311480(0xc05, 0xf, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C05_TEXT_UNKNOWN, 0xf, this->position, this->marker, func_80388D70, NULL);
}
else{
func_80311480(0xc02, 0xf, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C02_TEXT_UNKNOWN, 0xf, this->position, this->marker, func_80388D70, NULL);
}
}
else{//L80388BB8
if(!volatileFlag_get(VOLATILE_FLAG_B3)){
if(func_80311480(0xc01, 0xe, this->position, this->marker, func_80388D70, NULL)){
if(gcdialog_showText(ASSET_C01_TEXT_UNKNOWN, 0xe, this->position, this->marker, func_80388D70, NULL)){
volatileFlag_set(VOLATILE_FLAG_B3, TRUE);
func_80388A50(this);
}
@@ -154,7 +154,7 @@ void func_80388B18(Actor *this, u8 arg1){
else{//L80388C08
if(player_getTransformation() == TRANSFORM_4_WALRUS){
if(!volatileFlag_get(VOLATILE_FLAG_B4)){
if(func_80311480(0xc08, 0xe, this->position, this->marker, func_80388D70, NULL)){
if(gcdialog_showText(ASSET_C08_TEXT_UNKNOWN, 0xe, this->position, this->marker, func_80388D70, NULL)){
volatileFlag_set(VOLATILE_FLAG_B4, TRUE);
func_80388A50(this);
}
@@ -478,13 +478,13 @@ void func_803896FC(Actor *this){
&& player_getTransformation() != TRANSFORM_4_WALRUS
&& volatileFlag_get(VOLATILE_FLAG_B3)
){
func_80311480(0xC01, 0xf, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C01_TEXT_UNKNOWN, 0xf, this->position, this->marker, func_80388D70, NULL);
}
else if( local->unk19 == 2){
if( player_getTransformation() == TRANSFORM_4_WALRUS
&& volatileFlag_get(VOLATILE_FLAG_B4)
){
func_80311480(0xC08, 0xf, this->position, this->marker, func_80388D70, NULL);
gcdialog_showText(ASSET_C08_TEXT_UNKNOWN, 0xf, this->position, this->marker, func_80388D70, NULL);
}
else if( player_getTransformation() != TRANSFORM_4_WALRUS){
func_80388A94(this);

View File

@@ -69,22 +69,22 @@ void func_80390388(Actor *this){
|| jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|| func_80390334()
){
this->is_first_encounter = TRUE;
this->has_met_before = TRUE;
}
if( func_80329530(this, 0xFA)
&& (func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT)
){
if(0.0f == this->unk1C[0] && func_80390334()){
if(func_80311480(0xc1f, 0xb, this->position, NULL, NULL, NULL)){
this->is_first_encounter = TRUE;
if(gcdialog_showText(ASSET_C1F_TEXT_UNKNOWN, 0xb, this->position, NULL, NULL, NULL)){
this->has_met_before = TRUE;
this->unk1C[0] = 1.0f;
}
}
else{
if( !this->is_first_encounter ){
if(func_80311480(0xc1e, 0x2b, this->position, NULL, NULL, NULL)){
this->is_first_encounter = TRUE;
if( !this->has_met_before ){
if(gcdialog_showText(ASSET_C1E_TEXT_UNKNOWN, 0x2b, this->position, NULL, NULL, NULL)){
this->has_met_before = TRUE;
}
}
}

View File

@@ -69,14 +69,14 @@ void func_80390630(Actor *this){
if(func_80329530(this, 350)){
if(player_getTransformation() == TRANSFORM_4_WALRUS){
if(!levelSpecificFlags_get(0x31)){
if(func_80311480(0xc27, 0x23, NULL, NULL, NULL, NULL)){
if(gcdialog_showText(ASSET_C27_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)){
levelSpecificFlags_set(0x31, TRUE);
}
}
}
else{
if(!levelSpecificFlags_get(0x32)){
if(func_80311480(0xc26, 0x23, NULL, NULL, NULL, NULL)){
if(gcdialog_showText(ASSET_C26_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)){
levelSpecificFlags_set(0x32, TRUE);
}
}

View File

@@ -336,11 +336,11 @@ void func_8038C9A0(Actor *this){
if(this->unk1C[1] <= this->position_y){
this->position_y = this->unk1C[1];
if(!fileProgressFlag_get(FILEPROG_82_MET_TWINKLIES)){
func_80311480(0xc12, 0x2a, this->position, this->marker, func_8038C94C, NULL);
gcdialog_showText(0xc12, 0x2a, this->position, this->marker, func_8038C94C, NULL);
fileProgressFlag_set(FILEPROG_82_MET_TWINKLIES, TRUE);
}
else{
func_80311480(0xc25, 0x2b, this->position, this->marker, func_8038C94C, NULL);
gcdialog_showText(0xc25, 0x2b, this->position, this->marker, func_8038C94C, NULL);
}
subaddie_set_state(this, 5);
this->pitch -= 3.0f;

View File

@@ -177,7 +177,7 @@ void func_8038D294(ActorMarker *marker){
func_8038D01C(this->position, 12, ASSET_700_SPRITE_DUST);
this->velocity[1] = 0.0f;
FUNC_8030E8B4(SFX_30_MAGIC_POOF, 1.0f, 32000, this->position, 1000, 3500);
func_80311480(0xc13, 0, NULL, NULL, NULL, NULL);
gcdialog_showText(0xc13, 0, NULL, NULL, NULL, NULL);
}
void func_8038D324(Actor *this){
@@ -279,7 +279,7 @@ void func_8038D6C8(Actor *this){
bool sp20;
sp24 = time_getDelta();
mapSpecificFlags_set(0xd, (this->state != 1 && this->state != 2) ? TRUE : FALSE);
mapSpecificFlags_set(0xd, BOOL(this->state != 1 && this->state != 2));
if(func_8038BFA0() || fileProgressFlag_get(FILEPROG_13_COMPLETED_TWINKLIES_MINIGAME)){
this->marker->propPtr->unk8_3 = FALSE;

View File

@@ -127,7 +127,7 @@ void func_8038E094(Actor *this){
if(this->unkF4_8 == 1 && !fileProgressFlag_get(FILEPROG_13_COMPLETED_TWINKLIES_MINIGAME)){
if(this->state != 6 && this->state != 7 && 0.0f == this->velocity[0]){
timed_setStaticCameraToNode(0.5f, 0xd);
func_80311480(ASSET_C15_TEXT_TWINKLIE_MINIGAME_LOST, 0x2b, this->position, this->marker, func_8038E040, NULL);
gcdialog_showText(ASSET_C15_TEXT_TWINKLIE_MINIGAME_LOST, 0x2b, this->position, this->marker, func_8038E040, NULL);
this->velocity[0] = 1.0f;
subaddie_set_state_with_direction(this, 6, 0.03f, 1);
actor_loopAnimation(this);
@@ -201,7 +201,7 @@ void func_8038E094(Actor *this){
FUNC_8030E8B4(SFX_27_JINJO_HI, 1.6f, 32000, this->position, 1250, 2500);
func_80324D54(0.35f, SFX_110_TWINKLY_DEATH, 1.0f, 32000, this->position, 1250.0f, 2500.0f);
marker_despawn(sp38->marker);
if( !mapSpecificFlags_get(0xa) && func_80311480(0xc16, 0, NULL, NULL, NULL, NULL)){
if( !mapSpecificFlags_get(0xa) && gcdialog_showText(0xc16, 0, NULL, NULL, NULL, NULL)){
mapSpecificFlags_set(0xa, TRUE);
}
}

View File

@@ -138,7 +138,7 @@ bool func_8038F5D4(Actor *this, f32 arg1[3], f32 arg2, f32 arg3, s32 arg4){
if(actor_animationIsAt(this, 0.9f)){
FUNC_8030E8B4(SFX_3F2_UNKNOWN, 0.8f, 24000, this->position, 500, 2000);
}
this->unk28 = (1.0f- sp24)*arg2;
this->actor_specific_1_f = (1.0f- sp24)*arg2;
func_80329054(this, 2);
if(ml_distance_vec3f(this->position, arg1) <= arg4)
return TRUE;
@@ -273,7 +273,7 @@ void FP_func_8038F7AC(Actor *this){
func_8038F560(this);
if(!local->unk30){
if(func_80311480(0xc1d, 0x20, NULL, NULL, NULL, NULL)){
if(gcdialog_showText(0xc1d, 0x20, NULL, NULL, NULL, NULL)){
local->unk30 = TRUE;
}
}
@@ -299,10 +299,10 @@ void FP_func_8038F7AC(Actor *this){
break;
}
if(func_80329530(this, 500) && !this->is_first_encounter){
if(func_80311480(0xc1c, 0xAA, this->position, this->marker, func_8038F330, func_8038F3C4)){
if(func_80329530(this, 500) && !this->has_met_before){
if(gcdialog_showText(0xc1c, 0xAA, this->position, this->marker, func_8038F330, func_8038F3C4)){
timed_setStaticCameraToNode(0.0f, 0x2E);
this->is_first_encounter = TRUE;
this->has_met_before = TRUE;
}
break;
}//L8038FD40

View File

@@ -127,7 +127,7 @@ void chXmasTree_update(Actor *this){
this->lifetime_value = 2.0f;
func_8025A6EC(COMUSIC_61_XMAS_TREE_LIGHTS_UP, 28000);
func_802BAFE4(0x1A);
func_80311480(0xC14, 0, NULL, NULL, NULL, NULL);
gcdialog_showText(0xC14, 0, NULL, NULL, NULL, NULL);
break;
case 3: // L803872F0

View File

@@ -17,5 +17,5 @@ void func_803905B0(Actor *this){
this->volatile_initialized = TRUE;
actor_collisionOff(this);
}
this->marker->propPtr->unk8_3 = func_8038DD14(this) ? TRUE : FALSE;
this->marker->propPtr->unk8_3 = BOOL(func_8038DD14(this));
}

View File

@@ -525,25 +525,25 @@ void func_8038BC0C(s32 arg0){
break;
FP_D_803935A8.unk1A = TRUE;
FP_func_8038AB60(0);
if(!func_8028F22C()){
if(!player_isDead()){
func_8028F918(2);
func_80311480(0xc10, 0x20, NULL, NULL, func_8038B2C8, NULL);
gcdialog_showText(0xc10, 0x20, NULL, NULL, func_8038B2C8, NULL);
}//L8038BD40
FP_D_803935A8.unk0 = 4;
break;
case 3:
if(!FP_D_803935A8.unk19 && !func_8028F22C()){
if(!FP_D_803935A8.unk19 && !player_isDead()){
FP_D_803935A8.unk19 = 1;
func_80311480(0xc0f, 0x20, NULL, NULL, NULL, NULL);
gcdialog_showText(0xc0f, 0x20, NULL, NULL, NULL, NULL);
}//L8038BD94
func_8025AEA0(0x3a, 0x411aa);
break;
case 2:
if(!FP_D_803935A8.unk18 && !func_8028F22C()){
if(!FP_D_803935A8.unk18 && !player_isDead()){
FP_D_803935A8.unk18 = 1;
func_80311480(0xc0e, 0x20, NULL, NULL, NULL, NULL);
gcdialog_showText(0xc0e, 0x20, NULL, NULL, NULL, NULL);
}//L8038BDF0
func_8025AEA0(0x3a, 0x493e0);
break;