mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-03 14:34:32 +00:00
proposal for link age macros (#1119)
* proposal for link age macros * apply @Dragorn421 suggestions * also annotate the slinkage variable
This commit is contained in:
parent
621b91e2b6
commit
82cedcc3ef
12 changed files with 64 additions and 60 deletions
|
@ -1795,7 +1795,7 @@ void func_8090120C(BossGanon2* this, GlobalContext* globalCtx) {
|
|||
gSaveContext.nextCutsceneIndex = 0xFFF2;
|
||||
globalCtx->sceneLoadFlag = 0x14;
|
||||
globalCtx->fadeTransition = 3;
|
||||
globalCtx->linkAgeOnLoad = 1;
|
||||
globalCtx->linkAgeOnLoad = LINK_AGE_CHILD;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -856,7 +856,7 @@ void DemoKankyo_DrawWarpSparkles(Actor* thisx, GlobalContext* globalCtx) {
|
|||
|
||||
if (this->unk_150[i].unk_22 < 2) {
|
||||
disp = (u32)gEffFlash1DL;
|
||||
if (linkAge != 0) {
|
||||
if (linkAge != LINK_AGE_ADULT) {
|
||||
Matrix_Translate(translateX, translateY, translateZ, MTXMODE_NEW);
|
||||
} else {
|
||||
if (translateY) {}
|
||||
|
|
|
@ -766,7 +766,7 @@ void Fishing_InitPondProps(Fishing* this, GlobalContext* globalCtx) {
|
|||
if (prop->type == FS_PROP_REED) {
|
||||
prop->scale = (Fishing_RandZeroOne() * 0.25f) + 0.75f;
|
||||
prop->reedAngle = Rand_ZeroFloat(2 * M_PI);
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
prop->scale *= 0.6f;
|
||||
}
|
||||
prop->drawDistance = 1200.0f;
|
||||
|
@ -779,7 +779,7 @@ void Fishing_InitPondProps(Fishing* this, GlobalContext* globalCtx) {
|
|||
} else if (prop->type == FS_PROP_LILY_PAD) {
|
||||
prop->scale = (Fishing_RandZeroOne() * 0.3f) + 0.5f;
|
||||
prop->rotY = Rand_ZeroFloat(2 * M_PI);
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
if ((i % 4) != 0) {
|
||||
prop->scale *= 0.6f;
|
||||
} else {
|
||||
|
@ -821,7 +821,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
ActorShape_Init(&thisx->shape, 0.0f, NULL, 0.0f);
|
||||
|
||||
if (KREG(5) != 0) {
|
||||
sLinkAge = 1;
|
||||
sLinkAge = LINK_AGE_CHILD;
|
||||
} else {
|
||||
sLinkAge = gSaveContext.linkAge;
|
||||
}
|
||||
|
@ -851,7 +851,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
thisx->focus.pos.y += 75.0f;
|
||||
thisx->flags |= ACTOR_FLAG_0 | ACTOR_FLAG_3;
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
if (HIGH_SCORE(HS_FISHING) & 0x1000) {
|
||||
D_80B7A688 = 0;
|
||||
} else {
|
||||
|
@ -869,7 +869,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
|
||||
Audio_QueueSeqCmd(0x1 << 28 | SEQ_PLAYER_BGM_MAIN << 24 | 0x0100FF);
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
if ((HIGH_SCORE(HS_FISHING) & 0x7F) != 0) {
|
||||
D_80B7E078 = HIGH_SCORE(HS_FISHING) & 0x7F;
|
||||
} else {
|
||||
|
@ -939,7 +939,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
fish->unk_3E = 0;
|
||||
fish->unk_40 = 0;
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
if (((i >= 15) && (i < 20)) || ((i >= 35) && (i < 40)) || ((i >= 55) && (i < 60))) {
|
||||
fish->type = FS_GROUP_FISH_NONE;
|
||||
}
|
||||
|
@ -952,7 +952,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_FISHING, 0.0f, 0.0f, 0.0f, 0, 0, 0, 200);
|
||||
|
||||
if ((KREG(1) == 1) || ((D_80B7E07D & 3) == 3)) {
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
fishCount = 16;
|
||||
} else {
|
||||
fishCount = 17;
|
||||
|
@ -1000,7 +1000,7 @@ void Fishing_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
this->unk_1AC = KREG(6) + 80.0f;
|
||||
}
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
this->unk_1AC *= 0.73f;
|
||||
}
|
||||
}
|
||||
|
@ -2030,7 +2030,7 @@ void Fishing_DrawRod(GlobalContext* globalCtx) {
|
|||
|
||||
Matrix_Mult(&player->mf_9E0, MTXMODE_NEW);
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
Matrix_Translate(0.0f, 400.0f, 0.0f, MTXMODE_APPLY);
|
||||
} else {
|
||||
Matrix_Translate(0.0f, 230.0f, 0.0f, MTXMODE_APPLY);
|
||||
|
@ -2153,8 +2153,8 @@ void Fishing_UpdateLure(Fishing* this, GlobalContext* globalCtx) {
|
|||
D_80B7E082 = 0;
|
||||
D_80B7E0B6 = 0;
|
||||
|
||||
if (((sLinkAge == 1) && (HIGH_SCORE(HS_FISHING) & 0x400)) ||
|
||||
((sLinkAge != 1) && (HIGH_SCORE(HS_FISHING) & 0x800))) {
|
||||
if (((sLinkAge == LINK_AGE_CHILD) && (HIGH_SCORE(HS_FISHING) & 0x400)) ||
|
||||
((sLinkAge != LINK_AGE_CHILD) && (HIGH_SCORE(HS_FISHING) & 0x800))) {
|
||||
sSinkingLureLocation = (u8)Rand_ZeroFloat(3.999f) + 1;
|
||||
}
|
||||
|
||||
|
@ -2823,7 +2823,7 @@ void func_80B71278(Fishing* this, u8 arg1) {
|
|||
}
|
||||
|
||||
void Fishing_HandleAquariumDialog(Fishing* this, GlobalContext* globalCtx) {
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
if ((HIGH_SCORE(HS_FISHING) & 0x7F) != 0) {
|
||||
if (HIGH_SCORE(HS_FISHING) & 0x80) {
|
||||
this->actor.textId = 0x40B1;
|
||||
|
@ -3782,8 +3782,8 @@ void Fishing_UpdateFish(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
|
||||
if ((D_80B7E122 == 0) && (D_80B7E124 == 0)) {
|
||||
D_80B7E086 = 0x4081;
|
||||
if (((sLinkAge == 1) && (HIGH_SCORE(HS_FISHING) & 0x400)) ||
|
||||
((sLinkAge != 1) && (HIGH_SCORE(HS_FISHING) & 0x800))) {
|
||||
if (((sLinkAge == LINK_AGE_CHILD) && (HIGH_SCORE(HS_FISHING) & 0x400)) ||
|
||||
((sLinkAge != LINK_AGE_CHILD) && (HIGH_SCORE(HS_FISHING) & 0x800))) {
|
||||
D_80B7A67C = 0;
|
||||
}
|
||||
} else {
|
||||
|
@ -3835,7 +3835,7 @@ void Fishing_UpdateFish(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
Math_ApproachF(&D_80B7FEC8, 15.0f, 0.05f, 0.75f);
|
||||
|
||||
sp10C.x = D_80B7FEC8;
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
sp10C.y = 30.0f;
|
||||
sp10C.z = 55.0f;
|
||||
} else {
|
||||
|
@ -3850,7 +3850,7 @@ void Fishing_UpdateFish(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
sCameraEye.z += player->actor.world.pos.z;
|
||||
|
||||
sCameraAt = player->actor.world.pos;
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
sCameraAt.y += 40.0f;
|
||||
} else {
|
||||
sCameraAt.y += 25.0f;
|
||||
|
@ -4566,7 +4566,7 @@ void Fishing_UpdateGroupFishes(GlobalContext* globalCtx) {
|
|||
Math_ApproachF(&sFishGroupAngle3, 4.6f, 1.0f, 0.001f);
|
||||
}
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
spD8 = 0.8f;
|
||||
} else {
|
||||
spD8 = 1.0f;
|
||||
|
@ -4680,7 +4680,7 @@ void Fishing_DrawGroupFishes(GlobalContext* globalCtx) {
|
|||
s16 i;
|
||||
s32 pad;
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
scale = 0.003325f;
|
||||
} else {
|
||||
scale = 0.00475f;
|
||||
|
@ -4721,7 +4721,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
switch (this->unk_15C) {
|
||||
case 0:
|
||||
if (D_80B7E0AC == 0) {
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
if ((HIGH_SCORE(HS_FISHING) & 0x100) && !(HIGH_SCORE(HS_FISHING) & 0x200)) {
|
||||
this->actor.textId = 0x4093;
|
||||
} else {
|
||||
|
@ -4739,7 +4739,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
if (Actor_ProcessTalkRequest(&this->actor, globalCtx)) {
|
||||
if (D_80B7E0AC == 0) {
|
||||
this->unk_15C = 1;
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
HIGH_SCORE(HS_FISHING) |= 0x200;
|
||||
} else {
|
||||
HIGH_SCORE(HS_FISHING) |= 0x100;
|
||||
|
@ -4895,7 +4895,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
|
||||
D_80B7E082++;
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
if (D_80B7E082 >= 6) {
|
||||
D_80B7E082 = 0;
|
||||
}
|
||||
|
@ -4910,7 +4910,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
case 2:
|
||||
if (D_80B7E084 == 0) {
|
||||
Message_ContinueTextbox(globalCtx, 0x4085);
|
||||
} else if (sLinkAge == 1) {
|
||||
} else if (sLinkAge == LINK_AGE_CHILD) {
|
||||
Message_ContinueTextbox(globalCtx, 0x4092);
|
||||
}
|
||||
this->unk_15C = 22;
|
||||
|
@ -4932,7 +4932,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
D_80B7E078 = D_80B7A670;
|
||||
D_80B7A670 = 0.0f;
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
f32 temp;
|
||||
|
||||
HIGH_SCORE(HS_FISHING) &= 0xFFFFFF00;
|
||||
|
@ -4974,7 +4974,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
getItemId = GI_RUPEE_GREEN;
|
||||
}
|
||||
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
if ((D_80B7E078 >= 50.0f) && !(HIGH_SCORE(HS_FISHING) & 0x400)) {
|
||||
HIGH_SCORE(HS_FISHING) |= 0x400;
|
||||
getItemId = GI_HEART_PIECE;
|
||||
|
@ -5016,7 +5016,7 @@ void Fishing_HandleOwnerDialog(Fishing* this, GlobalContext* globalCtx) {
|
|||
case 1:
|
||||
if (D_80B7E084 == 0) {
|
||||
Message_ContinueTextbox(globalCtx, 0x4085);
|
||||
} else if (sLinkAge == 1) {
|
||||
} else if (sLinkAge == LINK_AGE_CHILD) {
|
||||
Message_ContinueTextbox(globalCtx, 0x4092);
|
||||
}
|
||||
this->unk_15C = 22;
|
||||
|
@ -5268,7 +5268,7 @@ void Fishing_UpdateOwner(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
Math_ApproachF(&sCameraAt.z, sLurePos.z, camAtFraction, fabsf(spFC.z) * D_80B7FECC);
|
||||
|
||||
sp114.x = 0.0f - D_80B7FED0;
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
sp114.y = 80.0f;
|
||||
} else {
|
||||
sp114.y = 55.0f;
|
||||
|
@ -5441,7 +5441,7 @@ void Fishing_UpdateOwner(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
sp114.x = Math_SinS(globalCtx->gameplayFrames * 0x1000);
|
||||
sp114.y = D_80B7FEE4;
|
||||
sp114.z = -5.0f;
|
||||
if (sLinkAge == 1) {
|
||||
if (sLinkAge == LINK_AGE_CHILD) {
|
||||
sp114.y -= 20.0f;
|
||||
}
|
||||
|
||||
|
@ -5455,7 +5455,7 @@ void Fishing_UpdateOwner(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
|
||||
sp114.x = D_80B7FEC8 - 15.0f;
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
sp114.y = 60.0f;
|
||||
sp114.z = -30.0f;
|
||||
} else {
|
||||
|
@ -5469,7 +5469,7 @@ void Fishing_UpdateOwner(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
sCameraEye.z += player->actor.world.pos.z;
|
||||
|
||||
sCameraAt = player->actor.world.pos;
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
sCameraAt.y += 62.0f;
|
||||
} else {
|
||||
sCameraAt.y += 40.0f;
|
||||
|
@ -5743,13 +5743,13 @@ void Fishing_DrawOwner(Actor* thisx, GlobalContext* globalCtx) {
|
|||
D_80B7E0A6--;
|
||||
|
||||
if (D_80B7E0A6 == 0) {
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
Audio_QueueSeqCmd(SEQ_PLAYER_BGM_MAIN << 24 | NA_BGM_KAKARIKO_ADULT);
|
||||
} else {
|
||||
Audio_QueueSeqCmd(SEQ_PLAYER_BGM_MAIN << 24 | NA_BGM_KAKARIKO_KID);
|
||||
}
|
||||
|
||||
if (sLinkAge != 1) {
|
||||
if (sLinkAge != LINK_AGE_CHILD) {
|
||||
Audio_QueueSeqCmd(SEQ_PLAYER_BGM_MAIN << 24 | NA_BGM_KAKARIKO_ADULT);
|
||||
} else {
|
||||
Audio_QueueSeqCmd(SEQ_PLAYER_BGM_MAIN << 24 | NA_BGM_KAKARIKO_KID);
|
||||
|
|
|
@ -465,7 +465,6 @@ void ObjBean_Grown(ObjBean* this) {
|
|||
|
||||
void ObjBean_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
s32 path;
|
||||
s32 linkAge;
|
||||
ObjBean* this = (ObjBean*)thisx;
|
||||
|
||||
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
|
||||
|
|
|
@ -13893,12 +13893,12 @@ void func_808526EC(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg
|
|||
static Vec3f zeroVec = { 0.0f, 0.0f, 0.0f };
|
||||
static Color_RGBA8 primColor = { 255, 255, 255, 0 };
|
||||
static Color_RGBA8 envColor = { 0, 128, 128, 0 };
|
||||
s32 age = gSaveContext.linkAge;
|
||||
s32 linkAge = gSaveContext.linkAge;
|
||||
Vec3f sparklePos;
|
||||
Vec3f sp34;
|
||||
Vec3s* ptr;
|
||||
|
||||
func_80851294(globalCtx, this, D_80855208[age]);
|
||||
func_80851294(globalCtx, this, D_80855208[linkAge]);
|
||||
|
||||
if (this->rightHandType != 0xFF) {
|
||||
this->rightHandType = 0xFF;
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
void Opening_SetupTitleScreen(OpeningContext* this) {
|
||||
gSaveContext.gameMode = 1;
|
||||
this->state.running = false;
|
||||
gSaveContext.linkAge = 0;
|
||||
gSaveContext.linkAge = LINK_AGE_ADULT;
|
||||
Sram_InitDebugSave();
|
||||
gSaveContext.cutsceneIndex = 0xFFF3;
|
||||
gSaveContext.sceneSetupIndex = 7;
|
||||
|
|
|
@ -311,9 +311,9 @@ void Select_UpdateMenu(SelectContext* this) {
|
|||
|
||||
if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
||||
if (LINK_AGE_IN_YEARS == YEARS_ADULT) {
|
||||
gSaveContext.linkAge = 1;
|
||||
gSaveContext.linkAge = LINK_AGE_CHILD;
|
||||
} else {
|
||||
gSaveContext.linkAge = 0;
|
||||
gSaveContext.linkAge = LINK_AGE_ADULT;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -754,5 +754,5 @@ void Select_Init(GameState* thisx) {
|
|||
this->staticSegment = GameState_Alloc(&this->state, size, "../z_select.c", 1114);
|
||||
DmaMgr_SendRequest1(this->staticSegment, _z_select_staticSegmentRomStart, size, "../z_select.c", 1115);
|
||||
gSaveContext.cutsceneIndex = 0x8000;
|
||||
gSaveContext.linkAge = 1;
|
||||
gSaveContext.linkAge = LINK_AGE_CHILD;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue