mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-09-05 03:27:33 -04:00
Merge branch 'anchor-next' of garrettjoecox.github.com:garrettjoecox/OOT into let-it-snow
This commit is contained in:
@@ -2215,6 +2215,10 @@ void Player_PlaySfx(Actor* actor, u16 sfxId) {
|
||||
// Audio_PlaySoundGeneral(sfxId, &actor->projectedPos, 4, &D_801333E0 , &D_801333E0, &D_801333E8);
|
||||
Audio_PlaySoundGeneral(sfxId, &actor->projectedPos, 4, &freqMultiplier, &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
|
||||
}
|
||||
|
||||
if (actor->id == ACTOR_PLAYER) {
|
||||
GameInteractor_ExecuteOnPlayerSfx(sfxId);
|
||||
}
|
||||
}
|
||||
|
||||
void Audio_PlayActorSound2(Actor* actor, u16 sfxId) {
|
||||
|
||||
@@ -775,6 +775,13 @@ void EnItem00_Update(Actor* thisx, PlayState* play) {
|
||||
EnItem00* this = (EnItem00*)thisx;
|
||||
s32 pad;
|
||||
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetCollectible(play, this->collectibleFlag)) {
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
// #endregion
|
||||
|
||||
// Rotate some drops when 3D drops are on, otherwise reset rotation back to 0 for billboard effect
|
||||
if (
|
||||
(this->actor.params == ITEM00_HEART && this->unk_15A >= 0) ||
|
||||
|
||||
@@ -211,7 +211,9 @@ void func_8086ED50(BgBombwall* this, PlayState* play) {
|
||||
}
|
||||
|
||||
void func_8086ED70(BgBombwall* this, PlayState* play) {
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
this->collider.base.acFlags &= ~AC_HIT;
|
||||
func_8086EDFC(this, play);
|
||||
Flags_SetSwitch(play, this->dyna.actor.params & 0x3F);
|
||||
|
||||
@@ -277,7 +277,9 @@ void BgBreakwall_Wait(BgBreakwall* this, PlayState* play) {
|
||||
}
|
||||
}
|
||||
|
||||
if (GameInteractor_Should(VB_BG_BREAKWALL_BREAK, this->collider.base.acFlags & 2 || blueFireArrowHit)) {
|
||||
// #region SOH [Co-op]
|
||||
if (GameInteractor_Should(VB_BG_BREAKWALL_BREAK, this->collider.base.acFlags & 2 || blueFireArrowHit) || Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
Vec3f effectPos;
|
||||
s32 wallType = ((this->dyna.actor.params >> 13) & 3) & 0xFF;
|
||||
|
||||
|
||||
@@ -268,7 +268,9 @@ void func_80882E54(BgHakaZou* this, PlayState* play) {
|
||||
}
|
||||
|
||||
void func_80883000(BgHakaZou* this, PlayState* play) {
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, this->switchFlag)) {
|
||||
// #endregion
|
||||
Flags_SetSwitch(play, this->switchFlag);
|
||||
|
||||
if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) {
|
||||
|
||||
@@ -126,8 +126,10 @@ void BgHidanDalm_Destroy(Actor* thisx, PlayState* play) {
|
||||
void BgHidanDalm_Wait(BgHidanDalm* this, PlayState* play) {
|
||||
Player* player = GET_PLAYER(play);
|
||||
|
||||
if ((this->collider.base.acFlags & AC_HIT) && !Player_InCsMode(play) &&
|
||||
(player->meleeWeaponAnimation == 22 || player->meleeWeaponAnimation == 23)) {
|
||||
// #region SOH [Co-op]
|
||||
if (((this->collider.base.acFlags & AC_HIT) && !Player_InCsMode(play) &&
|
||||
(player->meleeWeaponAnimation == 22 || player->meleeWeaponAnimation == 23)) || Flags_GetSwitch(play, this->switchFlag)) {
|
||||
// #endregion
|
||||
this->collider.base.acFlags &= ~AC_HIT;
|
||||
if ((this->collider.elements[0].info.bumperFlags & BUMP_HIT) ||
|
||||
(this->collider.elements[1].info.bumperFlags & BUMP_HIT)) {
|
||||
|
||||
@@ -278,7 +278,9 @@ void func_80888734(BgHidanHamstep* this) {
|
||||
}
|
||||
|
||||
void func_808887C4(BgHidanHamstep* this, PlayState* play) {
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, (this->dyna.actor.params >> 8) & 0xFF)) {
|
||||
// #endregion
|
||||
OnePointCutscene_Init(play, 3310, 100, &this->dyna.actor, MAIN_CAM);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_HAMMER_SWITCH);
|
||||
this->collider.base.acFlags = AC_NONE;
|
||||
|
||||
@@ -201,7 +201,9 @@ void func_8088960C(BgHidanHrock* this, PlayState* play) {
|
||||
}
|
||||
|
||||
void func_808896B8(BgHidanHrock* this, PlayState* play) {
|
||||
if (this->collider.base.acFlags & 2) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & 2) || Flags_GetSwitch(play, this->unk_16A)) {
|
||||
// #endregion
|
||||
this->collider.base.acFlags &= ~2;
|
||||
this->actionFunc = func_808894B0;
|
||||
this->dyna.actor.flags |= ACTOR_FLAG_UPDATE_WHILE_CULLED;
|
||||
|
||||
@@ -303,7 +303,9 @@ void BgHidanKowarerukabe_Update(Actor* thisx, PlayState* play) {
|
||||
BgHidanKowarerukabe* this = (BgHidanKowarerukabe*)thisx;
|
||||
s32 pad;
|
||||
|
||||
if (Actor_GetCollidedExplosive(play, &this->collider.base) != NULL) {
|
||||
// #region SOH [Co-op]
|
||||
if ((Actor_GetCollidedExplosive(play, &this->collider.base) != NULL) || Flags_GetSwitch(play, (this->dyna.actor.params >> 8) & 0x3F)) {
|
||||
// #endregion
|
||||
BgHidanKowarerukabe_Break(this, play);
|
||||
Flags_SetSwitch(play, (this->dyna.actor.params >> 8) & 0x3F);
|
||||
|
||||
|
||||
@@ -333,10 +333,12 @@ void func_8089107C(BgIceShelter* this, PlayState* play) {
|
||||
MeltOnIceArrowHit(this, this->cylinder2, type, play);
|
||||
}
|
||||
// Default blue fire check
|
||||
if (this->cylinder1.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->cylinder1.base.acFlags & AC_HIT) || Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
this->cylinder1.base.acFlags &= ~AC_HIT;
|
||||
|
||||
if ((this->cylinder1.base.ac != NULL) && (this->cylinder1.base.ac->id == ACTOR_EN_ICE_HONO)) {
|
||||
if (((this->cylinder1.base.ac != NULL) && (this->cylinder1.base.ac->id == ACTOR_EN_ICE_HONO)) || Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
if (type == 4) {
|
||||
if (this->dyna.actor.parent != NULL) {
|
||||
this->dyna.actor.parent->freezeTimer = 50;
|
||||
|
||||
@@ -142,7 +142,9 @@ void BgJyaBombchuiwa_SetupWaitForExplosion(BgJyaBombchuiwa* this, PlayState* pla
|
||||
}
|
||||
|
||||
void BgJyaBombchuiwa_WaitForExplosion(BgJyaBombchuiwa* this, PlayState* play) {
|
||||
if ((this->collider.base.acFlags & AC_HIT) || (this->timer > 0)) {
|
||||
// #region SOH [Co-op]
|
||||
if (((this->collider.base.acFlags & AC_HIT) || (this->timer > 0)) || Flags_GetSwitch(play, this->actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
if (this->timer == 0) {
|
||||
OnePointCutscene_Init(play, 3410, -99, &this->actor, MAIN_CAM);
|
||||
}
|
||||
|
||||
@@ -163,7 +163,9 @@ void BgJyaBombiwa_Break(BgJyaBombiwa* this, PlayState* play) {
|
||||
void BgJyaBombiwa_Update(Actor* thisx, PlayState* play) {
|
||||
BgJyaBombiwa* this = (BgJyaBombiwa*)thisx;
|
||||
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
BgJyaBombiwa_Break(this, play);
|
||||
Flags_SetSwitch(play, this->dyna.actor.params & 0x3F);
|
||||
SoundSource_PlaySfxAtFixedWorldPos(play, &this->dyna.actor.world.pos, 40, NA_SE_EV_WALL_BROKEN);
|
||||
|
||||
@@ -467,7 +467,9 @@ void BgMizuBwall_SpawnDebris(BgMizuBwall* this, PlayState* play) {
|
||||
|
||||
void BgMizuBwall_Idle(BgMizuBwall* this, PlayState* play) {
|
||||
BgMizuBwall_SetAlpha(this, play);
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
|
||||
// #endregion
|
||||
this->collider.base.acFlags &= ~AC_HIT;
|
||||
Flags_SetSwitch(play, ((u16)this->dyna.actor.params >> 8) & 0x3F);
|
||||
this->breakTimer = 1;
|
||||
|
||||
@@ -183,7 +183,9 @@ void BgSpot08Bakudankabe_Destroy(Actor* thisx, PlayState* play) {
|
||||
void BgSpot08Bakudankabe_Update(Actor* thisx, PlayState* play) {
|
||||
BgSpot08Bakudankabe* this = (BgSpot08Bakudankabe*)thisx;
|
||||
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, (this->dyna.actor.params & 0x3F))) {
|
||||
// #endregion
|
||||
func_808B0324(this, play);
|
||||
Flags_SetSwitch(play, (this->dyna.actor.params & 0x3F));
|
||||
SoundSource_PlaySfxAtFixedWorldPos(play, &this->dyna.actor.world.pos, 40, NA_SE_EV_WALL_BROKEN);
|
||||
|
||||
@@ -135,7 +135,9 @@ void BgSpot11Bakudankabe_Destroy(Actor* thisx, PlayState* play) {
|
||||
void BgSpot11Bakudankabe_Update(Actor* thisx, PlayState* play) {
|
||||
BgSpot11Bakudankabe* this = (BgSpot11Bakudankabe*)thisx;
|
||||
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, (this->dyna.actor.params & 0x3F))) {
|
||||
// #endregion
|
||||
func_808B2218(this, play);
|
||||
Flags_SetSwitch(play, (this->dyna.actor.params & 0x3F));
|
||||
SoundSource_PlaySfxAtFixedWorldPos(play, &D_808B2738, 40, NA_SE_EV_WALL_BROKEN);
|
||||
|
||||
@@ -114,7 +114,9 @@ void BgSpot17Bakudankabe_Destroy(Actor* thisx, PlayState* play) {
|
||||
|
||||
void BgSpot17Bakudankabe_Update(Actor* thisx, PlayState* play) {
|
||||
BgSpot17Bakudankabe* this = (BgSpot17Bakudankabe*)thisx;
|
||||
if (this->dyna.actor.xzDistToPlayer < 650.0f && func_80033684(play, &this->dyna.actor) != NULL) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->dyna.actor.xzDistToPlayer < 650.0f && func_80033684(play, &this->dyna.actor) != NULL) || Flags_GetSwitch(play, (this->dyna.actor.params & 0x3F))) {
|
||||
// #endregion
|
||||
func_808B6BC0(this, play);
|
||||
Flags_SetSwitch(play, (this->dyna.actor.params & 0x3F));
|
||||
SoundSource_PlaySfxAtFixedWorldPos(play, &this->dyna.actor.world.pos, 40, NA_SE_EV_WALL_BROKEN);
|
||||
|
||||
@@ -146,7 +146,9 @@ void func_808BEFF4(BgYdanMaruta* this, PlayState* play) {
|
||||
}
|
||||
|
||||
void func_808BF078(BgYdanMaruta* this, PlayState* play) {
|
||||
if (this->collider.base.acFlags & AC_HIT) {
|
||||
// #region SOH [Co-op]
|
||||
if ((this->collider.base.acFlags & AC_HIT) || Flags_GetSwitch(play, this->switchFlag)) {
|
||||
// #endregion
|
||||
this->unk_16A = 20;
|
||||
Flags_SetSwitch(play, this->switchFlag);
|
||||
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
|
||||
|
||||
@@ -282,6 +282,12 @@ void BgYdanSp_FloorWebIdle(BgYdanSp* this, PlayState* play) {
|
||||
webPos.x = this->dyna.actor.world.pos.x;
|
||||
webPos.y = this->dyna.actor.world.pos.y - 50.0f;
|
||||
webPos.z = this->dyna.actor.world.pos.z;
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetSwitch(play, this->isDestroyedSwitchFlag)) {
|
||||
BgYdanSp_BurnWeb(this, play);
|
||||
return;
|
||||
}
|
||||
// #endregion
|
||||
if (Player_IsBurningStickInRange(play, &webPos, 70.0f, 50.0f) != 0) {
|
||||
this->dyna.actor.home.pos.x = player->meleeWeaponInfo[0].tip.x;
|
||||
this->dyna.actor.home.pos.z = player->meleeWeaponInfo[0].tip.z;
|
||||
@@ -411,6 +417,11 @@ void BgYdanSp_WallWebIdle(BgYdanSp* this, PlayState* play) {
|
||||
BgYdanSp_BurnWeb(this, play);
|
||||
}
|
||||
}
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetSwitch(play, this->isDestroyedSwitchFlag)) {
|
||||
BgYdanSp_BurnWeb(this, play);
|
||||
}
|
||||
// #endregion
|
||||
CollisionCheck_SetAC(play, &play->colChkCtx, &this->trisCollider.base);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include "z_door_gerudo.h"
|
||||
#include "objects/object_door_gerudo/object_door_gerudo.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
|
||||
#define FLAGS 0
|
||||
|
||||
@@ -103,6 +104,7 @@ void func_8099485C(DoorGerudo* this, PlayState* play) {
|
||||
gSaveContext.inventory.dungeonKeys[gSaveContext.mapIndex] -= 1;
|
||||
Flags_SetSwitch(play, this->dyna.actor.params & 0x3F);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_CHAIN_KEY_UNLOCK);
|
||||
GameInteractor_ExecuteOnDungeonKeyUsedHooks(gSaveContext.mapIndex);
|
||||
} else {
|
||||
s32 direction = func_80994750(this, play);
|
||||
|
||||
|
||||
@@ -379,6 +379,7 @@ void func_80996B0C(DoorShutter* this, PlayState* play) {
|
||||
if (this->doorType != SHUTTER_BOSS) {
|
||||
gSaveContext.inventory.dungeonKeys[gSaveContext.mapIndex]--;
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_CHAIN_KEY_UNLOCK);
|
||||
GameInteractor_ExecuteOnDungeonKeyUsedHooks(gSaveContext.mapIndex);
|
||||
} else {
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_CHAIN_KEY_UNLOCK_B);
|
||||
}
|
||||
@@ -645,6 +646,11 @@ void DoorShutter_Update(Actor* thisx, PlayState* play) {
|
||||
if (!(player->stateFlags1 & (PLAYER_STATE1_TALKING | PLAYER_STATE1_DEAD | PLAYER_STATE1_GETTING_ITEM | PLAYER_STATE1_IN_ITEM_CS)) || (this->actionFunc == DoorShutter_SetupType)) {
|
||||
this->actionFunc(this, play);
|
||||
}
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetSwitch(play, this->dyna.actor.params & 0x3F)) {
|
||||
DECR(this->unk_16E);
|
||||
}
|
||||
// #endregion
|
||||
}
|
||||
|
||||
Gfx* func_80997838(PlayState* play, DoorShutter* this, Gfx* p) {
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "objects/object_mizu_objects/object_mizu_objects.h"
|
||||
#include "objects/object_haka_door/object_haka_door.h"
|
||||
#include "soh/ResourceManagerHelpers.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
|
||||
#include "soh/Enhancements/Holiday/Archez.h"
|
||||
|
||||
@@ -206,6 +207,7 @@ void EnDoor_Idle(EnDoor* this, PlayState* play) {
|
||||
gSaveContext.inventory.dungeonKeys[gSaveContext.mapIndex]--;
|
||||
Flags_SetSwitch(play, this->actor.params & 0x3F);
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EV_CHAIN_KEY_UNLOCK);
|
||||
GameInteractor_ExecuteOnDungeonKeyUsedHooks(gSaveContext.mapIndex);
|
||||
}
|
||||
} else if (!Player_InCsMode(play)) {
|
||||
if (fabsf(playerPosRelToDoor.y) < 20.0f && fabsf(playerPosRelToDoor.x) < 20.0f &&
|
||||
@@ -233,6 +235,11 @@ void EnDoor_Idle(EnDoor* this, PlayState* play) {
|
||||
this->actionFunc = EnDoor_AjarOpen;
|
||||
}
|
||||
}
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetSwitch(play, this->actor.params & 0x3F)) {
|
||||
DECR(this->lockTimer);
|
||||
}
|
||||
// #endregion
|
||||
}
|
||||
|
||||
void EnDoor_WaitForCheck(EnDoor* this, PlayState* play) {
|
||||
|
||||
@@ -149,6 +149,13 @@ void func_80AFB950(EnSi* this, PlayState* play) {
|
||||
void EnSi_Update(Actor* thisx, PlayState* play) {
|
||||
EnSi* this = (EnSi*)thisx;
|
||||
|
||||
// #region SOH [Co-op]
|
||||
if (GET_GS_FLAGS((thisx->params & 0x1F00) >> 8) & (thisx->params & 0xFF)) {
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
// #endregion
|
||||
|
||||
Actor_MoveXZGravity(&this->actor);
|
||||
Actor_UpdateBgCheckInfo(play, &this->actor, 0.0f, 0.0f, 0.0f, 4);
|
||||
this->actionFunc(this, play);
|
||||
|
||||
@@ -916,6 +916,13 @@ void func_80B0E9BC(EnSw* this, PlayState* play) {
|
||||
void EnSw_Update(Actor* thisx, PlayState* play) {
|
||||
EnSw* this = (EnSw*)thisx;
|
||||
|
||||
// #region SOH [Co-op]
|
||||
if (GET_GS_FLAGS((thisx->params & 0x1F00) >> 8) & (thisx->params & 0xFF)) {
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
// #endregion
|
||||
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
func_80B0C9F0(this, play);
|
||||
this->actionFunc(this, play);
|
||||
|
||||
@@ -55,6 +55,13 @@ void ItemBHeart_Destroy(Actor* thisx, PlayState* play) {
|
||||
void ItemBHeart_Update(Actor* thisx, PlayState* play) {
|
||||
ItemBHeart* this = (ItemBHeart*)thisx;
|
||||
|
||||
// #region SOH [Co-op]
|
||||
if (Flags_GetCollectible(play, 0x1F)) {
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
// #endregion
|
||||
|
||||
func_80B85264(this, play);
|
||||
Actor_UpdateBgCheckInfo(play, &this->actor, 0.0f, 0.0f, 0.0f, 4);
|
||||
if (Actor_HasParent(&this->actor, play)) {
|
||||
|
||||
@@ -125,8 +125,10 @@ void ObjBombiwa_Update(Actor* thisx, PlayState* play) {
|
||||
ObjBombiwa* this = (ObjBombiwa*)thisx;
|
||||
s32 pad;
|
||||
|
||||
// #region SOH [Co-op]
|
||||
if ((func_80033684(play, &this->actor) != NULL) ||
|
||||
((this->collider.base.acFlags & AC_HIT) && (this->collider.info.acHitInfo->toucher.dmgFlags & 0x40000040))) {
|
||||
((this->collider.base.acFlags & AC_HIT) && (this->collider.info.acHitInfo->toucher.dmgFlags & 0x40000040)) || Flags_GetSwitch(play, this->actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
ObjBombiwa_Break(this, play);
|
||||
Flags_SetSwitch(play, this->actor.params & 0x3F);
|
||||
SoundSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 80, NA_SE_EV_WALL_BROKEN);
|
||||
|
||||
@@ -171,10 +171,12 @@ void ObjHamishi_Update(Actor* thisx, PlayState* play) {
|
||||
|
||||
ObjHamishi_Shake(this);
|
||||
|
||||
if ((this->collider.base.acFlags & AC_HIT) && (this->collider.info.acHitInfo->toucher.dmgFlags & 0x40000040)) {
|
||||
// #region SOH [Co-op]
|
||||
if (((this->collider.base.acFlags & AC_HIT) && (this->collider.info.acHitInfo->toucher.dmgFlags & 0x40000040)) || Flags_GetSwitch(play, this->actor.params & 0x3F)) {
|
||||
this->collider.base.acFlags &= ~AC_HIT;
|
||||
this->hitCount++;
|
||||
if (this->hitCount < 2) {
|
||||
if (this->hitCount < 2 && !Flags_GetSwitch(play, this->actor.params & 0x3F)) {
|
||||
// #endregion
|
||||
this->shakeFrames = 15;
|
||||
this->shakePosSize = 2.0f;
|
||||
this->shakeRotSize = 400.0f;
|
||||
|
||||
Reference in New Issue
Block a user