snd: move sound actions and AIs to KingSystem/Sound

They link with KingSystem/Sound (0x7100fe8b54-0x7101060ed4) as sorted
Action/AI passes of their own. The three area tag actions keep their
game base AreaTagAction, which links in the Game/Actor/Area block.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
This commit is contained in:
Léo Lam
2026-09-28 03:39:30 +02:00
parent 7bc225838a
commit a168b93bbc
77 changed files with 660 additions and 652 deletions
@@ -0,0 +1,8 @@
target_sources(uking PRIVATE
aiEnvSeEmitPointRootAI.cpp
aiEnvSeEmitPointRootAI.h
aiSignaledSpotBgmTrigger.cpp
aiSignaledSpotBgmTrigger.h
aiSpotBgmTrigger.cpp
aiSpotBgmTrigger.h
)
@@ -0,0 +1,26 @@
#include "KingSystem/Sound/Actor/AI/aiEnvSeEmitPointRootAI.h"
namespace ksys::snd {
EnvSeEmitPointRootAI::EnvSeEmitPointRootAI(const InitArg& arg) : ksys::act::ai::Ai(arg) {}
EnvSeEmitPointRootAI::~EnvSeEmitPointRootAI() = default;
bool EnvSeEmitPointRootAI::init_(sead::Heap* heap) {
return ksys::act::ai::Ai::init_(heap);
}
void EnvSeEmitPointRootAI::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Ai::enter_(params);
}
void EnvSeEmitPointRootAI::leave_() {
ksys::act::ai::Ai::leave_();
}
void EnvSeEmitPointRootAI::loadParams_() {
getStaticParam(&mInvalidatePlayDistance_s, "InvalidatePlayDistance");
getStaticParam(&mPlayDistance_s, "PlayDistance");
}
} // namespace ksys::snd
@@ -0,0 +1,25 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAi.h"
namespace ksys::snd {
class EnvSeEmitPointRootAI : public ksys::act::ai::Ai {
SEAD_RTTI_OVERRIDE(EnvSeEmitPointRootAI, ksys::act::ai::Ai)
public:
explicit EnvSeEmitPointRootAI(const InitArg& arg);
~EnvSeEmitPointRootAI() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
// static_param at offset 0x38
const float* mInvalidatePlayDistance_s{};
// static_param at offset 0x40
const float* mPlayDistance_s{};
};
} // namespace ksys::snd
@@ -0,0 +1,26 @@
#include "KingSystem/Sound/Actor/AI/aiSignaledSpotBgmTrigger.h"
namespace ksys::snd {
SignaledSpotBgmTrigger::SignaledSpotBgmTrigger(const InitArg& arg) : ksys::act::ai::Ai(arg) {}
SignaledSpotBgmTrigger::~SignaledSpotBgmTrigger() = default;
bool SignaledSpotBgmTrigger::init_(sead::Heap* heap) {
return ksys::act::ai::Ai::init_(heap);
}
void SignaledSpotBgmTrigger::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Ai::enter_(params);
}
void SignaledSpotBgmTrigger::leave_() {
ksys::act::ai::Ai::leave_();
}
void SignaledSpotBgmTrigger::loadParams_() {
getMapUnitParam(&mIsStopWithoutReductionY_m, "IsStopWithoutReductionY");
getMapUnitParam(&mSound_m, "Sound");
}
} // namespace ksys::snd
@@ -0,0 +1,25 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAi.h"
namespace ksys::snd {
class SignaledSpotBgmTrigger : public ksys::act::ai::Ai {
SEAD_RTTI_OVERRIDE(SignaledSpotBgmTrigger, ksys::act::ai::Ai)
public:
explicit SignaledSpotBgmTrigger(const InitArg& arg);
~SignaledSpotBgmTrigger() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
// map_unit_param at offset 0x38
const bool* mIsStopWithoutReductionY_m{};
// map_unit_param at offset 0x40
sead::SafeString mSound_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,26 @@
#include "KingSystem/Sound/Actor/AI/aiSpotBgmTrigger.h"
namespace ksys::snd {
SpotBgmTrigger::SpotBgmTrigger(const InitArg& arg) : ksys::act::ai::Ai(arg) {}
SpotBgmTrigger::~SpotBgmTrigger() = default;
bool SpotBgmTrigger::init_(sead::Heap* heap) {
return ksys::act::ai::Ai::init_(heap);
}
void SpotBgmTrigger::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Ai::enter_(params);
}
void SpotBgmTrigger::leave_() {
ksys::act::ai::Ai::leave_();
}
void SpotBgmTrigger::loadParams_() {
getMapUnitParam(&mIsStopWithoutReductionY_m, "IsStopWithoutReductionY");
getMapUnitParam(&mSound_m, "Sound");
}
} // namespace ksys::snd
@@ -0,0 +1,25 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAi.h"
namespace ksys::snd {
class SpotBgmTrigger : public ksys::act::ai::Ai {
SEAD_RTTI_OVERRIDE(SpotBgmTrigger, ksys::act::ai::Ai)
public:
explicit SpotBgmTrigger(const InitArg& arg);
~SpotBgmTrigger() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
// map_unit_param at offset 0x38
const bool* mIsStopWithoutReductionY_m{};
// map_unit_param at offset 0x40
sead::SafeString mSound_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,64 @@
target_sources(uking PRIVATE
actionBattleDungeonBGMAction.cpp
actionBattleDungeonBGMAction.h
actionCustomDuckingEndAction.cpp
actionCustomDuckingEndAction.h
actionCustomDuckingStartAction.cpp
actionCustomDuckingStartAction.h
actionEnvSeEmitPointBirdPlayAction.cpp
actionEnvSeEmitPointBirdPlayAction.h
actionEnvSeEmitPointInsectPlayAction.cpp
actionEnvSeEmitPointInsectPlayAction.h
actionEventBgmCtrlAction.cpp
actionEventBgmCtrlAction.h
actionEventBgmStartAction.cpp
actionEventBgmStartAction.h
actionEventBgmStartAndKeepAction.cpp
actionEventBgmStartAndKeepAction.h
actionEventBgmStopAction.cpp
actionEventBgmStopAction.h
actionFrontierSpotBgmTriggerAction.cpp
actionFrontierSpotBgmTriggerAction.h
actionGroupAllowEmitAction.cpp
actionGroupAllowEmitAction.h
actionGroupDisallowEmitAction.cpp
actionGroupDisallowEmitAction.h
actionKillAllDemoSoundAction.cpp
actionKillAllDemoSoundAction.h
actionListenerFixPositionAction.cpp
actionListenerFixPositionAction.h
actionListenerSetModeAction.cpp
actionListenerSetModeAction.h
actionMusicianSpotBgmTriggerAction.cpp
actionMusicianSpotBgmTriggerAction.h
actionPlayerEmitEquipmentNoise.cpp
actionPlayerEmitEquipmentNoise.h
actionSceneBgmCtrlAction.cpp
actionSceneBgmCtrlAction.h
actionSceneSoundCtrlAction.cpp
actionSceneSoundCtrlAction.h
actionSceneSoundKillDuckingAction.cpp
actionSceneSoundKillDuckingAction.h
actionSceneSoundNotifyTalkAction.cpp
actionSceneSoundNotifyTalkAction.h
actionSceneSoundSetEndProcAction.cpp
actionSceneSoundSetEndProcAction.h
actionSceneSoundSetStartProcAction.cpp
actionSceneSoundSetStartProcAction.h
actionSceneSoundStartDuckingAction.cpp
actionSceneSoundStartDuckingAction.h
actionSceneSoundStopDuckingAction.cpp
actionSceneSoundStopDuckingAction.h
actionSoundOcclusionTagAction.cpp
actionSoundOcclusionTagAction.h
actionSoundProxyRootAction.cpp
actionSoundProxyRootAction.h
actionSoundReverbAreaTagAction.cpp
actionSoundReverbAreaTagAction.h
actionSoundShieldingAreaTagAction.cpp
actionSoundShieldingAreaTagAction.h
actionSpotBgmTriggerAction.cpp
actionSpotBgmTriggerAction.h
actionStopAllDemoSoundAction.cpp
actionStopAllDemoSoundAction.h
)
@@ -0,0 +1,27 @@
#include "KingSystem/Sound/Actor/Action/actionBattleDungeonBGMAction.h"
namespace ksys::snd {
BattleDungeonBGMAction::BattleDungeonBGMAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
BattleDungeonBGMAction::~BattleDungeonBGMAction() = default;
bool BattleDungeonBGMAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void BattleDungeonBGMAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void BattleDungeonBGMAction::leave_() {
ksys::act::ai::Action::leave_();
}
void BattleDungeonBGMAction::loadParams_() {}
void BattleDungeonBGMAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,22 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class BattleDungeonBGMAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(BattleDungeonBGMAction, ksys::act::ai::Action)
public:
explicit BattleDungeonBGMAction(const InitArg& arg);
~BattleDungeonBGMAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,15 @@
#include "KingSystem/Sound/Actor/Action/actionCustomDuckingEndAction.h"
namespace ksys::snd {
CustomDuckingEndAction::CustomDuckingEndAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
CustomDuckingEndAction::~CustomDuckingEndAction() = default;
bool CustomDuckingEndAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void CustomDuckingEndAction::loadParams_() {}
} // namespace ksys::snd
@@ -0,0 +1,19 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class CustomDuckingEndAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(CustomDuckingEndAction, ksys::act::ai::Action)
public:
explicit CustomDuckingEndAction(const InitArg& arg);
~CustomDuckingEndAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
};
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#include "KingSystem/Sound/Actor/Action/actionCustomDuckingStartAction.h"
namespace ksys::snd {
CustomDuckingStartAction::CustomDuckingStartAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
CustomDuckingStartAction::~CustomDuckingStartAction() = default;
bool CustomDuckingStartAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void CustomDuckingStartAction::loadParams_() {
getDynamicParam(&mVolume_d, "Volume");
getDynamicParam(&mFadeOutSec_d, "FadeOutSec");
getDynamicParam(&mFadeInSec_d, "FadeInSec");
getDynamicParam(&mStartDelaySec_d, "StartDelaySec");
getDynamicParam(&mTargetGroups_d, "TargetGroups");
getDynamicParam(&mExceptGroups_d, "ExceptGroups");
}
} // namespace ksys::snd
@@ -0,0 +1,31 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class CustomDuckingStartAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(CustomDuckingStartAction, ksys::act::ai::Action)
public:
explicit CustomDuckingStartAction(const InitArg& arg);
~CustomDuckingStartAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
float* mVolume_d{};
// dynamic_param at offset 0x28
float* mFadeOutSec_d{};
// dynamic_param at offset 0x30
float* mFadeInSec_d{};
// dynamic_param at offset 0x38
float* mStartDelaySec_d{};
// dynamic_param at offset 0x40
sead::SafeString mTargetGroups_d{};
// dynamic_param at offset 0x50
sead::SafeString mExceptGroups_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,28 @@
#include "KingSystem/Sound/Actor/Action/actionEnvSeEmitPointBirdPlayAction.h"
namespace ksys::snd {
EnvSeEmitPointBirdPlayAction::EnvSeEmitPointBirdPlayAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
EnvSeEmitPointBirdPlayAction::~EnvSeEmitPointBirdPlayAction() = default;
bool EnvSeEmitPointBirdPlayAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EnvSeEmitPointBirdPlayAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void EnvSeEmitPointBirdPlayAction::leave_() {
ksys::act::ai::Action::leave_();
}
void EnvSeEmitPointBirdPlayAction::loadParams_() {}
void EnvSeEmitPointBirdPlayAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,22 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EnvSeEmitPointBirdPlayAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EnvSeEmitPointBirdPlayAction, ksys::act::ai::Action)
public:
explicit EnvSeEmitPointBirdPlayAction(const InitArg& arg);
~EnvSeEmitPointBirdPlayAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,28 @@
#include "KingSystem/Sound/Actor/Action/actionEnvSeEmitPointInsectPlayAction.h"
namespace ksys::snd {
EnvSeEmitPointInsectPlayAction::EnvSeEmitPointInsectPlayAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
EnvSeEmitPointInsectPlayAction::~EnvSeEmitPointInsectPlayAction() = default;
bool EnvSeEmitPointInsectPlayAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EnvSeEmitPointInsectPlayAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void EnvSeEmitPointInsectPlayAction::leave_() {
ksys::act::ai::Action::leave_();
}
void EnvSeEmitPointInsectPlayAction::loadParams_() {}
void EnvSeEmitPointInsectPlayAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,22 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EnvSeEmitPointInsectPlayAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EnvSeEmitPointInsectPlayAction, ksys::act::ai::Action)
public:
explicit EnvSeEmitPointInsectPlayAction(const InitArg& arg);
~EnvSeEmitPointInsectPlayAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionEventBgmCtrlAction.h"
namespace ksys::snd {
EventBgmCtrlAction::EventBgmCtrlAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
EventBgmCtrlAction::~EventBgmCtrlAction() = default;
bool EventBgmCtrlAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EventBgmCtrlAction::loadParams_() {
getDynamicParam(&mCtrlType_d, "CtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EventBgmCtrlAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EventBgmCtrlAction, ksys::act::ai::Action)
public:
explicit EventBgmCtrlAction(const InitArg& arg);
~EventBgmCtrlAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionEventBgmStartAction.h"
namespace ksys::snd {
EventBgmStartAction::EventBgmStartAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
EventBgmStartAction::~EventBgmStartAction() = default;
bool EventBgmStartAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EventBgmStartAction::loadParams_() {
getDynamicParam(&mBgmName_d, "BgmName");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EventBgmStartAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EventBgmStartAction, ksys::act::ai::Action)
public:
explicit EventBgmStartAction(const InitArg& arg);
~EventBgmStartAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mBgmName_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,30 @@
#include "KingSystem/Sound/Actor/Action/actionEventBgmStartAndKeepAction.h"
namespace ksys::snd {
EventBgmStartAndKeepAction::EventBgmStartAndKeepAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
EventBgmStartAndKeepAction::~EventBgmStartAndKeepAction() = default;
bool EventBgmStartAndKeepAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EventBgmStartAndKeepAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void EventBgmStartAndKeepAction::leave_() {
ksys::act::ai::Action::leave_();
}
void EventBgmStartAndKeepAction::loadParams_() {
getDynamicParam(&mBgmName_d, "BgmName");
}
void EventBgmStartAndKeepAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,25 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EventBgmStartAndKeepAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EventBgmStartAndKeepAction, ksys::act::ai::Action)
public:
explicit EventBgmStartAndKeepAction(const InitArg& arg);
~EventBgmStartAndKeepAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// dynamic_param at offset 0x20
sead::SafeString mBgmName_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionEventBgmStopAction.h"
namespace ksys::snd {
EventBgmStopAction::EventBgmStopAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
EventBgmStopAction::~EventBgmStopAction() = default;
bool EventBgmStopAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void EventBgmStopAction::loadParams_() {
getDynamicParam(&mFadeSec_d, "FadeSec");
getDynamicParam(&mBgmName_d, "BgmName");
}
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class EventBgmStopAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(EventBgmStopAction, ksys::act::ai::Action)
public:
explicit EventBgmStopAction(const InitArg& arg);
~EventBgmStopAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
float* mFadeSec_d{};
// dynamic_param at offset 0x28
sead::SafeString mBgmName_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,34 @@
#include "KingSystem/Sound/Actor/Action/actionFrontierSpotBgmTriggerAction.h"
namespace ksys::snd {
FrontierSpotBgmTriggerAction::FrontierSpotBgmTriggerAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
FrontierSpotBgmTriggerAction::~FrontierSpotBgmTriggerAction() = default;
bool FrontierSpotBgmTriggerAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void FrontierSpotBgmTriggerAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void FrontierSpotBgmTriggerAction::leave_() {
ksys::act::ai::Action::leave_();
}
void FrontierSpotBgmTriggerAction::loadParams_() {
getDynamicParam(&mSound_d, "Sound");
getMapUnitParam(&mSpotBgmLifeScaleMargin_m, "SpotBgmLifeScaleMargin");
getMapUnitParam(&mIsStopWithoutReductionY_m, "IsStopWithoutReductionY");
getMapUnitParam(&mSound_m, "Sound");
getMapUnitParam(&mShape_m, "Shape");
}
void FrontierSpotBgmTriggerAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,33 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class FrontierSpotBgmTriggerAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(FrontierSpotBgmTriggerAction, ksys::act::ai::Action)
public:
explicit FrontierSpotBgmTriggerAction(const InitArg& arg);
~FrontierSpotBgmTriggerAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// dynamic_param at offset 0x20
sead::SafeString mSound_d{};
// map_unit_param at offset 0x30
const float* mSpotBgmLifeScaleMargin_m{};
// map_unit_param at offset 0x38
const bool* mIsStopWithoutReductionY_m{};
// map_unit_param at offset 0x40
sead::SafeString mSound_m{};
// map_unit_param at offset 0x50
sead::SafeString mShape_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionGroupAllowEmitAction.h"
namespace ksys::snd {
GroupAllowEmitAction::GroupAllowEmitAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
GroupAllowEmitAction::~GroupAllowEmitAction() = default;
bool GroupAllowEmitAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void GroupAllowEmitAction::loadParams_() {
getDynamicParam(&mGroupName_d, "GroupName");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class GroupAllowEmitAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(GroupAllowEmitAction, ksys::act::ai::Action)
public:
explicit GroupAllowEmitAction(const InitArg& arg);
~GroupAllowEmitAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mGroupName_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionGroupDisallowEmitAction.h"
namespace ksys::snd {
GroupDisallowEmitAction::GroupDisallowEmitAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
GroupDisallowEmitAction::~GroupDisallowEmitAction() = default;
bool GroupDisallowEmitAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void GroupDisallowEmitAction::loadParams_() {
getDynamicParam(&mGroupName_d, "GroupName");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class GroupDisallowEmitAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(GroupDisallowEmitAction, ksys::act::ai::Action)
public:
explicit GroupDisallowEmitAction(const InitArg& arg);
~GroupDisallowEmitAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mGroupName_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,15 @@
#include "KingSystem/Sound/Actor/Action/actionKillAllDemoSoundAction.h"
namespace ksys::snd {
KillAllDemoSoundAction::KillAllDemoSoundAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
KillAllDemoSoundAction::~KillAllDemoSoundAction() = default;
bool KillAllDemoSoundAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void KillAllDemoSoundAction::loadParams_() {}
} // namespace ksys::snd
@@ -0,0 +1,19 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class KillAllDemoSoundAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(KillAllDemoSoundAction, ksys::act::ai::Action)
public:
explicit KillAllDemoSoundAction(const InitArg& arg);
~KillAllDemoSoundAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionListenerFixPositionAction.h"
namespace ksys::snd {
ListenerFixPositionAction::ListenerFixPositionAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
ListenerFixPositionAction::~ListenerFixPositionAction() = default;
bool ListenerFixPositionAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void ListenerFixPositionAction::loadParams_() {
getDynamicParam(&mFixType_d, "FixType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class ListenerFixPositionAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(ListenerFixPositionAction, ksys::act::ai::Action)
public:
explicit ListenerFixPositionAction(const InitArg& arg);
~ListenerFixPositionAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mFixType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionListenerSetModeAction.h"
namespace ksys::snd {
ListenerSetModeAction::ListenerSetModeAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
ListenerSetModeAction::~ListenerSetModeAction() = default;
bool ListenerSetModeAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void ListenerSetModeAction::loadParams_() {
getDynamicParam(&mMode_d, "Mode");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class ListenerSetModeAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(ListenerSetModeAction, ksys::act::ai::Action)
public:
explicit ListenerSetModeAction(const InitArg& arg);
~ListenerSetModeAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mMode_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,30 @@
#include "KingSystem/Sound/Actor/Action/actionMusicianSpotBgmTriggerAction.h"
namespace ksys::snd {
MusicianSpotBgmTriggerAction::MusicianSpotBgmTriggerAction(const InitArg& arg)
: SpotBgmTriggerAction(arg) {}
MusicianSpotBgmTriggerAction::~MusicianSpotBgmTriggerAction() = default;
bool MusicianSpotBgmTriggerAction::init_(sead::Heap* heap) {
return SpotBgmTriggerAction::init_(heap);
}
void MusicianSpotBgmTriggerAction::enter_(ksys::act::ai::InlineParamPack* params) {
SpotBgmTriggerAction::enter_(params);
}
void MusicianSpotBgmTriggerAction::leave_() {
SpotBgmTriggerAction::leave_();
}
void MusicianSpotBgmTriggerAction::loadParams_() {
SpotBgmTriggerAction::loadParams_();
}
void MusicianSpotBgmTriggerAction::calc_() {
SpotBgmTriggerAction::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
#include "KingSystem/Sound/Actor/Action/actionSpotBgmTriggerAction.h"
namespace ksys::snd {
class MusicianSpotBgmTriggerAction : public SpotBgmTriggerAction {
SEAD_RTTI_OVERRIDE(MusicianSpotBgmTriggerAction, SpotBgmTriggerAction)
public:
explicit MusicianSpotBgmTriggerAction(const InitArg& arg);
~MusicianSpotBgmTriggerAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,19 @@
#include "KingSystem/Sound/Actor/Action/actionPlayerEmitEquipmentNoise.h"
namespace ksys::snd {
PlayerEmitEquipmentNoise::PlayerEmitEquipmentNoise(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
PlayerEmitEquipmentNoise::~PlayerEmitEquipmentNoise() = default;
bool PlayerEmitEquipmentNoise::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void PlayerEmitEquipmentNoise::loadParams_() {
getDynamicParam(&mSteppingFoot_d, "SteppingFoot");
getDynamicParam(&mSpeed_d, "Speed");
}
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class PlayerEmitEquipmentNoise : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(PlayerEmitEquipmentNoise, ksys::act::ai::Action)
public:
explicit PlayerEmitEquipmentNoise(const InitArg& arg);
~PlayerEmitEquipmentNoise() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mSteppingFoot_d{};
// dynamic_param at offset 0x30
sead::SafeString mSpeed_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,17 @@
#include "KingSystem/Sound/Actor/Action/actionSceneBgmCtrlAction.h"
namespace ksys::snd {
SceneBgmCtrlAction::SceneBgmCtrlAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
SceneBgmCtrlAction::~SceneBgmCtrlAction() = default;
bool SceneBgmCtrlAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneBgmCtrlAction::loadParams_() {
getDynamicParam(&mCtrlType_d, "CtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneBgmCtrlAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneBgmCtrlAction, ksys::act::ai::Action)
public:
explicit SceneBgmCtrlAction(const InitArg& arg);
~SceneBgmCtrlAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundCtrlAction.h"
namespace ksys::snd {
SceneSoundCtrlAction::SceneSoundCtrlAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
SceneSoundCtrlAction::~SceneSoundCtrlAction() = default;
bool SceneSoundCtrlAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundCtrlAction::loadParams_() {
getDynamicParam(&mBgmCtrlType_d, "BgmCtrlType");
getDynamicParam(&mSeCtrlType_d, "SeCtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundCtrlAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundCtrlAction, ksys::act::ai::Action)
public:
explicit SceneSoundCtrlAction(const InitArg& arg);
~SceneSoundCtrlAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mBgmCtrlType_d{};
// dynamic_param at offset 0x30
sead::SafeString mSeCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundKillDuckingAction.h"
namespace ksys::snd {
SceneSoundKillDuckingAction::SceneSoundKillDuckingAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundKillDuckingAction::~SceneSoundKillDuckingAction() = default;
bool SceneSoundKillDuckingAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundKillDuckingAction::loadParams_() {
getDynamicParam(&mDuckerType_d, "DuckerType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundKillDuckingAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundKillDuckingAction, ksys::act::ai::Action)
public:
explicit SceneSoundKillDuckingAction(const InitArg& arg);
~SceneSoundKillDuckingAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mDuckerType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundNotifyTalkAction.h"
namespace ksys::snd {
SceneSoundNotifyTalkAction::SceneSoundNotifyTalkAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundNotifyTalkAction::~SceneSoundNotifyTalkAction() = default;
bool SceneSoundNotifyTalkAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundNotifyTalkAction::loadParams_() {
getDynamicParam(&mCtrlType_d, "CtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundNotifyTalkAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundNotifyTalkAction, ksys::act::ai::Action)
public:
explicit SceneSoundNotifyTalkAction(const InitArg& arg);
~SceneSoundNotifyTalkAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundSetEndProcAction.h"
namespace ksys::snd {
SceneSoundSetEndProcAction::SceneSoundSetEndProcAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundSetEndProcAction::~SceneSoundSetEndProcAction() = default;
bool SceneSoundSetEndProcAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundSetEndProcAction::loadParams_() {
getDynamicParam(&mCtrlType_d, "CtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundSetEndProcAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundSetEndProcAction, ksys::act::ai::Action)
public:
explicit SceneSoundSetEndProcAction(const InitArg& arg);
~SceneSoundSetEndProcAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,19 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundSetStartProcAction.h"
namespace ksys::snd {
SceneSoundSetStartProcAction::SceneSoundSetStartProcAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundSetStartProcAction::~SceneSoundSetStartProcAction() = default;
bool SceneSoundSetStartProcAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundSetStartProcAction::loadParams_() {
getDynamicParam(&mBgmCtrlType_d, "BgmCtrlType");
getDynamicParam(&mSeCtrlType_d, "SeCtrlType");
}
} // namespace ksys::snd
@@ -0,0 +1,23 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundSetStartProcAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundSetStartProcAction, ksys::act::ai::Action)
public:
explicit SceneSoundSetStartProcAction(const InitArg& arg);
~SceneSoundSetStartProcAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mBgmCtrlType_d{};
// dynamic_param at offset 0x30
sead::SafeString mSeCtrlType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundStartDuckingAction.h"
namespace ksys::snd {
SceneSoundStartDuckingAction::SceneSoundStartDuckingAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundStartDuckingAction::~SceneSoundStartDuckingAction() = default;
bool SceneSoundStartDuckingAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundStartDuckingAction::loadParams_() {
getDynamicParam(&mDuckerType_d, "DuckerType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundStartDuckingAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundStartDuckingAction, ksys::act::ai::Action)
public:
explicit SceneSoundStartDuckingAction(const InitArg& arg);
~SceneSoundStartDuckingAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mDuckerType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,18 @@
#include "KingSystem/Sound/Actor/Action/actionSceneSoundStopDuckingAction.h"
namespace ksys::snd {
SceneSoundStopDuckingAction::SceneSoundStopDuckingAction(const InitArg& arg)
: ksys::act::ai::Action(arg) {}
SceneSoundStopDuckingAction::~SceneSoundStopDuckingAction() = default;
bool SceneSoundStopDuckingAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SceneSoundStopDuckingAction::loadParams_() {
getDynamicParam(&mDuckerType_d, "DuckerType");
}
} // namespace ksys::snd
@@ -0,0 +1,21 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SceneSoundStopDuckingAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SceneSoundStopDuckingAction, ksys::act::ai::Action)
public:
explicit SceneSoundStopDuckingAction(const InitArg& arg);
~SceneSoundStopDuckingAction() override;
bool init_(sead::Heap* heap) override;
void loadParams_() override;
protected:
// dynamic_param at offset 0x20
sead::SafeString mDuckerType_d{};
};
} // namespace ksys::snd
@@ -0,0 +1,29 @@
#include "KingSystem/Sound/Actor/Action/actionSoundOcclusionTagAction.h"
namespace ksys::snd {
SoundOcclusionTagAction::SoundOcclusionTagAction(const InitArg& arg) : AreaTagAction(arg) {}
SoundOcclusionTagAction::~SoundOcclusionTagAction() = default;
bool SoundOcclusionTagAction::init_(sead::Heap* heap) {
return AreaTagAction::init_(heap);
}
void SoundOcclusionTagAction::enter_(ksys::act::ai::InlineParamPack* params) {
AreaTagAction::enter_(params);
}
void SoundOcclusionTagAction::leave_() {
AreaTagAction::leave_();
}
void SoundOcclusionTagAction::loadParams_() {
getStaticParam(&mOcclusionLevel_s, "OcclusionLevel");
}
void SoundOcclusionTagAction::calc_() {
AreaTagAction::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,26 @@
#pragma once
#include "Game/Actor/Area/Action/actionAreaTagAction.h"
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SoundOcclusionTagAction : public uking::action::AreaTagAction {
SEAD_RTTI_OVERRIDE(SoundOcclusionTagAction, uking::action::AreaTagAction)
public:
explicit SoundOcclusionTagAction(const InitArg& arg);
~SoundOcclusionTagAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// static_param at offset 0x48
const float* mOcclusionLevel_s{};
};
} // namespace ksys::snd
@@ -0,0 +1,27 @@
#include "KingSystem/Sound/Actor/Action/actionSoundProxyRootAction.h"
namespace ksys::snd {
SoundProxyRootAction::SoundProxyRootAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
SoundProxyRootAction::~SoundProxyRootAction() = default;
bool SoundProxyRootAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SoundProxyRootAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void SoundProxyRootAction::leave_() {
ksys::act::ai::Action::leave_();
}
void SoundProxyRootAction::loadParams_() {}
void SoundProxyRootAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,22 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SoundProxyRootAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SoundProxyRootAction, ksys::act::ai::Action)
public:
explicit SoundProxyRootAction(const InitArg& arg);
~SoundProxyRootAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,34 @@
#include "KingSystem/Sound/Actor/Action/actionSoundReverbAreaTagAction.h"
namespace ksys::snd {
SoundReverbAreaTagAction::SoundReverbAreaTagAction(const InitArg& arg) : AreaTagAction(arg) {}
SoundReverbAreaTagAction::~SoundReverbAreaTagAction() = default;
bool SoundReverbAreaTagAction::init_(sead::Heap* heap) {
return AreaTagAction::init_(heap);
}
void SoundReverbAreaTagAction::enter_(ksys::act::ai::InlineParamPack* params) {
AreaTagAction::enter_(params);
}
void SoundReverbAreaTagAction::leave_() {
AreaTagAction::leave_();
}
void SoundReverbAreaTagAction::loadParams_() {
getMapUnitParam(&mReverbSendAdd_m, "ReverbSendAdd");
getMapUnitParam(&mReverbTimeAdd_m, "ReverbTimeAdd");
getMapUnitParam(&mEarlyReflectionFeedbackAdd_m, "EarlyReflectionFeedbackAdd");
getMapUnitParam(&mRoomHfAdd_m, "RoomHfAdd");
getMapUnitParam(&mReverbAdd_m, "ReverbAdd");
getMapUnitParam(&mMerginDistance_m, "MerginDistance");
}
void SoundReverbAreaTagAction::calc_() {
AreaTagAction::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,36 @@
#pragma once
#include "Game/Actor/Area/Action/actionAreaTagAction.h"
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SoundReverbAreaTagAction : public uking::action::AreaTagAction {
SEAD_RTTI_OVERRIDE(SoundReverbAreaTagAction, uking::action::AreaTagAction)
public:
explicit SoundReverbAreaTagAction(const InitArg& arg);
~SoundReverbAreaTagAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// map_unit_param at offset 0x70
const float* mReverbSendAdd_m{};
// map_unit_param at offset 0x78
const float* mReverbTimeAdd_m{};
// map_unit_param at offset 0x80
const float* mEarlyReflectionFeedbackAdd_m{};
// map_unit_param at offset 0x88
const float* mRoomHfAdd_m{};
// map_unit_param at offset 0x90
const float* mReverbAdd_m{};
// map_unit_param at offset 0x98
const float* mMerginDistance_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,30 @@
#include "KingSystem/Sound/Actor/Action/actionSoundShieldingAreaTagAction.h"
namespace ksys::snd {
SoundShieldingAreaTagAction::SoundShieldingAreaTagAction(const InitArg& arg) : AreaTagAction(arg) {}
SoundShieldingAreaTagAction::~SoundShieldingAreaTagAction() = default;
bool SoundShieldingAreaTagAction::init_(sead::Heap* heap) {
return AreaTagAction::init_(heap);
}
void SoundShieldingAreaTagAction::enter_(ksys::act::ai::InlineParamPack* params) {
AreaTagAction::enter_(params);
}
void SoundShieldingAreaTagAction::leave_() {
AreaTagAction::leave_();
}
void SoundShieldingAreaTagAction::loadParams_() {
getMapUnitParam(&mMerginDistance_m, "MerginDistance");
getMapUnitParam(&mIsShieldChemicalWind_m, "IsShieldChemicalWind");
}
void SoundShieldingAreaTagAction::calc_() {
AreaTagAction::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,28 @@
#pragma once
#include "Game/Actor/Area/Action/actionAreaTagAction.h"
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SoundShieldingAreaTagAction : public uking::action::AreaTagAction {
SEAD_RTTI_OVERRIDE(SoundShieldingAreaTagAction, uking::action::AreaTagAction)
public:
explicit SoundShieldingAreaTagAction(const InitArg& arg);
~SoundShieldingAreaTagAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// map_unit_param at offset 0x38
const float* mMerginDistance_m{};
// map_unit_param at offset 0x40
const bool* mIsShieldChemicalWind_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,31 @@
#include "KingSystem/Sound/Actor/Action/actionSpotBgmTriggerAction.h"
namespace ksys::snd {
SpotBgmTriggerAction::SpotBgmTriggerAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
SpotBgmTriggerAction::~SpotBgmTriggerAction() = default;
bool SpotBgmTriggerAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void SpotBgmTriggerAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void SpotBgmTriggerAction::leave_() {
ksys::act::ai::Action::leave_();
}
void SpotBgmTriggerAction::loadParams_() {
getDynamicParam(&mSound_d, "Sound");
getMapUnitParam(&mIsStopWithoutReductionY_m, "IsStopWithoutReductionY");
getMapUnitParam(&mSound_m, "Sound");
}
void SpotBgmTriggerAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,29 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class SpotBgmTriggerAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(SpotBgmTriggerAction, ksys::act::ai::Action)
public:
explicit SpotBgmTriggerAction(const InitArg& arg);
~SpotBgmTriggerAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
// dynamic_param at offset 0x20
sead::SafeString mSound_d{};
// map_unit_param at offset 0x30
const bool* mIsStopWithoutReductionY_m{};
// map_unit_param at offset 0x38
sead::SafeString mSound_m{};
};
} // namespace ksys::snd
@@ -0,0 +1,27 @@
#include "KingSystem/Sound/Actor/Action/actionStopAllDemoSoundAction.h"
namespace ksys::snd {
StopAllDemoSoundAction::StopAllDemoSoundAction(const InitArg& arg) : ksys::act::ai::Action(arg) {}
StopAllDemoSoundAction::~StopAllDemoSoundAction() = default;
bool StopAllDemoSoundAction::init_(sead::Heap* heap) {
return ksys::act::ai::Action::init_(heap);
}
void StopAllDemoSoundAction::enter_(ksys::act::ai::InlineParamPack* params) {
ksys::act::ai::Action::enter_(params);
}
void StopAllDemoSoundAction::leave_() {
ksys::act::ai::Action::leave_();
}
void StopAllDemoSoundAction::loadParams_() {}
void StopAllDemoSoundAction::calc_() {
ksys::act::ai::Action::calc_();
}
} // namespace ksys::snd
@@ -0,0 +1,22 @@
#pragma once
#include "KingSystem/ActorSystem/actAiAction.h"
namespace ksys::snd {
class StopAllDemoSoundAction : public ksys::act::ai::Action {
SEAD_RTTI_OVERRIDE(StopAllDemoSoundAction, ksys::act::ai::Action)
public:
explicit StopAllDemoSoundAction(const InitArg& arg);
~StopAllDemoSoundAction() override;
bool init_(sead::Heap* heap) override;
void enter_(ksys::act::ai::InlineParamPack* params) override;
void leave_() override;
void loadParams_() override;
protected:
void calc_() override;
};
} // namespace ksys::snd
@@ -0,0 +1,2 @@
add_subdirectory(Action)
add_subdirectory(AI)
+2
View File
@@ -1,3 +1,5 @@
add_subdirectory(Actor)
target_sources(uking PRIVATE
sndInfoData.cpp
sndInfoData.h