mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-21 05:43:42 -07:00
Merge branch 'develop-flynn' into flynn-to-dev
This commit is contained in:
commit
4f109178ff
19 changed files with 296 additions and 185 deletions
|
@ -2704,7 +2704,7 @@ u8 Item_CheckObtainability(u8 item) {
|
|||
}
|
||||
|
||||
void PerformAutosave(PlayState* play, u8 item) {
|
||||
if (CVar_GetS32("gAutosave", 0)) {
|
||||
if (CVar_GetS32("gAutosave", 0) && (play->sceneNum != SCENE_KENJYANOMA)) {
|
||||
if (CVar_GetS32("gAutosaveAllItems", 0)) {
|
||||
Play_PerformSave(play);
|
||||
} else if (CVar_GetS32("gAutosaveMajorItems", 1)) {
|
||||
|
@ -2745,6 +2745,13 @@ void PerformAutosave(PlayState* play, u8 item) {
|
|||
if (play->sceneNum == SCENE_GANON_DEMO) {
|
||||
break;
|
||||
}
|
||||
case ITEM_BOMBCHU:
|
||||
case ITEM_BOMBCHUS_5:
|
||||
case ITEM_BOMBCHUS_20:
|
||||
if (!CVar_GetS32("gBombchuDrops", 0)) {
|
||||
Play_PerformSave(play);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
Play_PerformSave(play);
|
||||
break;
|
||||
|
|
|
@ -870,7 +870,7 @@ void Play_Update(PlayState* play) {
|
|||
// Don't autosave in grottos or cutscenes
|
||||
// Also don't save when you first load a file
|
||||
if (CVar_GetS32("gAutosave", 0) && (gSaveContext.cutsceneIndex == 0) && (play->gameplayFrames > 60) &&
|
||||
(play->sceneNum != SCENE_YOUSEI_IZUMI_TATE) && (play->sceneNum != SCENE_KAKUSIANA)) {
|
||||
(play->sceneNum != SCENE_YOUSEI_IZUMI_TATE) && (play->sceneNum != SCENE_KAKUSIANA) && (play->sceneNum != SCENE_KENJYANOMA)) {
|
||||
Play_PerformSave(play);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -257,6 +257,10 @@ void ArmsHook_Shoot(ArmsHook* this, PlayState* play) {
|
|||
sp60.x = this->unk_1F4.x - (this->unk_1E8.x - this->unk_1F4.x);
|
||||
sp60.y = this->unk_1F4.y - (this->unk_1E8.y - this->unk_1F4.y);
|
||||
sp60.z = this->unk_1F4.z - (this->unk_1E8.z - this->unk_1F4.z);
|
||||
u16 buttonsToCheck = BTN_A | BTN_B | BTN_R | BTN_CUP | BTN_CLEFT | BTN_CRIGHT | BTN_CDOWN;
|
||||
if (CVar_GetS32("gDpadEquips", 0) != 0) {
|
||||
buttonsToCheck |= BTN_DUP | BTN_DDOWN | BTN_DLEFT | BTN_DRIGHT;
|
||||
}
|
||||
if (BgCheck_EntityLineTest1(&play->colCtx, &sp60, &this->unk_1E8, &sp78, &poly, true, true, true, true,
|
||||
&bgId) &&
|
||||
!func_8002F9EC(play, &this->actor, poly, bgId, &sp78)) {
|
||||
|
@ -281,8 +285,7 @@ void ArmsHook_Shoot(ArmsHook* this, PlayState* play) {
|
|||
Audio_PlaySoundGeneral(NA_SE_IT_HOOKSHOT_REFLECT, &this->actor.projectedPos, 4, &D_801333E0,
|
||||
&D_801333E0, &D_801333E8);
|
||||
}
|
||||
} else if (CHECK_BTN_ANY(play->state.input[0].press.button,
|
||||
(BTN_A | BTN_B | BTN_R | BTN_CUP | BTN_CLEFT | BTN_CRIGHT | BTN_CDOWN))) {
|
||||
} else if (CHECK_BTN_ANY(play->state.input[0].press.button, (buttonsToCheck))) {
|
||||
this->timer = 0;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1082,7 +1082,7 @@ void BossGanon_IntroCutscene(BossGanon* this, PlayState* play) {
|
|||
|
||||
if (!(gSaveContext.eventChkInf[7] & 0x100)) {
|
||||
TitleCard_InitBossName(play, &play->actorCtx.titleCtx,
|
||||
SEGMENTED_TO_VIRTUAL(gGanondorfTitleCardTex), 160, 180, 128, 40, false);
|
||||
SEGMENTED_TO_VIRTUAL(gGanondorfTitleCardTex), 160, 180, 128, 40, true);
|
||||
}
|
||||
|
||||
gSaveContext.eventChkInf[7] |= 0x100;
|
||||
|
@ -1197,8 +1197,8 @@ void BossGanon_SetupTowerCutscene(BossGanon* this, PlayState* play) {
|
|||
|
||||
void BossGanon_ShatterWindows(u8 windowShatterState) {
|
||||
s16 i;
|
||||
u8* tex1 = ResourceMgr_LoadTexByName(SEGMENTED_TO_VIRTUAL(ganon_boss_sceneTex_006C18));
|
||||
u8* tex2 = ResourceMgr_LoadTexByName(SEGMENTED_TO_VIRTUAL(ganon_boss_sceneTex_007418));
|
||||
u8* tex1 = ResourceMgr_LoadTexByName(SEGMENTED_TO_VIRTUAL(ResourceMgr_GetName(ganon_boss_sceneTex_006C18)));
|
||||
u8* tex2 = ResourceMgr_LoadTexByName(SEGMENTED_TO_VIRTUAL(ResourceMgr_GetName(ganon_boss_sceneTex_007418)));
|
||||
u8* templateTex = ResourceMgr_LoadTexByName(SEGMENTED_TO_VIRTUAL(gGanondorfWindowShatterTemplateTex));
|
||||
|
||||
for (i = 0; i < 2048; i++) {
|
||||
|
@ -3820,8 +3820,8 @@ void BossGanon_Draw(Actor* thisx, PlayState* play) {
|
|||
|
||||
// Invalidate textures if they have changed
|
||||
if (this->windowShatterState != GDF_WINDOW_SHATTER_OFF) {
|
||||
gSPInvalidateTexCache(POLY_OPA_DISP++, ganon_boss_sceneTex_006C18);
|
||||
gSPInvalidateTexCache(POLY_OPA_DISP++, ganon_boss_sceneTex_007418);
|
||||
gSPInvalidateTexCache(POLY_OPA_DISP++, ResourceMgr_GetName(ganon_boss_sceneTex_006C18));
|
||||
gSPInvalidateTexCache(POLY_OPA_DISP++, ResourceMgr_GetName(ganon_boss_sceneTex_007418));
|
||||
}
|
||||
|
||||
Gfx_SetupDL_25Opa(play->state.gfxCtx);
|
||||
|
|
|
@ -843,6 +843,8 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) {
|
|||
if (gSaveContext.n64ddFlag) {
|
||||
play->nextEntranceIndex = 0x60C;
|
||||
gSaveContext.nextCutsceneIndex = 0;
|
||||
// Set "raised lake hylia water" since we aren't warping to the cutscene
|
||||
gSaveContext.eventChkInf[6] |= 0x200;
|
||||
} else {
|
||||
Item_Give(play, ITEM_MEDALLION_WATER);
|
||||
play->nextEntranceIndex = 0x6B;
|
||||
|
|
|
@ -1980,7 +1980,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
|||
} else {//baguettes
|
||||
PosX = 98;
|
||||
}
|
||||
s16 PosY = 200; //General Pos of C button icon
|
||||
s16 PosY = 200 - pauseCtx->infoPanelOffsetY; //General Pos of C button icon
|
||||
s16 icon_w = 46; // Original texture size
|
||||
s16 icon_h = 16;
|
||||
s32 icon_x_offset;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue