Sound event callback tables

This commit is contained in:
robojumper
2025-06-28 22:00:52 +02:00
parent 415e388fee
commit 474d83b08b
12 changed files with 608 additions and 106 deletions
+259
View File
@@ -0,0 +1,259 @@
#include "common.h"
#include "d/snd/d_snd_event.h"
#include "d/snd/d_snd_stage_data.h"
#include "d/snd/d_snd_state_mgr.h"
void todoInititalizeSndEvent();
void todoExecuteSndEvent();
void todoFinalizeSndEvent();
#pragma push
#pragma readonly_strings on
// clang-format off
static const SndEventDef sSndEventDefs_GLOBAL[] = {
{ "DefaultStart", SND_EVENT_DefaultStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "SkyDiveStart", SND_EVENT_SkyDiveStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "ShortDiveStart", SND_EVENT_ShortDiveStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "ParachuteStart", SND_EVENT_ParachuteStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "SirenBackStart", SND_EVENT_SirenBackStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "TimeDoorIn", SND_EVENT_TimeDoorIn, nullptr, todoExecuteSndEvent, nullptr},
{ "TimeDoorOut", SND_EVENT_TimeDoorOut, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "ReturnSkyloft", SND_EVENT_ReturnSkyloft, todoInititalizeSndEvent, nullptr, nullptr},
{ "Shutter", SND_EVENT_Shutter, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "DayTime", SND_EVENT_DayTime, todoInititalizeSndEvent, nullptr, nullptr},
{ "BedStart", SND_EVENT_BedStart, todoInititalizeSndEvent, nullptr, nullptr},
{ "TboxShow", SND_EVENT_TboxShow, todoInititalizeSndEvent, nullptr, nullptr},
{ "TreasureBoxOpen", SND_EVENT_TreasureBoxOpen, todoInititalizeSndEvent, nullptr, nullptr},
{ "TreasureBoxOpenBoss", SND_EVENT_TreasureBoxOpenBoss, todoInititalizeSndEvent, nullptr, nullptr},
{ "FaysSirenSong", SND_EVENT_FaysSirenSong, todoInititalizeSndEvent, nullptr, nullptr},
{ "fays_song_fin_siren", SND_EVENT_fays_song_fin_siren, todoInititalizeSndEvent, nullptr, nullptr},
{ "SDGateInOpen", SND_EVENT_SDGateInOpen, todoInititalizeSndEvent, nullptr, nullptr},
{ "SealedDoorOpen", SND_EVENT_SealedDoorOpen, todoInititalizeSndEvent, nullptr, nullptr},
{ "SealedDoorClose", SND_EVENT_SealedDoorClose, todoInititalizeSndEvent, nullptr, nullptr},
{ "HeartContainer", SND_EVENT_HeartContainer, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "ordinary_sword_sprit", SND_EVENT_ordinary_sword_sprit, todoInititalizeSndEvent, nullptr, nullptr},
{ "fays_navigate", SND_EVENT_fays_navigate, todoInititalizeSndEvent, nullptr, nullptr},
{ "fays_allert", SND_EVENT_fays_allert, todoInititalizeSndEvent, nullptr, nullptr},
{ "DefaultGetItem", SND_EVENT_DefaultGetItem, todoInititalizeSndEvent, nullptr, nullptr},
{ "ItemGetGorgeous", SND_EVENT_ItemGetGorgeous, todoInititalizeSndEvent, nullptr, nullptr},
{ "Save", SND_EVENT_Save, todoInititalizeSndEvent, nullptr, nullptr},
{ "SwordDraw", SND_EVENT_SwordDraw, todoInititalizeSndEvent, nullptr, nullptr},
{ "SwordDrawDoorNew", SND_EVENT_SwordDrawDoorNew, todoInititalizeSndEvent, nullptr, nullptr},
{ "DoorBossGame", SND_EVENT_DoorBossGame, todoInititalizeSndEvent, nullptr, nullptr},
{ "FallRestart", SND_EVENT_FallRestart, todoInititalizeSndEvent, nullptr, nullptr},
{ "DeadMagma", SND_EVENT_DeadMagma, todoInititalizeSndEvent, nullptr, nullptr},
{ "DeadSink", SND_EVENT_DeadSink, todoInititalizeSndEvent, nullptr, nullptr},
{ "Dead", SND_EVENT_Dead, todoInititalizeSndEvent, nullptr, nullptr},
{ "DeadDive", SND_EVENT_DeadDive, nullptr, todoExecuteSndEvent, nullptr},
{ "SirenChaser2", SND_EVENT_SirenChaser2, nullptr, nullptr, todoFinalizeSndEvent},
{ "JMAP", SND_EVENT_JMAP, todoInititalizeSndEvent, nullptr, nullptr},
{ "JMAPAllMove", SND_EVENT_JMAPAllMove, todoInititalizeSndEvent, nullptr, nullptr},
{ "OracleInSiren", SND_EVENT_OracleInSiren, todoInititalizeSndEvent, nullptr, nullptr},
{ "HarpPerformanceResult", SND_EVENT_HarpPerformanceResult, nullptr, todoExecuteSndEvent, nullptr},
{ "F102Intro2", SND_EVENT_F102Intro2, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "Uo", SND_EVENT_Uo, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "WaterfallStop", SND_EVENT_WaterfallStop, nullptr, nullptr, todoFinalizeSndEvent},
{ "F103Intro2", SND_EVENT_F103Intro2, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "Onp", SND_EVENT_Onp, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "F103_UoMS", SND_EVENT_F103_UoMS, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "F200IntroByFay", SND_EVENT_F200IntroByFay, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "F202_R02Intro", SND_EVENT_F202_R02Intro, todoInititalizeSndEvent, nullptr, nullptr},
{ "SearchLightDemo", SND_EVENT_SearchLightDemo, nullptr, nullptr, nullptr},
{ "F300_1IntroByFay", SND_EVENT_F300_1IntroByFay, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "FirstTimeSlip", SND_EVENT_FirstTimeSlip, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "F301IntroByFay", SND_EVENT_F301IntroByFay, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "F302RevivalRairyu", SND_EVENT_F302RevivalRairyu, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "F402L3QuakeStart", SND_EVENT_F402L3QuakeStart, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Girahimu3SecondAppearDemo", SND_EVENT_Girahimu3SecondAppearDemo, nullptr, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "SF_start", SND_EVENT_SF_start, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "GirahimuSwordDemo", SND_EVENT_GirahimuSwordDemo, nullptr, todoExecuteSndEvent, nullptr},
{ "AsuraStart", SND_EVENT_AsuraStart, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "AsuraStartB", SND_EVENT_AsuraStartB, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "RollRockLspAppear", SND_EVENT_RollRockLspAppear, todoInititalizeSndEvent, nullptr, nullptr},
{ "RollRockChangeVera", SND_EVENT_RollRockChangeVera, todoInititalizeSndEvent, nullptr, nullptr},
{ "MG_start", SND_EVENT_MG_start, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "BLS_demo2", SND_EVENT_BLS_demo2, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BLS_end", SND_EVENT_BLS_end, todoInititalizeSndEvent, nullptr, nullptr},
{ "ECaptain_c_Opening", SND_EVENT_ECaptain_c_Opening, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "D003Intro", SND_EVENT_D003Intro, todoInititalizeSndEvent, nullptr, nullptr},
{ "ECaptain_c_OpeningType2", SND_EVENT_ECaptain_c_OpeningType2, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "SF4_End", SND_EVENT_SF4_End, nullptr, nullptr, nullptr},
{ "TriforceWarp", SND_EVENT_TriforceWarp, nullptr, todoExecuteSndEvent, nullptr},
};
static const SndEventDef sSndEventDefs_F000[] = {
{"CeremonyByRescueTeam", SND_EVENT_CeremonyByRescueTeam, todoInititalizeSndEvent, nullptr, nullptr},
{ "BirdRaceStart", SND_EVENT_BirdRaceStart, nullptr, nullptr, todoFinalizeSndEvent},
{ "GoddessGateOpen", SND_EVENT_GoddessGateOpen, nullptr, todoExecuteSndEvent, nullptr},
{ "FaysPharosSong", SND_EVENT_FaysPharosSong, todoInititalizeSndEvent, nullptr, nullptr},
{ "fays_song_pharos", SND_EVENT_fays_song_pharos, todoInititalizeSndEvent, nullptr, nullptr},
{"fays_song_fin_pharos", SND_EVENT_fays_song_fin_pharos, nullptr, nullptr, todoFinalizeSndEvent},
};
static const SndEventDef sSndEventDefs_F001r[] = {
{"OracleInSiren", SND_EVENT_OracleInSiren, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_F020[] = {
{ "ItemGetBird", SND_EVENT_ItemGetBird, todoInititalizeSndEvent, nullptr, nullptr},
{ "DivingMGStart", SND_EVENT_DivingMGStart, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "DiveGameResult", SND_EVENT_DiveGameResult, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "StartCarryPumpkin", SND_EVENT_StartCarryPumpkin, todoInititalizeSndEvent, nullptr, nullptr},
{ "CarryPumpkinResultsFailed", SND_EVENT_CarryPumpkinResultsFailed, todoInititalizeSndEvent, nullptr, nullptr},
{"CarryPumpkinResultsSuccessful", SND_EVENT_CarryPumpkinResultsSuccessful, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_F023[] = {
{ "NusiAppearDemo", SND_EVENT_NusiAppearDemo, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{"NusiTHideAppearDemo", SND_EVENT_NusiTHideAppearDemo, todoInititalizeSndEvent, nullptr, nullptr},
{ "TenAppearDemo", SND_EVENT_TenAppearDemo, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "NusiTDeathDemo", SND_EVENT_NusiTDeathDemo, todoInititalizeSndEvent, nullptr, nullptr},
{ "NusiDeathDemo", SND_EVENT_NusiDeathDemo, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
};
static const SndEventDef sSndEventDefs_F100[] = {
{"F100IntroByFay", SND_EVENT_F100IntroByFay, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BC_wakidasi", SND_EVENT_BC_wakidasi, todoInititalizeSndEvent, nullptr, nullptr},
{ "Kyui3Fall", SND_EVENT_Kyui3Fall, nullptr, nullptr, todoFinalizeSndEvent},
};
static const SndEventDef sSndEventDefs_F401[] = {
{"F401IntroByFay", SND_EVENT_F401IntroByFay, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BBossAppear", SND_EVENT_BBossAppear, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "BBFLYDEMO", SND_EVENT_BBFLYDEMO, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "BBossEvac", SND_EVENT_BBossEvac, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BBoss2Evac", SND_EVENT_BBoss2Evac, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BBoss3Evac", SND_EVENT_BBoss3Evac, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BBFuuin", SND_EVENT_BBFuuin, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{ "BBHDTH", SND_EVENT_BBHDTH, nullptr, nullptr, nullptr},
{ "BBHDRC", SND_EVENT_BBHDRC, nullptr, nullptr, nullptr},
{ "BBFCL", SND_EVENT_BBFCL, nullptr, nullptr, nullptr},
{ "BBTUTO", SND_EVENT_BBTUTO, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_D101[] = {
{ "SF4_Op", SND_EVENT_SF4_Op, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "SF4_End", SND_EVENT_SF4_End, todoInititalizeSndEvent, nullptr, nullptr},
{"JMAPAllMove", SND_EVENT_JMAPAllMove, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_D200[] = {
{"ELizarufos_c_opening", SND_EVENT_ELizarufos_c_opening, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "D200R04Rock", SND_EVENT_D200R04Rock, todoInititalizeSndEvent, nullptr, nullptr},
{ "RollRockLspJump", SND_EVENT_RollRockLspJump, todoInititalizeSndEvent, nullptr, nullptr},
{ "JMAP", SND_EVENT_JMAP, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_D201[] = {
{ "MoleInitFear", SND_EVENT_MoleInitFear, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"MolePushSwitch", SND_EVENT_MolePushSwitch, todoInititalizeSndEvent, nullptr, nullptr},
{ "MoleInitTalk", SND_EVENT_MoleInitTalk, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "CatchMole", SND_EVENT_CatchMole, todoInititalizeSndEvent, nullptr, nullptr},
{ "D201IronFence", SND_EVENT_D201IronFence, todoInititalizeSndEvent, nullptr, nullptr},
{ "MogMolShut", SND_EVENT_MogMolShut, nullptr, nullptr, todoFinalizeSndEvent},
{ "MogMolOpen", SND_EVENT_MogMolOpen, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
{ "LavaPlate", SND_EVENT_LavaPlate, todoInititalizeSndEvent, nullptr, nullptr},
{ "ResqueMole", SND_EVENT_ResqueMole, todoInititalizeSndEvent, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_B301[] = {
{ "BKR_start", SND_EVENT_BKR_start, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{ "BKR_end", SND_EVENT_BKR_end, todoInititalizeSndEvent, todoExecuteSndEvent, todoFinalizeSndEvent},
{"BKR_armCaught", SND_EVENT_BKR_armCaught, nullptr, nullptr, nullptr},
};
static const SndEventDef sSndEventDefs_D003_1[] = {
{"NeedleUnderground", SND_EVENT_NeedleUnderground, todoInititalizeSndEvent, nullptr, todoFinalizeSndEvent},
};
// clang-format on
#pragma pop
bool dSndStateMgr_c::handleStageEvent(const char *name) {
if (field_0x08C != SND_EVENT_0x87) {
const SndEventDef *def = nullptr;
s32 defCount = 0;
switch (field_0x044) {
case SND_STAGE_F000:
def = sSndEventDefs_F000;
defCount = ARRAY_LENGTH(sSndEventDefs_F000);
break;
case SND_STAGE_F001r:
def = sSndEventDefs_F001r;
defCount = ARRAY_LENGTH(sSndEventDefs_F001r);
break;
case SND_STAGE_F020:
def = sSndEventDefs_F020;
defCount = ARRAY_LENGTH(sSndEventDefs_F020);
break;
case SND_STAGE_F023:
def = sSndEventDefs_F023;
defCount = ARRAY_LENGTH(sSndEventDefs_F023);
break;
case SND_STAGE_F100:
def = sSndEventDefs_F100;
defCount = ARRAY_LENGTH(sSndEventDefs_F100);
break;
case SND_STAGE_F401:
def = sSndEventDefs_F401;
defCount = ARRAY_LENGTH(sSndEventDefs_F401);
break;
case SND_STAGE_D101:
def = sSndEventDefs_D101;
defCount = ARRAY_LENGTH(sSndEventDefs_D101);
break;
case SND_STAGE_D200:
def = sSndEventDefs_D200;
defCount = ARRAY_LENGTH(sSndEventDefs_D200);
break;
case SND_STAGE_D201:
def = sSndEventDefs_D201;
defCount = ARRAY_LENGTH(sSndEventDefs_D201);
break;
case SND_STAGE_B301:
def = sSndEventDefs_B301;
defCount = ARRAY_LENGTH(sSndEventDefs_B301);
break;
case SND_STAGE_D003_1:
def = sSndEventDefs_D003_1;
defCount = ARRAY_LENGTH(sSndEventDefs_D003_1);
break;
}
if (def != nullptr && defCount > 0) {
for (s32 i = 0; i < defCount; def++, i++) {
if (streq(name, def->eventName)) {
field_0x08C = def->eventId;
field_0x234 = def;
sEventExecuteCallback = def->executeCb;
if (def->initializeCb != nullptr) {
(def->initializeCb)();
}
return true;
}
}
}
}
return false;
}
bool dSndStateMgr_c::handleGlobalEvent(const char *name) {
if (field_0x08C != SND_EVENT_0x87) {
for (const SndEventDef *def = sSndEventDefs_GLOBAL;
def < sSndEventDefs_GLOBAL + ARRAY_LENGTH(sSndEventDefs_GLOBAL); def++) {
if (streq(name, def->eventName)) {
field_0x08C = def->eventId;
field_0x234 = def;
sEventExecuteCallback = def->executeCb;
if (def->initializeCb != nullptr) {
(def->initializeCb)();
}
return true;
}
}
}
return false;
}
+48
View File
@@ -0,0 +1,48 @@
#include "common.h"
#include "d/snd/d_snd_event.h"
#include "d/snd/d_snd_state_mgr.h"
void todoInititalizeSndEvent();
void todoExecuteSndEvent();
void todoFinalizeSndEvent();
// clang-format off
static const SndEventDef sSndEventDefs_DEMO[] = {
{"Demo03_03", SND_EVENT_Demo03_03, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo08_01", SND_EVENT_Demo08_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo15_04", SND_EVENT_Demo15_04, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo36_01", SND_EVENT_Demo36_01, nullptr, todoExecuteSndEvent, nullptr},
{"Demo41_01", SND_EVENT_Demo41_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo59_01", SND_EVENT_Demo59_01, nullptr, todoExecuteSndEvent, nullptr},
{"Demo62_01", SND_EVENT_Demo62_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo64_06", SND_EVENT_Demo64_06, todoInititalizeSndEvent, nullptr, nullptr},
{"Demo70_01", SND_EVENT_Demo70_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo70_02", SND_EVENT_Demo70_02, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo72_01", SND_EVENT_Demo72_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo77_01", SND_EVENT_Demo77_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
{"Demo79_01", SND_EVENT_Demo79_01, todoInititalizeSndEvent, todoExecuteSndEvent, nullptr},
};
// clang-format on
void dSndStateMgr_c::handleDemoEvent(const char *name) {
for (const SndEventDef *def = sSndEventDefs_DEMO; def < sSndEventDefs_DEMO + ARRAY_LENGTH(sSndEventDefs_DEMO);
def++) {
if (streq(name, def->eventName)) {
field_0x08C = def->eventId;
field_0x234 = def;
sEventExecuteCallback = def->executeCb;
if (def->initializeCb != nullptr) {
(def->initializeCb)();
}
break;
}
}
if (field_0x08C == SND_EVENT_0x98) {
field_0x08C = SND_EVENT_0x78;
}
return;
}
+1 -1
View File
@@ -39,7 +39,7 @@ void dSndSourceGroup_c::set(s32 sourceType, const char *name) {
if (!assignedParam) {
switch (sourceType) {
case SND_SOURCE_NPC_NRM: {
case SND_SOURCE_NPC_51: {
mParam.field_0x00 = 300.0f;
mParam.field_0x04 = 800.0;
mParam.field_0x10 = 2200.0;
+5 -5
View File
@@ -198,7 +198,7 @@ dSoundSourceIf_c *dSndSourceMgr_c::createSource(s32 sourceType, dAcBase_c *actor
isModified = true;
}
if (sourceType == SND_SOURCE_NPC_NRM) {
if (sourceType == SND_SOURCE_NPC_51) {
const ActorBaseNamePair *pair = Actor_BaseActorName_Pairs;
for (int i = 0; i < lbl_8057E394; i++) {
if (streq(nameStr, Actor_BaseActorName_Pairs[i].variant)) {
@@ -387,15 +387,15 @@ dSndSourceMgr_c::dSndSourceMgr_c()
}
void dSndSourceMgr_c::calcEnemyObjVolume() {
if (dSndStateMgr_c::GetInstance()->checkFlag0x94(0x100)) {
if (dSndStateMgr_c::GetInstance()->checkFlag0x94(dSndStateMgr_c::EVENT_MUTE_ENEMY_FULL)) {
dSndControlPlayerMgr_c::GetInstance()->setEnemyMuteVolume(0.0f);
} else if (dSndStateMgr_c::GetInstance()->checkFlag0x94(0x80)) {
} else if (dSndStateMgr_c::GetInstance()->checkFlag0x94(dSndStateMgr_c::EVENT_MUTE_ENEMY_PARTIAL)) {
dSndControlPlayerMgr_c::GetInstance()->setEnemyMuteVolume(0.3f);
}
if (dSndStateMgr_c::GetInstance()->checkFlag0x94(0x400)) {
if (dSndStateMgr_c::GetInstance()->checkFlag0x94(dSndStateMgr_c::EVENT_MUTE_OBJ_FULL)) {
dSndControlPlayerMgr_c::GetInstance()->setObjectMuteVolume(0.0f);
} else if (dSndStateMgr_c::GetInstance()->checkFlag0x94(0x200)) {
} else if (dSndStateMgr_c::GetInstance()->checkFlag0x94(dSndStateMgr_c::EVENT_MUTE_OBJ_PARTIAL)) {
dSndControlPlayerMgr_c::GetInstance()->setObjectMuteVolume(0.3f);
}
}
+1 -1
View File
@@ -45,7 +45,7 @@ dSndStateMgr_c::dSndStateMgr_c()
field_0x128(-1),
field_0x22C(0),
field_0x230(0),
field_0x234(0),
field_0x234(nullptr),
field_0x238(-1),
field_0x23C(0),
field_0x23D(0),
+78 -78
View File
@@ -425,106 +425,106 @@ static const ActorInfo sInfos[] = {
{ "MvElc", fProfile::OBJ_MOVE_ELEC, fProfile::OBJ_MOVE_ELEC, 0xFFFF, SND_SOURCE_OBJECT, 0},
{"MvLiftV", fProfile::OBJ_MOVE_LIFT_VOL, fProfile::OBJ_MOVE_LIFT_VOL, 0xFFFF, SND_SOURCE_OBJECT, 0},
{ "NpcAdr", fProfile::NPC_ADR, fProfile::NPC_ADR, 310, SND_SOURCE_NPC_DRAGON, 0},
{"NpcAkuH", fProfile::NPC_AKU_HUMAN, fProfile::NPC_AKU_HUMAN, 346, SND_SOURCE_NPC_NRM, 0},
{"NpcAkum", fProfile::NPC_AKUMAKUN, fProfile::NPC_AKUMAKUN, 279, SND_SOURCE_NPC_NRM, 0},
{"NpcAzFa", fProfile::NPC_AZUKARIYA_FATHER, fProfile::NPC_AZUKARIYA_FATHER, 298, SND_SOURCE_NPC_NRM, 0},
{"NpcAzNi", fProfile::NPC_AZUKARIYA_NIGHT, fProfile::NPC_AZUKARIYA_NIGHT, 464, SND_SOURCE_NPC_NRM, 0},
{"NpcBRvl", fProfile::NPC_BBRVL, fProfile::NPC_BBRVL, 261, 50, 0},
{"NpcBdsw", fProfile::NPC_BDSW, fProfile::NPC_BDSW, 0xFFFF, 50, 0},
{"NpcAkuH", fProfile::NPC_AKU_HUMAN, fProfile::NPC_AKU_HUMAN, 346, SND_SOURCE_NPC_51, 0},
{"NpcAkum", fProfile::NPC_AKUMAKUN, fProfile::NPC_AKUMAKUN, 279, SND_SOURCE_NPC_51, 0},
{"NpcAzFa", fProfile::NPC_AZUKARIYA_FATHER, fProfile::NPC_AZUKARIYA_FATHER, 298, SND_SOURCE_NPC_51, 0},
{"NpcAzNi", fProfile::NPC_AZUKARIYA_NIGHT, fProfile::NPC_AZUKARIYA_NIGHT, 464, SND_SOURCE_NPC_51, 0},
{"NpcBRvl", fProfile::NPC_BBRVL, fProfile::NPC_BBRVL, 261, SND_SOURCE_NPC_50, 0},
{"NpcBdsw", fProfile::NPC_BDSW, fProfile::NPC_BDSW, 0xFFFF, SND_SOURCE_NPC_50, 0},
{ "NpcBdz", fProfile::NPC_BDZ, fProfile::NPC_BDZ, 0xFFFF, 43, 0},
{ "NpcBgr", fProfile::NPC_BGR, fProfile::NPC_BGR, 298, SND_SOURCE_NPC_NRM, 0},
{ "NpcBgr", fProfile::NPC_BGR, fProfile::NPC_BGR, 298, SND_SOURCE_NPC_51, 0},
{"NpcBird", fProfile::NPC_BIRD, fProfile::NPC_BIRD, 0xFFFF, 43, 0},
{"NpcCbFd", fProfile::NPC_CE_FRIEND, fProfile::NPC_CE_FRIEND, 278, SND_SOURCE_NPC_NRM, 0},
{"NpcCbLd", fProfile::NPC_CE_LADY, fProfile::NPC_CE_LADY, 285, SND_SOURCE_NPC_NRM, 0},
{"NpcChef", fProfile::NPC_CHEF, fProfile::NPC_CHEF, 299, SND_SOURCE_NPC_NRM, 0},
{"NpcDgJg", fProfile::NPC_DIVE_GAME_JUDGE, fProfile::NPC_DIVE_GAME_JUDGE, 272, SND_SOURCE_NPC_NRM, 0},
{"NpcDoML", fProfile::NPC_DOUGUYA_MOTHER_LOD, fProfile::NPC_DOUGUYA_MOTHER_LOD, 294, SND_SOURCE_NPC_NRM, 0},
{"NpcDoMo", fProfile::NPC_DOUGUYA_MOTHER, fProfile::NPC_DOUGUYA_MOTHER, 294, SND_SOURCE_NPC_NRM, 0},
{"NpcDoNi", fProfile::NPC_DOUGUYA_NIGHT, fProfile::NPC_DOUGUYA_NIGHT, 462, SND_SOURCE_NPC_NRM, 0},
{"NpcCbFd", fProfile::NPC_CE_FRIEND, fProfile::NPC_CE_FRIEND, 278, SND_SOURCE_NPC_51, 0},
{"NpcCbLd", fProfile::NPC_CE_LADY, fProfile::NPC_CE_LADY, 285, SND_SOURCE_NPC_51, 0},
{"NpcChef", fProfile::NPC_CHEF, fProfile::NPC_CHEF, 299, SND_SOURCE_NPC_51, 0},
{"NpcDgJg", fProfile::NPC_DIVE_GAME_JUDGE, fProfile::NPC_DIVE_GAME_JUDGE, 272, SND_SOURCE_NPC_51, 0},
{"NpcDoML", fProfile::NPC_DOUGUYA_MOTHER_LOD, fProfile::NPC_DOUGUYA_MOTHER_LOD, 294, SND_SOURCE_NPC_51, 0},
{"NpcDoMo", fProfile::NPC_DOUGUYA_MOTHER, fProfile::NPC_DOUGUYA_MOTHER, 294, SND_SOURCE_NPC_51, 0},
{"NpcDoNi", fProfile::NPC_DOUGUYA_NIGHT, fProfile::NPC_DOUGUYA_NIGHT, 462, SND_SOURCE_NPC_51, 0},
{ "NpcDrb", fProfile::NPC_DRB, fProfile::NPC_DRB, 319, 43, 0},
{"NpcDrbC", fProfile::NPC_DRBC, fProfile::NPC_DRBC, 320, 43, 0},
{ "NpcDsk", fProfile::NPC_DSK, fProfile::NPC_DSK, 258, SND_SOURCE_NPC_NRM, 0},
{"NpcDskN", fProfile::NPC_DAISHINKAN_N, fProfile::NPC_DAISHINKAN_N, 340, SND_SOURCE_NPC_NRM, 0},
{ "NpcDsk", fProfile::NPC_DSK, fProfile::NPC_DSK, 258, SND_SOURCE_NPC_51, 0},
{"NpcDskN", fProfile::NPC_DAISHINKAN_N, fProfile::NPC_DAISHINKAN_N, 340, SND_SOURCE_NPC_51, 0},
{ "NpcFdr", fProfile::NPC_FDR, fProfile::NPC_FDR, 318, SND_SOURCE_NPC_DRAGON, 0},
{ "NpcGhm", fProfile::NPC_GHM, fProfile::NPC_GHM, 323, 50, 0},
{"NpcGost", fProfile::NPC_TOILET_GHOST, fProfile::NPC_TOILET_GHOST, 300, SND_SOURCE_NPC_NRM, 0},
{ "NpcGra", fProfile::NPC_GRA, fProfile::NPC_GRA, 302, SND_SOURCE_NPC_NRM, 0},
{ "NpcGrc", fProfile::NPC_GRC, fProfile::NPC_GRC, 330, SND_SOURCE_NPC_NRM, 0},
{ "NpcGrd", fProfile::NPC_GRD, fProfile::NPC_GRD, 331, 50, 0},
{ "NpcGzl", fProfile::NPC_GZL, fProfile::NPC_GZL, 257, SND_SOURCE_NPC_NRM, 0},
{"NpcIcgK", fProfile::NPC_ICGK, fProfile::NPC_ICGK, 460, SND_SOURCE_NPC_NRM, 0},
{ "NpcGhm", fProfile::NPC_GHM, fProfile::NPC_GHM, 323, SND_SOURCE_NPC_50, 0},
{"NpcGost", fProfile::NPC_TOILET_GHOST, fProfile::NPC_TOILET_GHOST, 300, SND_SOURCE_NPC_51, 0},
{ "NpcGra", fProfile::NPC_GRA, fProfile::NPC_GRA, 302, SND_SOURCE_NPC_51, 0},
{ "NpcGrc", fProfile::NPC_GRC, fProfile::NPC_GRC, 330, SND_SOURCE_NPC_51, 0},
{ "NpcGrd", fProfile::NPC_GRD, fProfile::NPC_GRD, 331, SND_SOURCE_NPC_50, 0},
{ "NpcGzl", fProfile::NPC_GZL, fProfile::NPC_GZL, 257, SND_SOURCE_NPC_51, 0},
{"NpcIcgK", fProfile::NPC_ICGK, fProfile::NPC_ICGK, 460, SND_SOURCE_NPC_51, 0},
{ "NpcInv", fProfile::NPC_INV, fProfile::NPC_INV, 0xFFFF, 0xFF, 0},
{"NpcJkML", fProfile::NPC_JUNK_MOTHER_LOD, fProfile::NPC_JUNK_MOTHER_LOD, 295, SND_SOURCE_NPC_NRM, 0},
{"NpcJkMo", fProfile::NPC_JUNK_MOTHER, fProfile::NPC_JUNK_MOTHER, 295, SND_SOURCE_NPC_NRM, 0},
{"NpcJkNi", fProfile::NPC_JUNK_NIGHT, fProfile::NPC_JUNK_NIGHT, 463, SND_SOURCE_NPC_NRM, 0},
{"NpcKb2N", fProfile::NPC_KOBUN_B_NIGHT, fProfile::NPC_KOBUN_B_NIGHT, 459, SND_SOURCE_NPC_NRM, 0},
{ "NpcKbn", fProfile::NPC_KBN, fProfile::NPC_KBN, 262, SND_SOURCE_NPC_NRM, 0},
{"NpcKbn2", fProfile::NPC_KBN2, fProfile::NPC_KBN2, 263, SND_SOURCE_NPC_NRM, 0},
{"NpcJkML", fProfile::NPC_JUNK_MOTHER_LOD, fProfile::NPC_JUNK_MOTHER_LOD, 295, SND_SOURCE_NPC_51, 0},
{"NpcJkMo", fProfile::NPC_JUNK_MOTHER, fProfile::NPC_JUNK_MOTHER, 295, SND_SOURCE_NPC_51, 0},
{"NpcJkNi", fProfile::NPC_JUNK_NIGHT, fProfile::NPC_JUNK_NIGHT, 463, SND_SOURCE_NPC_51, 0},
{"NpcKb2N", fProfile::NPC_KOBUN_B_NIGHT, fProfile::NPC_KOBUN_B_NIGHT, 459, SND_SOURCE_NPC_51, 0},
{ "NpcKbn", fProfile::NPC_KBN, fProfile::NPC_KBN, 262, SND_SOURCE_NPC_51, 0},
{"NpcKbn2", fProfile::NPC_KBN2, fProfile::NPC_KBN2, 263, SND_SOURCE_NPC_51, 0},
{ "NpcKen", fProfile::NPC_KENSEI, fProfile::NPC_KENSEI, 0xFFFF, SND_SOURCE_KENSEI, 0},
{"NpcKenT", fProfile::NPC_TALK_KENSEI, fProfile::NPC_TALK_KENSEI, 0xFFFF, SND_SOURCE_KENSEI, 0},
{"NpcKnld", fProfile::NPC_KNIGHT_LEADER, fProfile::NPC_KNIGHT_LEADER, 271, SND_SOURCE_NPC_NRM, 0},
{"NpcKyuE", fProfile::NPC_KYUI_ELDER, fProfile::NPC_KYUI_ELDER, 307, SND_SOURCE_NPC_NRM, 0},
{"NpcKyuW", fProfile::NPC_KYUI_WIZARD, fProfile::NPC_KYUI_WIZARD, 308, SND_SOURCE_NPC_NRM, 0},
{"NpcMHNi", fProfile::NPC_MED_HUS_NIGHT, fProfile::NPC_MED_HUS_NIGHT, 466, SND_SOURCE_NPC_NRM, 0},
{"NpcMWNi", fProfile::NPC_MED_WIFE_NIGHT, fProfile::NPC_MED_WIFE_NIGHT, 465, SND_SOURCE_NPC_NRM, 0},
{"NpcMlMg", fProfile::NPC_MOLE_MG, fProfile::NPC_MOLE_MG, 313, 50, 0},
{"NpcMoEN", fProfile::NPC_MOLE_ES_NML, fProfile::NPC_MOLE_ES_NML, 345, 50, 0},
{"NpcMoEl", fProfile::NPC_MOLE_ELDER, fProfile::NPC_MOLE_ELDER, 317, 50, 0},
{ "NpcMoN", fProfile::NPC_MOLE_NORMAL, fProfile::NPC_MOLE_NORMAL, 312, 50, 0},
{"NpcMoN2", fProfile::NPC_MOLE_NORMAL2, fProfile::NPC_MOLE_NORMAL2, 312, 50, 0},
{ "NpcMoS", fProfile::NPC_MOLE_SAL, fProfile::NPC_MOLE_SAL, 474, 50, 0},
{ "NpcMoT", fProfile::NPC_MOLE_TACKLE, fProfile::NPC_MOLE_TACKLE, 315, 50, 0},
{"NpcMoT2", fProfile::NPC_MOLE_TACKLE2, fProfile::NPC_MOLE_TACKLE2, 316, 50, 0},
{"NpcMole", fProfile::NPC_MOLE, fProfile::NPC_MOLE, 345, 50, 0},
{ "NpcOim", fProfile::NPC_OIM, fProfile::NPC_OIM, 301, SND_SOURCE_NPC_NRM, 0},
{"NpcOkyu", fProfile::NPC_ORD_KYUI, fProfile::NPC_ORD_KYUI, 304, SND_SOURCE_NPC_NRM, 0},
{ "NpcPcs", fProfile::NPC_PCS, fProfile::NPC_PCS, 469, SND_SOURCE_NPC_NRM, 0},
{ "NpcPdu", fProfile::NPC_PDU, fProfile::NPC_PDU, 274, SND_SOURCE_NPC_NRM, 0},
{ "NpcPma", fProfile::NPC_PMA, fProfile::NPC_PMA, 273, SND_SOURCE_NPC_NRM, 0},
{"NpcResc", fProfile::NPC_RESCUE, fProfile::NPC_RESCUE, 291, SND_SOURCE_NPC_NRM, 0},
{ "NpcRvl", fProfile::NPC_RVL, fProfile::NPC_RVL, 261, SND_SOURCE_NPC_NRM, 0},
{"NpcRvlL", fProfile::NPC_RIVAL_LOD, fProfile::NPC_RIVAL_LOD, 261, SND_SOURCE_NPC_NRM, 0},
{"NpcRvlR", fProfile::NPC_REGRET_RIVAL, fProfile::NPC_REGRET_RIVAL, 261, SND_SOURCE_NPC_NRM, 0},
{"NpcSAML", fProfile::NPC_SENPAIA_MOTHER_LOD, fProfile::NPC_SENPAIA_MOTHER_LOD, 296, SND_SOURCE_NPC_NRM, 0},
{"NpcSAMo", fProfile::NPC_SENPAIA_MOTHER, fProfile::NPC_SENPAIA_MOTHER, 296, SND_SOURCE_NPC_NRM, 0},
{"NpcSMnD", fProfile::NPC_SORAJIMA_MAN_D, fProfile::NPC_SORAJIMA_MAN_D, 297, SND_SOURCE_NPC_NRM, 0},
{"NpcSMnE", fProfile::NPC_SORAJIMA_MAN_E, fProfile::NPC_SORAJIMA_MAN_E, 336, SND_SOURCE_NPC_NRM, 0},
{"NpcSalS", fProfile::NPC_SALESMAN_S, fProfile::NPC_SALESMAN_S, 265, SND_SOURCE_NPC_NRM, 0},
{"NpcSenb", fProfile::NPC_SENPAI_B, fProfile::NPC_SENPAI_B, 277, SND_SOURCE_NPC_NRM, 0},
{"NpcSenp", fProfile::NPC_SENPAI, fProfile::NPC_SENPAI, 276, SND_SOURCE_NPC_NRM, 0},
{ "NpcSha", fProfile::NPC_SHA, fProfile::NPC_SHA, 275, SND_SOURCE_NPC_NRM, 0},
{ "NpcSkn", fProfile::NPC_SKN, fProfile::NPC_SKN, 259, SND_SOURCE_NPC_NRM, 0},
{"NpcSkn2", fProfile::NPC_SKN2, fProfile::NPC_SKN2, 260, SND_SOURCE_NPC_NRM, 0},
{"NpcKnld", fProfile::NPC_KNIGHT_LEADER, fProfile::NPC_KNIGHT_LEADER, 271, SND_SOURCE_NPC_51, 0},
{"NpcKyuE", fProfile::NPC_KYUI_ELDER, fProfile::NPC_KYUI_ELDER, 307, SND_SOURCE_NPC_51, 0},
{"NpcKyuW", fProfile::NPC_KYUI_WIZARD, fProfile::NPC_KYUI_WIZARD, 308, SND_SOURCE_NPC_51, 0},
{"NpcMHNi", fProfile::NPC_MED_HUS_NIGHT, fProfile::NPC_MED_HUS_NIGHT, 466, SND_SOURCE_NPC_51, 0},
{"NpcMWNi", fProfile::NPC_MED_WIFE_NIGHT, fProfile::NPC_MED_WIFE_NIGHT, 465, SND_SOURCE_NPC_51, 0},
{"NpcMlMg", fProfile::NPC_MOLE_MG, fProfile::NPC_MOLE_MG, 313, SND_SOURCE_NPC_50, 0},
{"NpcMoEN", fProfile::NPC_MOLE_ES_NML, fProfile::NPC_MOLE_ES_NML, 345, SND_SOURCE_NPC_50, 0},
{"NpcMoEl", fProfile::NPC_MOLE_ELDER, fProfile::NPC_MOLE_ELDER, 317, SND_SOURCE_NPC_50, 0},
{ "NpcMoN", fProfile::NPC_MOLE_NORMAL, fProfile::NPC_MOLE_NORMAL, 312, SND_SOURCE_NPC_50, 0},
{"NpcMoN2", fProfile::NPC_MOLE_NORMAL2, fProfile::NPC_MOLE_NORMAL2, 312, SND_SOURCE_NPC_50, 0},
{ "NpcMoS", fProfile::NPC_MOLE_SAL, fProfile::NPC_MOLE_SAL, 474, SND_SOURCE_NPC_50, 0},
{ "NpcMoT", fProfile::NPC_MOLE_TACKLE, fProfile::NPC_MOLE_TACKLE, 315, SND_SOURCE_NPC_50, 0},
{"NpcMoT2", fProfile::NPC_MOLE_TACKLE2, fProfile::NPC_MOLE_TACKLE2, 316, SND_SOURCE_NPC_50, 0},
{"NpcMole", fProfile::NPC_MOLE, fProfile::NPC_MOLE, 345, SND_SOURCE_NPC_50, 0},
{ "NpcOim", fProfile::NPC_OIM, fProfile::NPC_OIM, 301, SND_SOURCE_NPC_51, 0},
{"NpcOkyu", fProfile::NPC_ORD_KYUI, fProfile::NPC_ORD_KYUI, 304, SND_SOURCE_NPC_51, 0},
{ "NpcPcs", fProfile::NPC_PCS, fProfile::NPC_PCS, 469, SND_SOURCE_NPC_51, 0},
{ "NpcPdu", fProfile::NPC_PDU, fProfile::NPC_PDU, 274, SND_SOURCE_NPC_51, 0},
{ "NpcPma", fProfile::NPC_PMA, fProfile::NPC_PMA, 273, SND_SOURCE_NPC_51, 0},
{"NpcResc", fProfile::NPC_RESCUE, fProfile::NPC_RESCUE, 291, SND_SOURCE_NPC_51, 0},
{ "NpcRvl", fProfile::NPC_RVL, fProfile::NPC_RVL, 261, SND_SOURCE_NPC_51, 0},
{"NpcRvlL", fProfile::NPC_RIVAL_LOD, fProfile::NPC_RIVAL_LOD, 261, SND_SOURCE_NPC_51, 0},
{"NpcRvlR", fProfile::NPC_REGRET_RIVAL, fProfile::NPC_REGRET_RIVAL, 261, SND_SOURCE_NPC_51, 0},
{"NpcSAML", fProfile::NPC_SENPAIA_MOTHER_LOD, fProfile::NPC_SENPAIA_MOTHER_LOD, 296, SND_SOURCE_NPC_51, 0},
{"NpcSAMo", fProfile::NPC_SENPAIA_MOTHER, fProfile::NPC_SENPAIA_MOTHER, 296, SND_SOURCE_NPC_51, 0},
{"NpcSMnD", fProfile::NPC_SORAJIMA_MAN_D, fProfile::NPC_SORAJIMA_MAN_D, 297, SND_SOURCE_NPC_51, 0},
{"NpcSMnE", fProfile::NPC_SORAJIMA_MAN_E, fProfile::NPC_SORAJIMA_MAN_E, 336, SND_SOURCE_NPC_51, 0},
{"NpcSalS", fProfile::NPC_SALESMAN_S, fProfile::NPC_SALESMAN_S, 265, SND_SOURCE_NPC_51, 0},
{"NpcSenb", fProfile::NPC_SENPAI_B, fProfile::NPC_SENPAI_B, 277, SND_SOURCE_NPC_51, 0},
{"NpcSenp", fProfile::NPC_SENPAI, fProfile::NPC_SENPAI, 276, SND_SOURCE_NPC_51, 0},
{ "NpcSha", fProfile::NPC_SHA, fProfile::NPC_SHA, 275, SND_SOURCE_NPC_51, 0},
{ "NpcSkn", fProfile::NPC_SKN, fProfile::NPC_SKN, 259, SND_SOURCE_NPC_51, 0},
{"NpcSkn2", fProfile::NPC_SKN2, fProfile::NPC_SKN2, 260, SND_SOURCE_NPC_51, 0},
{"NpcSlFB", fProfile::NPC_SLFB, fProfile::NPC_SLFB, 0xFFFF, 43, 0},
{"NpcSlFl", fProfile::NPC_SLFL, fProfile::NPC_SLFL, 0xFFFF, 43, 0},
{"NpcSlKy", fProfile::NPC_SALBAGE_MORRY, fProfile::NPC_SALBAGE_MORRY, 304, SND_SOURCE_NPC_NRM, 0},
{"NpcSlKy", fProfile::NPC_SALBAGE_MORRY, fProfile::NPC_SALBAGE_MORRY, 304, SND_SOURCE_NPC_51, 0},
{"NpcSlRp", fProfile::NPC_SLRP, fProfile::NPC_SLRP, 477, 43, 0},
{"NpcSlb2", fProfile::NPC_SLB2, fProfile::NPC_SLB2, 354, 43, 0},
{"NpcSlrb", fProfile::NPC_SLB, fProfile::NPC_SLB, 0xFFFF, 43, 0},
{"NpcSltk", fProfile::NPC_SLTK, fProfile::NPC_SLTK, 0xFFFF, 0xFF, 0},
{"NpcSma2", fProfile::NPC_SMA2, fProfile::NPC_SMA2, 286, SND_SOURCE_NPC_NRM, 0},
{"NpcSma3", fProfile::NPC_SMA3, fProfile::NPC_SMA3, 287, SND_SOURCE_NPC_NRM, 0},
{"NpcSoBo", fProfile::NPC_SORAJIMA_BOY, fProfile::NPC_SORAJIMA_BOY, 284, SND_SOURCE_NPC_NRM, 0},
{"NpcSoFa", fProfile::NPC_SORAJIMA_FATHER, fProfile::NPC_SORAJIMA_FATHER, 282, SND_SOURCE_NPC_NRM, 0},
{ "NpcSoG", fProfile::NPC_SORAJIMA_GIRL, fProfile::NPC_SORAJIMA_GIRL, 288, SND_SOURCE_NPC_NRM, 0},
{"NpcSoMo", fProfile::NPC_SORAJIMA_MOTHER, fProfile::NPC_SORAJIMA_MOTHER, 283, SND_SOURCE_NPC_NRM, 0},
{"NpcSoma", fProfile::NPC_SORAJIMA_MALE, fProfile::NPC_SORAJIMA_MALE, 281, SND_SOURCE_NPC_NRM, 0},
{"NpcSowo", fProfile::NPC_SORAJIMA_FEMALE, fProfile::NPC_SORAJIMA_FEMALE, 280, SND_SOURCE_NPC_NRM, 0},
{"NpcSma2", fProfile::NPC_SMA2, fProfile::NPC_SMA2, 286, SND_SOURCE_NPC_51, 0},
{"NpcSma3", fProfile::NPC_SMA3, fProfile::NPC_SMA3, 287, SND_SOURCE_NPC_51, 0},
{"NpcSoBo", fProfile::NPC_SORAJIMA_BOY, fProfile::NPC_SORAJIMA_BOY, 284, SND_SOURCE_NPC_51, 0},
{"NpcSoFa", fProfile::NPC_SORAJIMA_FATHER, fProfile::NPC_SORAJIMA_FATHER, 282, SND_SOURCE_NPC_51, 0},
{ "NpcSoG", fProfile::NPC_SORAJIMA_GIRL, fProfile::NPC_SORAJIMA_GIRL, 288, SND_SOURCE_NPC_51, 0},
{"NpcSoMo", fProfile::NPC_SORAJIMA_MOTHER, fProfile::NPC_SORAJIMA_MOTHER, 283, SND_SOURCE_NPC_51, 0},
{"NpcSoma", fProfile::NPC_SORAJIMA_MALE, fProfile::NPC_SORAJIMA_MALE, 281, SND_SOURCE_NPC_51, 0},
{"NpcSowo", fProfile::NPC_SORAJIMA_FEMALE, fProfile::NPC_SORAJIMA_FEMALE, 280, SND_SOURCE_NPC_51, 0},
{ "NpcStr", fProfile::NPC_STR, fProfile::NPC_STR, 0xFFFF, 0xFF, 0},
{ "NpcSui", fProfile::NPC_SUISEI, fProfile::NPC_SUISEI, 344, 43, 0},
{"NpcSuiN", fProfile::NPC_SUISEI_NORMAL, fProfile::NPC_SUISEI_NORMAL, 309, 50, 0},
{"NpcSuiN", fProfile::NPC_SUISEI_NORMAL, fProfile::NPC_SUISEI_NORMAL, 309, SND_SOURCE_NPC_50, 0},
{"NpcSuiS", fProfile::NPC_SUISEI_SUB, fProfile::NPC_SUISEI_SUB, 309, 43, 0},
{ "NpcTdr", fProfile::NPC_TDR, fProfile::NPC_TDR, 322, SND_SOURCE_NPC_DRAGON, 0},
{"NpcTdrB", fProfile::NPC_TDRB, fProfile::NPC_TDRB, 322, SND_SOURCE_OBJECT, 0},
{ "NpcTds", fProfile::NPC_TDS, fProfile::NPC_TDS, 478, 0xFF, 0},
{ "NpcTer", fProfile::NPC_TERRY, fProfile::NPC_TERRY, 264, SND_SOURCE_NPC_NRM, 0},
{ "NpcTer", fProfile::NPC_TERRY, fProfile::NPC_TERRY, 264, SND_SOURCE_NPC_51, 0},
{ "NpcTke", fProfile::NPC_TKE, fProfile::NPC_TKE, 0xFFFF, 0xFF, 0},
{ "NpcTmn", fProfile::NPC_TMN, fProfile::NPC_TMN, 0xFFFF, 0xFF, 0},
{ "NpcYim", fProfile::NPC_YIM, fProfile::NPC_YIM, 311, SND_SOURCE_NPC_NRM, 0},
{ "NpcZld", fProfile::NPC_ZLD, fProfile::NPC_ZLD, 256, SND_SOURCE_NPC_NRM, 0},
{"Npckyu1", fProfile::NPC_KYUI_FIRST, fProfile::NPC_KYUI_FIRST, 303, SND_SOURCE_NPC_NRM, 0},
{"Npckyu3", fProfile::NPC_KYUI_THIRD, fProfile::NPC_KYUI_THIRD, 305, SND_SOURCE_NPC_NRM, 0},
{"Npckyu4", fProfile::NPC_KYUI4, fProfile::NPC_KYUI4, 306, SND_SOURCE_NPC_NRM, 0},
{ "NpcYim", fProfile::NPC_YIM, fProfile::NPC_YIM, 311, SND_SOURCE_NPC_51, 0},
{ "NpcZld", fProfile::NPC_ZLD, fProfile::NPC_ZLD, 256, SND_SOURCE_NPC_51, 0},
{"Npckyu1", fProfile::NPC_KYUI_FIRST, fProfile::NPC_KYUI_FIRST, 303, SND_SOURCE_NPC_51, 0},
{"Npckyu3", fProfile::NPC_KYUI_THIRD, fProfile::NPC_KYUI_THIRD, 305, SND_SOURCE_NPC_51, 0},
{"Npckyu4", fProfile::NPC_KYUI4, fProfile::NPC_KYUI4, 306, SND_SOURCE_NPC_51, 0},
{ "NusiB", fProfile::B_NUSI, fProfile::B_NUSI, 0xFFFF, SND_SOURCE_BOSS_NUSI, 0},
{ "NusiBt", fProfile::B_NUSI_BULLET, fProfile::B_NUSI_BULLET, 0xFFFF, SND_SOURCE_BULLET, 0},
{"NusiNpc", fProfile::NUSI_NPC, fProfile::NUSI_NPC, 0xFFFF, SND_SOURCE_NPC_NUSI, 0},