From 633c7242b5287064be45eb864ddc972c924dfae3 Mon Sep 17 00:00:00 2001 From: Demur Rumed Date: Mon, 12 May 2025 03:26:19 +0000 Subject: [PATCH] aim assist on lost woods target --- .../accessible-actors/AccessibleActorList.cpp | 12 +++++++++--- .../accessible-actors/ActorAccessibility.cpp | 3 ++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/soh/soh/Enhancements/accessible-actors/AccessibleActorList.cpp b/soh/soh/Enhancements/accessible-actors/AccessibleActorList.cpp index 60dc5c1dc..8a1b07052 100644 --- a/soh/soh/Enhancements/accessible-actors/AccessibleActorList.cpp +++ b/soh/soh/Enhancements/accessible-actors/AccessibleActorList.cpp @@ -947,7 +947,7 @@ void ActorAccessibility_InitActors() { ActorAccessibility_AddVirtualActor(list, VA_AUDIO_COMPASS, { { 0.0, 0.0, 0.0 }, { 0, 0, 0 } }); ActorAccessibility_AddVirtualActor(list, VA_STICK_WARNING, { { 0.0, 0.0, 0.0 }, { 0, 0, 0 } }); - list = ActorAccessibility_GetVirtualActorList(SCENE_KOKIRI_FOREST, 0); // Kokiri Forest + list = ActorAccessibility_GetVirtualActorList(SCENE_KOKIRI_FOREST, 0); ActorAccessibility_AddVirtualActor(list, VA_CRAWLSPACE, { { -784.0, 120.0, 1046.00 }, { 0, 14702, 0 } }); ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { 2146.5, 1.0, -142.8 } }); @@ -955,6 +955,13 @@ void ActorAccessibility_InitActors() { list = ActorAccessibility_GetVirtualActorList(SCENE_KOKIRI_FOREST, 2); ActorAccessibility_AddVirtualActor(list, VA_CRAWLSPACE, { { -788.0, 120.0, 1392.00 }, { 0, 14702, 0 } }); + list = ActorAccessibility_GetVirtualActorList(SCENE_LOST_WOODS, 1); + AccessibleActor* temp = + ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { 1348.0, 25.0, -25.00 } }); + temp->policy.aimAssist.isProvider = true; + temp->policy.distance = 700; + temp->policy.n = 1; + list = ActorAccessibility_GetVirtualActorList(SCENE_DEKU_TREE, 2); // deku tree slingshot room list = ActorAccessibility_GetVirtualActorList(SCENE_DEKU_TREE, 10); // deku tree compass room @@ -970,8 +977,7 @@ void ActorAccessibility_InitActors() { ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { -1958, 20, -1297 } }); list = ActorAccessibility_GetVirtualActorList(SCENE_JABU_JABU, 2); - AccessibleActor* temp = - ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { -260, -400, -3377 } }); // green tentacle hole + temp = ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { -260, -400, -3377 } }); // green tentacle hole temp->policy.distance = 200; temp->policy.sound = NA_SE_EN_DAIOCTA_DEAD; temp = ActorAccessibility_AddVirtualActor(list, VA_MARKER, { { 230, -400, -3211 } }); // ruto hole diff --git a/soh/soh/Enhancements/accessible-actors/ActorAccessibility.cpp b/soh/soh/Enhancements/accessible-actors/ActorAccessibility.cpp index 597758d74..e96537662 100644 --- a/soh/soh/Enhancements/accessible-actors/ActorAccessibility.cpp +++ b/soh/soh/Enhancements/accessible-actors/ActorAccessibility.cpp @@ -331,6 +331,7 @@ void ActorAccessibility_CopyParamsFromRealActor(AccessibleActor* actor) { actor->projectedPos = actor->actor->projectedPos; actor->xzDistToPlayer = actor->actor->xzDistToPlayer; actor->isDrawn = actor->actor->isDrawn; + actor->world = actor->actor->world; actor->xyzDistToPlayer = Math_Vec3f_DistXYZ(&actor->actor->world.pos, &player->actor.world.pos); } @@ -629,7 +630,7 @@ void ActorAccessibility_ProvideAimAssistForActor(AccessibleActor* actor) { angle = angle / -14000.0 * 16384; f32 slope = Math_SinS(angle) / Math_CosS(angle) * 1.0; s32 yIntercept = (slope * (actor->xzDistToPlayer)) + player->actor.focus.pos.y; - s32 yHight = actor->actor->world.pos.y + 25; + s32 yHight = actor->world.pos.y + 25; if (slope < 1) { slope = 1; }