diff --git a/src/Game/AI/AI/aiAirOctaFlyUp.cpp b/src/Game/AI/AI/aiAirOctaFlyUp.cpp index 03d12752..5c16d715 100644 --- a/src/Game/AI/AI/aiAirOctaFlyUp.cpp +++ b/src/Game/AI/AI/aiAirOctaFlyUp.cpp @@ -45,8 +45,13 @@ void AirOctaFlyUp::enter_(ksys::act::ai::InlineParamPack* params) { } void AirOctaFlyUp::leave_() { - ksys::act::ai::Ai::leave_(); + if (auto* data_mgr = sead::DynamicCast((AirOctaDataMgr*)*mAirOctaDataMgr_a)){ + data_mgr->unk_118 = *mTargetDistance_d + data_mgr->unk_118; + data_mgr->unk_114 = 0; + return data_mgr->sub_71002FB17C(); + } } + float sub_71002FB17C(); void AirOctaFlyUp::loadParams_() { diff --git a/src/Game/AI/AI/aiAirOctaFlyUp.h b/src/Game/AI/AI/aiAirOctaFlyUp.h index 2fcaec55..99fbe6c5 100644 --- a/src/Game/AI/AI/aiAirOctaFlyUp.h +++ b/src/Game/AI/AI/aiAirOctaFlyUp.h @@ -14,6 +14,7 @@ public: /* 0x18 */ ksys::act::BaseProcLink mBaseProcLink; char placeFiller[0xEC]; /*0x114 */ u32 unk_114; + /*0x118 */ float unk_118; }; class AirOctaFlyUp : public ksys::act::ai::Ai {