mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-14 02:27:21 -07:00
couple cues for phantom ganon
This commit is contained in:
parent
79f55456d3
commit
24e617b765
1 changed files with 33 additions and 2 deletions
|
@ -647,6 +647,35 @@ void ActorAccessibility_InitActors() {
|
|||
policy.volume = 0.5;
|
||||
policy.pitch = 1.2;
|
||||
ActorAccessibility_AddSupportedActor(ACTOR_BG_MORI_HASHIRA4, policy);
|
||||
ActorAccessibility_InitPolicy(&policy, "Forest Elevator", NA_SE_EV_ELEVATOR_MOVE2);
|
||||
policy.n = 40;
|
||||
policy.ydist = 1;
|
||||
policy.distance = 300;
|
||||
ActorAccessibility_AddSupportedActor(ACTOR_BG_MORI_ELEVATOR, policy);
|
||||
ActorAccessibility_InitPolicy(&policy, "Phantom Ganon", [](AccessibleActor* actor) {
|
||||
if (actor->actor->params == 1) {
|
||||
actor->policy.aimAssist.isProvider = AIM_SHOOT | AIM_HOOK;
|
||||
} else {
|
||||
actor->policy.aimAssist.isProvider = 0;
|
||||
}
|
||||
});
|
||||
policy.distance = 2000;
|
||||
policy.ydist = 2000;
|
||||
ActorAccessibility_AddSupportedActor(ACTOR_BOSS_GANONDROF, policy);
|
||||
ActorAccessibility_InitPolicy(&policy, "Phantom Ganon Ball", [](AccessibleActor* actor) {
|
||||
if (actor->actor->params == 50) { // energy ball
|
||||
int distance = actor->xyzDistToPlayer;
|
||||
int freq = distance < 200 ? 1 : distance < 400 ? 3 : 7;
|
||||
if ((actor->frameCount & freq) == 0) {
|
||||
ActorAccessibility_PlaySoundForActor(
|
||||
actor, 0, freq <= 3 ? NA_SE_IT_SWORD_REFLECT_MG : NA_SE_IT_SHIELD_REFLECT_MG);
|
||||
}
|
||||
}
|
||||
});
|
||||
policy.volume = 2;
|
||||
policy.distance = 900;
|
||||
policy.ydist = 900;
|
||||
ActorAccessibility_AddSupportedActor(ACTOR_EN_FHG_FIRE, policy);
|
||||
ActorAccessibility_InitPolicy(&policy, "Ocarina Spots", NA_SE_EV_DIAMOND_SWITCH);
|
||||
policy.n = 30;
|
||||
policy.distance = 800;
|
||||
|
@ -1151,8 +1180,10 @@ void ActorAccessibility_InitActors() {
|
|||
auto forest_basement = [](AccessibleActor* actor) {
|
||||
Actor* walls = Actor_Find(&actor->play->actorCtx, ACTOR_BG_MORI_KAITENKABE, ACTORCAT_BG);
|
||||
if (walls != nullptr) {
|
||||
actor->pos.x = walls->world.pos.x + Math_CosS(-walls->world.rot.y) * (actor->policy.sound == 0 ? -300.0f : 300.0f);
|
||||
actor->pos.z = walls->world.pos.z + Math_SinS(-walls->world.rot.y) * (actor->policy.sound == 0 ? -300.0f : 300.0f);
|
||||
actor->pos.x =
|
||||
walls->world.pos.x + Math_CosS(-walls->world.rot.y) * (actor->policy.sound == 0 ? -300.0f : 300.0f);
|
||||
actor->pos.z =
|
||||
walls->world.pos.z + Math_SinS(-walls->world.rot.y) * (actor->policy.sound == 0 ? -300.0f : 300.0f);
|
||||
if ((actor->frameCount & 31) == 0) {
|
||||
ActorAccessibility_PlaySoundForActor(actor, 0, NA_SE_EV_TRAP_BOUND);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue