1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-15 04:14:34 +00:00

Highscores array (#600)

* Highscores

* Review suggestions

Co-authored-by: Thar0 <maximilianc64@gmail.com>
This commit is contained in:
Tharo 2021-01-05 19:57:18 +00:00 committed by GitHub
parent 510b3c4bd5
commit 2a13d71848
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 24 additions and 15 deletions

View file

@ -1052,7 +1052,7 @@ void DemoEc_FishingManPostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx*
Gfx** gfx) {
DemoEc* this = THIS;
if ((limbIndex == 8) && !(gSaveContext.unk_EC0 & 0x1000)) {
if ((limbIndex == 8) && !(HIGH_SCORE(HS_FISHING) & 0x1000)) {
gSPDisplayList((*gfx)++, SEGMENTED_TO_VIRTUAL(D_060074C8));
}
}

View file

@ -83,13 +83,13 @@ u16 func_80AA2AA0(GlobalContext* globalCtx, Actor* thisx) {
if (gSaveContext.timer1Value >= 0xD3) {
return 0x208E;
}
if ((gSaveContext.horseRaceRecord == 0) || (gSaveContext.horseRaceRecord >= 0xB4)) {
gSaveContext.horseRaceRecord = 0xB4;
if ((HIGH_SCORE(HS_HORSE_RACE) == 0) || (HIGH_SCORE(HS_HORSE_RACE) >= 0xB4)) {
HIGH_SCORE(HS_HORSE_RACE) = 0xB4;
gSaveContext.timer1Value = *timer1ValuePtr;
}
if (!(gSaveContext.eventChkInf[1] & 0x4000) && (gSaveContext.timer1Value < 0x32)) {
return 0x208F;
} else if (gSaveContext.timer1Value < gSaveContext.horseRaceRecord) {
} else if (gSaveContext.timer1Value < HIGH_SCORE(HS_HORSE_RACE)) {
return 0x2012;
} else {
return 0x2004;
@ -126,7 +126,7 @@ s16 func_80AA2BD4(GlobalContext* globalCtx, Actor* thisx) {
if (globalCtx->msgCtx.choiceIndex == 0) {
if (gSaveContext.eventChkInf[1] & 0x4000) {
func_8010B720(globalCtx, 0x2091);
} else if (gSaveContext.horseRaceRecord == 0) {
} else if (HIGH_SCORE(HS_HORSE_RACE) == 0) {
func_8010B720(globalCtx, 0x2092);
} else {
func_8010B720(globalCtx, 0x2090);
@ -144,8 +144,8 @@ s16 func_80AA2BD4(GlobalContext* globalCtx, Actor* thisx) {
gSaveContext.eventChkInf[1] |= 0x4000;
case 0x2004:
case 0x2012:
if (gSaveContext.horseRaceRecord > gSaveContext.timer1Value) {
gSaveContext.horseRaceRecord = gSaveContext.timer1Value;
if (HIGH_SCORE(HS_HORSE_RACE) > gSaveContext.timer1Value) {
HIGH_SCORE(HS_HORSE_RACE) = gSaveContext.timer1Value;
}
case 0x208E:
gSaveContext.eventInf[0] &= ~0x400;

View file

@ -316,8 +316,8 @@ void EnPoRelay_DisappearAndReward(EnPoRelay* this, GlobalContext* globalCtx) {
sp60.x = this->actor.posRot.pos.x;
sp60.y = this->actor.groundY;
sp60.z = this->actor.posRot.pos.z;
if (gSaveContext.timer1Value < gSaveContext.dampeRaceTime) {
gSaveContext.dampeRaceTime = gSaveContext.timer1Value;
if (gSaveContext.timer1Value < HIGH_SCORE(HS_DAMPE_RACE)) {
HIGH_SCORE(HS_DAMPE_RACE) = gSaveContext.timer1Value;
}
if (Flags_GetCollectible(globalCtx, this->actor.params) == 0 && gSaveContext.timer1Value <= 60) {
Item_DropCollectible2(globalCtx, &sp60, (this->actor.params << 8) + (0x4000 | ITEM00_HEART_PIECE));
@ -326,7 +326,7 @@ void EnPoRelay_DisappearAndReward(EnPoRelay* this, GlobalContext* globalCtx) {
}
} else {
Flags_SetTempClear(globalCtx, 4);
gSaveContext.dampeRaceTime = gSaveContext.timer1Value;
HIGH_SCORE(HS_DAMPE_RACE) = gSaveContext.timer1Value;
}
Actor_Kill(&this->actor);
}