Merge pull request #1710 from HarbourMasters/develop-zhora

zhora -> dev
This commit is contained in:
briaguya 2022-10-07 22:21:19 -04:00 committed by GitHub
commit 7e841d6156
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 18 deletions

View File

@ -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)

View File

@ -1953,7 +1953,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
TARGET ${PROJECT_NAME}
PRE_BUILD
COMMANDS
COMMAND $<CONFIG:Debug> copy /b $<SHELL_PATH:${CMAKE_CURRENT_SOURCE_DIR}/>src\\boot\\build.c +,,
COMMAND $<CONFIG:Debug> copy /b $<SHELL_PATH:${CMAKE_BINARY_DIR}/>build.c +,,
)
endif()
################################################################################

View File

@ -6248,23 +6248,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);
@ -6280,6 +6278,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;