From a133be625e40ff3e3a433ac5ad1af923a39874af Mon Sep 17 00:00:00 2001 From: briaguya Date: Thu, 6 Oct 2022 19:51:13 -0400 Subject: [PATCH 1/3] chore: bump version --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index db2ccbc0d..c0cf8a292 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,8 +7,8 @@ set(CMAKE_CXX_STANDARD 20 CACHE STRING "The C++ standard to use") set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version" FORCE) project(Ship LANGUAGES C CXX - VERSION 4.0.1) -set(PROJECT_BUILD_NAME "ZHORA BRAVO" CACHE STRING "") + VERSION 4.0.2) +set(PROJECT_BUILD_NAME "ZHORA CHARLIE" CACHE STRING "") set(PROJECT_TEAM "github.com/harbourmasters" CACHE STRING "") set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT soh) From f563ac733fe5660f9e53af1f74688b6e49bde95b Mon Sep 17 00:00:00 2001 From: aMannus Date: Tue, 4 Oct 2022 18:52:39 +0200 Subject: [PATCH 2/3] Fix skipping "get item" cutscene logic --- .../actors/ovl_player_actor/z_player.c | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/soh/src/overlays/actors/ovl_player_actor/z_player.c b/soh/src/overlays/actors/ovl_player_actor/z_player.c index d07384be3..d796749a5 100644 --- a/soh/src/overlays/actors/ovl_player_actor/z_player.c +++ b/soh/src/overlays/actors/ovl_player_actor/z_player.c @@ -6246,23 +6246,21 @@ s32 func_8083E5A8(Player* this, GlobalContext* globalCtx) { } } - s32 drop = giEntry.objectId; + // Skip cutscenes from picking up items when they come from bushes/rocks/etc, but nowhere else. + uint8_t skipItemCutscene = CVar_GetS32("gFastDrops", 0) && interactedActor->id == ACTOR_EN_ITEM00 && + interactedActor->params != 6 && interactedActor->params != 17; - if (gSaveContext.n64ddFlag || (globalCtx->sceneNum == SCENE_BOWLING) || - !(CVar_GetS32("gFastDrops", 0) && - ((drop == OBJECT_GI_BOMB_1) || (drop == OBJECT_GI_NUTS) || (drop == OBJECT_GI_STICK) || - (drop == OBJECT_GI_SEED) || (drop == OBJECT_GI_MAGICPOT) || (drop == OBJECT_GI_ARROW))) && - (Item_CheckObtainability(giEntry.itemId) == ITEM_NONE)) { + // Same as above but for rando. We need this specifically for rando because we need to be enable the cutscenes everywhere else in the game + // because the items are randomized and thus it's important to show the get item animation. + uint8_t skipItemCutsceneRando = gSaveContext.n64ddFlag && + Item_CheckObtainability(giEntry.itemId) != ITEM_NONE && + interactedActor->id == ACTOR_EN_ITEM00 && + interactedActor->params != 6 && interactedActor->params != 17; - if (gSaveContext.n64ddFlag && - ((interactedActor->id == ACTOR_EN_ITEM00 && - (interactedActor->params != 6 && interactedActor->params != 17)) || - (interactedActor->id == ACTOR_EN_KAREBABA || interactedActor->id == ACTOR_EN_DEKUBABA))) { - func_8083E4C4(globalCtx, this, &giEntry); - this->getItemId = GI_NONE; - this->getItemEntry = (GetItemEntry)GET_ITEM_NONE; - return 0; - } + // Show cutscene when picking up a item that the player doesn't own yet. + // We want to ALWAYS show "get item animations" for items when they're randomized to account for + // randomized freestanding items etc, but we still don't want to show it every time you pick up a consumable from a pot/bush etc. + if ((globalCtx->sceneNum == SCENE_BOWLING || Item_CheckObtainability(giEntry.itemId) == ITEM_NONE || gSaveContext.n64ddFlag) && !skipItemCutscene && !skipItemCutsceneRando) { func_808323B4(globalCtx, this); func_8083AE40(this, giEntry.objectId); @@ -6278,6 +6276,7 @@ s32 func_8083E5A8(Player* this, GlobalContext* globalCtx) { return 1; } + // Don't show cutscene when picking up an item func_8083E4C4(globalCtx, this, &giEntry); this->getItemId = GI_NONE; this->getItemEntry = (GetItemEntry)GET_ITEM_NONE; From e883f27436fbb053603de7decdf21e72b6d97678 Mon Sep 17 00:00:00 2001 From: Adam Bird Date: Fri, 7 Oct 2022 22:03:16 -0400 Subject: [PATCH 3/3] reference generated build.c on windows (#1706) --- soh/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/soh/CMakeLists.txt b/soh/CMakeLists.txt index 372e64d80..490e554a5 100644 --- a/soh/CMakeLists.txt +++ b/soh/CMakeLists.txt @@ -1953,7 +1953,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows") TARGET ${PROJECT_NAME} PRE_BUILD COMMANDS - COMMAND $ copy /b $src\\boot\\build.c +,, + COMMAND $ copy /b $build.c +,, ) endif() ################################################################################