Handle ignoring 0x3F for navi talk skips (#4364)

This commit is contained in:
Garrett Cox 2024-09-24 12:56:56 -05:00 committed by GitHub
commit 4e4c1c4f8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -317,10 +317,12 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, void*
case VB_NAVI_TALK: { case VB_NAVI_TALK: {
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"), IS_RANDO)) { if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"), IS_RANDO)) {
ElfMsg* naviTalk = static_cast<ElfMsg*>(opt); ElfMsg* naviTalk = static_cast<ElfMsg*>(opt);
if (((naviTalk->actor.params >> 8) & 0x3F) != 0x3F) {
Flags_SetSwitch(gPlayState, (naviTalk->actor.params >> 8) & 0x3F); Flags_SetSwitch(gPlayState, (naviTalk->actor.params >> 8) & 0x3F);
Actor_Kill(&naviTalk->actor); Actor_Kill(&naviTalk->actor);
*should = false; *should = false;
} }
}
break; break;
} }
case VB_NOT_BE_GREETED_BY_SARIA: case VB_NOT_BE_GREETED_BY_SARIA: