mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-08-03 00:57:03 -04:00
Fix cooldown behavior for crystal and light switches, water gate (#6461)
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
#include "z_bg_spot06_objects.h"
|
||||
#include "objects/object_spot06_objects/object_spot06_objects.h"
|
||||
#include "soh/Enhancements/custom-message/CustomMessageTypes.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
|
||||
#define FLAGS ACTOR_FLAG_HOOKSHOT_PULLS_ACTOR
|
||||
|
||||
@@ -266,7 +267,7 @@ void BgSpot06Objects_GateWaitForSwitch(BgSpot06Objects* this, PlayState* play) {
|
||||
* This is where the gate waits a few frames before rising after the switch is set.
|
||||
*/
|
||||
void BgSpot06Objects_GateWaitToOpen(BgSpot06Objects* this, PlayState* play) {
|
||||
if (this->timer != 0) {
|
||||
if (GameInteractor_Should(VB_BG_SPOT06_OBJECTS_GATE_SKIP, this->timer != 0, this)) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
|
||||
@@ -256,9 +256,8 @@ void ObjSwitch_SetOn(ObjSwitch* this, PlayState* play) {
|
||||
} else {
|
||||
OnePointCutscene_AttentionSetSfx(play, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR);
|
||||
}
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -271,8 +270,8 @@ void ObjSwitch_SetOff(ObjSwitch* this, PlayState* play) {
|
||||
if ((this->dyna.actor.params >> 4 & 7) == 1) {
|
||||
if (GameInteractor_Should(VB_PLAY_ONEPOINT_ACTOR_CS, true, this)) {
|
||||
OnePointCutscene_AttentionSetSfx(play, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR);
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user