mirror of https://github.com/zeldaret/tp.git
379 lines
14 KiB
C++
379 lines
14 KiB
C++
//
|
|
// object-sound
|
|
//
|
|
|
|
#include "JSystem/JStudio/JStudio_JAudio2/object-sound.h"
|
|
#include "JSystem/JStudio/JStudio_JAudio2/control.h"
|
|
#include "JSystem/JStudio/JStudio_JStage/control.h"
|
|
|
|
/* 8028D728-8028D750 288068 0028+00 1/1 0/0 0/0 .text
|
|
* setValue_VOLUME___Q215JStudio_JAudio226@unnamed@object_sound_cpp@FP8JAISoundf */
|
|
static void setValue_VOLUME_(JAISound *param_1, float param_2) {
|
|
param_1->getAuxiliary().moveVolume(param_2, 0);
|
|
}
|
|
|
|
/* 8028D750-8028D778 288090 0028+00 1/1 0/0 0/0 .text
|
|
* setValue_PAN___Q215JStudio_JAudio226@unnamed@object_sound_cpp@FP8JAISoundf */
|
|
static void setValue_PAN_(JAISound *param_1, float param_2) {
|
|
param_1->getAuxiliary().movePan(param_2, 0);
|
|
}
|
|
|
|
/* 8028D778-8028D7A0 2880B8 0028+00 1/1 0/0 0/0 .text
|
|
* setValue_PITCH___Q215JStudio_JAudio226@unnamed@object_sound_cpp@FP8JAISoundf */
|
|
static void setValue_PITCH_(JAISound *param_1, float param_2) {
|
|
param_1->getAuxiliary().movePitch(param_2, 0);
|
|
}
|
|
|
|
/* 8028D7A0-8028D800 2880E0 0060+00 1/1 0/0 0/0 .text
|
|
* setValue_TEMPO___Q215JStudio_JAudio226@unnamed@object_sound_cpp@FP8JAISoundf */
|
|
static void setValue_TEMPO_(JAISound *param_1, float param_2) {
|
|
JAITempoMgr* tempoMgr = param_1->getTempoMgr();
|
|
if (tempoMgr != NULL) {
|
|
tempoMgr->setTempo(param_2);
|
|
}
|
|
}
|
|
|
|
/* 8028D800-8028D828 288140 0028+00 1/1 0/0 0/0 .text
|
|
* setValue_ECHO___Q215JStudio_JAudio226@unnamed@object_sound_cpp@FP8JAISoundf */
|
|
static void setValue_ECHO_(JAISound *param_1, float param_2) {
|
|
param_1->getAuxiliary().moveFxMix(param_2, 0);
|
|
}
|
|
|
|
/* 8028D828-8028D8F4 288168 00CC+00 0/0 1/1 0/0 .text
|
|
* __ct__Q215JStudio_JAudio214TAdaptor_soundFPQ215JStudio_JAudio213TCreateObject */
|
|
JStudio_JAudio2::TAdaptor_sound::TAdaptor_sound(JStudio_JAudio2::TCreateObject* param_1) :
|
|
pCreateObject_(param_1) {
|
|
field_0x11c = 0;
|
|
field_0x11d = 0;
|
|
field_0x11e = 0;
|
|
field_0x11f = 0;
|
|
field_0x120 = 0;
|
|
field_0x124 = 0xffffffff;
|
|
field_0x128 = 0;
|
|
field_0x12c = NULL;
|
|
field_0x13c = NULL;
|
|
field_0x140 = 0xffffffff;
|
|
field_0x144 = 0;
|
|
JUT_ASSERT(112, pCreateObject_!=0);
|
|
}
|
|
|
|
/* 8028D8F4-8028D9A4 288234 00B0+00 1/0 0/0 0/0 .text __dt__Q215JStudio_JAudio214TAdaptor_soundFv
|
|
*/
|
|
JStudio_JAudio2::TAdaptor_sound::~TAdaptor_sound() {
|
|
if (opJAISoundHandle_) {
|
|
if (field_0x11f == 0) {
|
|
opJAISoundHandle_->stop();
|
|
} else if (field_0x11c != 0) {
|
|
opJAISoundHandle_.releaseSound();
|
|
} else {
|
|
opJAISoundHandle_->stop();
|
|
}
|
|
}
|
|
}
|
|
|
|
/* 8028D9A4-8028DA74 2882E4 00D0+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_prepare__Q215JStudio_JAudio214TAdaptor_soundFv */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_prepare() {
|
|
static JStudio::TAdaptor::TSetVariableValue_immediate aoData[4] = {
|
|
TSetVariableValue_immediate(0, 0.0f),
|
|
TSetVariableValue_immediate(1, 0.0f),
|
|
TSetVariableValue_immediate(2, 0.0f),
|
|
TSetVariableValue_immediate(-1, NAN),
|
|
};
|
|
adaptor_setVariableValue_immediate(aoData);
|
|
for (TVVOSetValue_* pTVar1 = saoVVOSetValue_; pTVar1->field_0x04 != -1; pTVar1++) {
|
|
adaptor_referVariableValue(pTVar1->field_0x04)->setOutput(pTVar1);
|
|
}
|
|
}
|
|
|
|
/* 804314F8-80431540 05E218 0048+00 1/2 0/0 0/0 .bss
|
|
* saoVVOSetValue___Q215JStudio_JAudio214TAdaptor_sound */
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_ JStudio_JAudio2::TAdaptor_sound::saoVVOSetValue_[6] = {
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_7, setValue_VOLUME_
|
|
),
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_8, setValue_PAN_
|
|
),
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_9, setValue_PITCH_
|
|
),
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_10, setValue_TEMPO_
|
|
),
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_11, setValue_ECHO_
|
|
),
|
|
JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_(
|
|
JStudio_JAudio2::TAdaptor_sound::UNK_NONE, NULL
|
|
),
|
|
};
|
|
|
|
/* 8028DA74-8028DA78 2883B4 0004+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_end__Q215JStudio_JAudio214TAdaptor_soundFv */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_end() {
|
|
}
|
|
|
|
/* 8028DA78-8028DC20 2883B8 01A8+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_update__Q215JStudio_JAudio214TAdaptor_soundFUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_update(u32 param_1) {
|
|
const JStudio::TObject* pObject = adaptor_getObject();
|
|
JUT_ASSERT(194, pObject!=0);
|
|
const JStudio::TControl* pControl = pObject->getControl();
|
|
JUT_ASSERT(196, pControl!=0);
|
|
JStudio::TControl::TTransform_position VStack_148;
|
|
JStudio::TControl::TTransform_position VStack_154;
|
|
JStudio::TControl::TTransform_position* pVVar2;
|
|
adaptor_getVariableValue_Vec(&VStack_148,
|
|
JStudio::TAdaptor_sound::sauVariableValue_3_POSITION_XYZ);
|
|
if (field_0x144 == 0) {
|
|
pVVar2 = pControl->transformOnSet_transform_ifEnabled(&VStack_148, &VStack_154);
|
|
} else {
|
|
if (!JStudio_JStage::transform_toGlobalFromLocal(&VStack_154, VStack_148, field_0x13c, field_0x140)) {
|
|
return;
|
|
}
|
|
pVVar2 = &VStack_154;
|
|
}
|
|
field_0x130 = *pVVar2;
|
|
if (field_0x11d) {
|
|
switch(field_0x120) {
|
|
case 2:
|
|
JAISoundStarter* soundStarter = pCreateObject_->get_pJAISoundStarter_();
|
|
soundStarter->startLevelSound(field_0x124, &opJAISoundHandle_, field_0x12c);
|
|
break;
|
|
case 1:
|
|
field_0x120 = 2;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (field_0x11e != 0 && field_0x124 != -1 && !opJAISoundHandle_) {
|
|
prepareSound_();
|
|
beginSound_fadeIn_();
|
|
}
|
|
if (field_0x12c != NULL && opJAISoundHandle_)
|
|
{
|
|
opJAISoundHandle_->setPos(*field_0x12c);
|
|
}
|
|
}
|
|
|
|
/* 8028DC20-8028DC54 288560 0034+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_SOUND__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_SOUND(JStudio::data::TEOperationData param_1,
|
|
void const* pContent, u32 uSize) {
|
|
switch(param_1) {
|
|
case JStudio::data::UNK_0x19:
|
|
JUT_ASSERT(283, pContent!=0);
|
|
JUT_ASSERT(284, uSize==4);
|
|
field_0x124 = *(u32*)pContent;
|
|
prepareSound_();
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DC54-8028DC88 288594 0034+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_BEGIN__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_BEGIN(JStudio::data::TEOperationData param_1,
|
|
void const* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x1:
|
|
JUT_ASSERT(284, uSize == 0);
|
|
beginSound_();
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DC88-8028DCD0 2885C8 0048+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_BEGIN_FADE_IN__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_BEGIN_FADE_IN(
|
|
JStudio::data::TEOperationData param_1, void const* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x2:
|
|
JUT_ASSERT(323, pContent!=0);
|
|
JUT_ASSERT(324, uSize==4);
|
|
beginSound_fadeIn_(*(f32*)pContent);
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DCD0-8028DD00 288610 0030+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_END__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_END(JStudio::data::TEOperationData param_1,
|
|
void const* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x1:
|
|
JUT_ASSERT(345, uSize == 0);
|
|
endSound_();
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DD00-8028DD48 288640 0048+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_END_FADE_OUT__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_END_FADE_OUT(
|
|
JStudio::data::TEOperationData param_1, void const* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x2:
|
|
JUT_ASSERT(364, pContent!=0);
|
|
JUT_ASSERT(365, uSize==4);
|
|
endSound_fadeOut_(*(f32*)pContent);
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DD48-8028DDB4 288688 006C+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_PARENT__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_PARENT(
|
|
JStudio::data::TEOperationData param_1, void const* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x18:
|
|
JUT_ASSERT(387, pContent!=0);
|
|
JUT_ASSERT(388, uSize!=0);
|
|
field_0x13c = NULL;
|
|
JStage::TSystem* pJSGSystem = (JStage::TSystem*)pCreateObject_->get_pJSGSystem_();
|
|
JUT_ASSERT(396, pJSGSystem != 0);
|
|
JStage::TObject* pJSGObject;
|
|
if (!pJSGSystem->JSGFindObject(&pJSGObject, (const char*)pContent, JStage::OBJECT_UNDEFINED)) {
|
|
JUT_ASSERT(405, pJSGObject != 0);
|
|
field_0x13c = pJSGObject;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DDB4-8028DE34 2886F4 0080+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_PARENT_NODE__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_PARENT_NODE(JStudio::data::TEOperationData param_1,
|
|
const void* pContent, u32 uSize) {
|
|
switch (param_1) {
|
|
case JStudio::data::UNK_0x18:
|
|
if (field_0x13c != NULL) {
|
|
JUT_ASSERT(431, pContent!=0);
|
|
JUT_ASSERT(432, uSize==0);
|
|
field_0x140 = field_0x13c->JSGFindNodeID((char*)pContent);
|
|
if (field_0x140 == -1) {
|
|
return;
|
|
}
|
|
}
|
|
break;
|
|
case JStudio::data::UNK_0x19:
|
|
JUT_ASSERT(447, uSize==4);
|
|
JUT_ASSERT(448, pContent!=0);
|
|
field_0x140 = *(u32*)pContent;
|
|
break;
|
|
}
|
|
}
|
|
|
|
/* 8028DE34-8028DE50 288774 001C+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_PARENT_ENABLE__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_PARENT_ENABLE(
|
|
JStudio::data::TEOperationData param_1, const void* pContent, u32 uSize) {
|
|
if (param_1 == JStudio::data::UNK_0x2) {
|
|
JUT_ASSERT(468, uSize == 4);
|
|
JUT_ASSERT(469, pContent != 0);
|
|
field_0x144 = *(u32*)pContent ? 1 : 0;
|
|
}
|
|
}
|
|
|
|
/* 8028DE50-8028DE6C 288790 001C+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_REPEAT__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_REPEAT(JStudio::data::TEOperationData param_1,
|
|
const void* pContent, u32 uSize) {
|
|
if (param_1 == JStudio::data::UNK_0x2) {
|
|
JUT_ASSERT(490, uSize == 4);
|
|
JUT_ASSERT(491, pContent != 0);
|
|
field_0x11e = *(u32*)pContent ? 1 : 0;
|
|
}
|
|
}
|
|
|
|
/* 8028DE6C-8028DE88 2887AC 001C+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_CONTINUOUS__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_CONTINUOUS(JStudio::data::TEOperationData param_1,
|
|
const void* pContent, u32 uSize) {
|
|
if (param_1 == JStudio::data::UNK_0x2) {
|
|
JUT_ASSERT(512, uSize == 4);
|
|
JUT_ASSERT(513, pContent != 0);
|
|
field_0x11d = *(u32*)pContent ? 1 : 0;
|
|
}
|
|
}
|
|
|
|
/* 8028DE88-8028DEB0 2887C8 0028+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_LOCATED__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_LOCATED(JStudio::data::TEOperationData param_1,
|
|
const void* pContent, u32 uSize) {
|
|
if (param_1 == JStudio::data::UNK_0x2) {
|
|
JUT_ASSERT(534, pContent != 0);
|
|
JUT_ASSERT(535, uSize == 4);
|
|
u32 val = *(u32*)pContent;
|
|
field_0x12c = NULL;
|
|
if (val != 0) {
|
|
field_0x12c = &field_0x130;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* 8028DEB0-8028DECC 2887F0 001C+00 1/0 0/0 0/0 .text
|
|
* adaptor_do_ON_EXIT_NOT_END__Q215JStudio_JAudio214TAdaptor_soundFQ37JStudio4data15TEOperationDataPCvUl
|
|
*/
|
|
void JStudio_JAudio2::TAdaptor_sound::adaptor_do_ON_EXIT_NOT_END(
|
|
JStudio::data::TEOperationData param_1, const void* pContent, u32 uSize) {
|
|
if (param_1 == JStudio::data::UNK_0x2) {
|
|
JUT_ASSERT(512, uSize == 4);
|
|
JUT_ASSERT(513, pContent != 0);
|
|
field_0x11f = *(u32*)pContent ? 1 : 0;
|
|
}
|
|
}
|
|
|
|
/* 8028DECC-8028DF04 28880C 0038+00 1/0 0/0 0/0 .text
|
|
* __cl__Q315JStudio_JAudio214TAdaptor_sound13TVVOSetValue_CFfPQ27JStudio8TAdaptor */
|
|
void JStudio_JAudio2::TAdaptor_sound::TVVOSetValue_::operator()(f32 param_1,
|
|
JStudio::TAdaptor* param_2) const {
|
|
JUT_ASSERT(596, param_2 != 0);
|
|
if (((JStudio_JAudio2::TAdaptor_sound*)param_2)->opJAISoundHandle_) {
|
|
JAISound* sound = ((JStudio_JAudio2::TAdaptor_sound*)param_2)->opJAISoundHandle_.sound_;
|
|
field_0x08(sound, param_1);
|
|
}
|
|
}
|
|
|
|
/* 8028DF04-8028DFA4 288844 00A0+00 2/2 0/0 0/0 .text
|
|
* prepareSound___Q215JStudio_JAudio214TAdaptor_soundFv */
|
|
void JStudio_JAudio2::TAdaptor_sound::prepareSound_() {
|
|
if (opJAISoundHandle_) {
|
|
opJAISoundHandle_stop_();
|
|
}
|
|
JAISoundStarter* soundStarter = pCreateObject_->get_pJAISoundStarter_();
|
|
if (field_0x11d == 0) {
|
|
soundStarter->startSound(field_0x124, &opJAISoundHandle_, field_0x12c);
|
|
} else {
|
|
soundStarter->startLevelSound(field_0x124, &opJAISoundHandle_, field_0x12c);
|
|
}
|
|
if (opJAISoundHandle_) {
|
|
opJAISoundHandle_->lockWhenPrepared();
|
|
}
|
|
}
|
|
|
|
/* 8028DFA4-8028E054 2888E4 00B0+00 3/3 0/0 0/0 .text
|
|
* beginSound_fadeIn___Q215JStudio_JAudio214TAdaptor_soundFv */
|
|
void JStudio_JAudio2::TAdaptor_sound::beginSound_fadeIn_() {
|
|
if (opJAISoundHandle_) {
|
|
opJAISoundHandle_->fadeIn(field_0x128);
|
|
opJAISoundHandle_->unlockIfLocked();
|
|
field_0x120 = 1;
|
|
}
|
|
}
|
|
|
|
/* 8028E054-8028E094 288994 0040+00 2/2 0/0 0/0 .text
|
|
* endSound_fadeOut___Q215JStudio_JAudio214TAdaptor_soundFUl */
|
|
void JStudio_JAudio2::TAdaptor_sound::endSound_fadeOut_(u32 u32FadeTime) {
|
|
if (opJAISoundHandle_) {
|
|
opJAISoundHandle_->stop(u32FadeTime);
|
|
JUT_ASSERT(654, (u32FadeTime>0)||!opJAISoundHandle_);
|
|
field_0x120 = 0;
|
|
}
|
|
}
|