tp/src/Z2AudioLib/Z2SpeechMgr2.cpp

1941 lines
52 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: Z2SpeechMgr2
//
#include "Z2AudioLib/Z2SpeechMgr2.h"
#include "Z2AudioLib/Z2SceneMgr.h"
#include "Z2AudioLib/Z2SeMgr.h"
#include "JSystem/J3DU/J3DUD.h"
#include "dol2asm.h"
//
// Types:
//
typedef struct {
u8** field_0x0;
u8** field_0x4;
u8 field_0x8;
u8 field_0x9;
u8 field_0xa;
u8 field_0xb;
} sPrmStruct;
struct Z2MdnPrm {
static u8 const sReply[100];
static u8 const sReplyTail[10 + 2 /* padding */];
static u8 const sJoke[100];
static u8 const sJokeTail[10 + 2 /* padding */];
static u8 const sSexy[100];
static u8 const sSexyTail[10 + 2 /* padding */];
static u8 const sRidicule[100];
static u8 const sRidiculeTail[10 + 2 /* padding */];
static u8 const sBoring[108];
static u8 const sIrritated[94 + 2 /* padding */];
static u8 const sIrritatedTail[10 + 2 /* padding */];
static u8 const sOrder[114 + 2 /* padding */];
static u8 const sResent[106 + 2 /* padding */];
static u8 const sCheerful[106 + 2 /* padding */];
static u8 const sConfused[106 + 2 /* padding */];
static u8 const sHostility[104];
static u8 const sTired[106 + 2 /* padding */];
static u8 const sSerious[106 + 2 /* padding */];
static u8 const sReplyb[84];
static u8 const sApologize[100];
static u8 const sApologizeTail[9 + 3 /* padding */];
static u8 const sDeside[100];
static u8 const sAfford[104];
static u8 const sAffordTail[12];
static sPrmStruct const sPrm[17];
static u8 sBoringTail[6 + 2 /* padding */];
static u8 sOrderTail[6 + 2 /* padding */];
static u8 sResentTail[5 + 3 /* padding */];
static u8 sCheerfulTail[8];
static u8 sConfusedTail[5 + 3 /* padding */];
static u8 sHostilityTail[7 + 1 /* padding */];
static u8 sTiredTail[8];
static u8 sSeriousTail[7 + 1 /* padding */];
static u8 sReplybTail[7 + 1 /* padding */];
static u8 sDesideTail[8];
};
//
// Forward References:
//
extern "C" void __ct__12Z2SpeechMgr2Fv();
extern "C" void __dt__15Z2SpeechStarterFv();
extern "C" void setString__12Z2SpeechMgr2FPCUssUcUs();
extern "C" void setTextCount__12Z2SpeechMgr2Fs();
extern "C" void speakOneWord__12Z2SpeechMgr2Fb();
extern "C" void isNonVerbal__12Z2SpeechMgr2Fv();
extern "C" void selectUnit__12Z2SpeechMgr2Fb();
extern "C" void selectTail__12Z2SpeechMgr2Fv();
extern "C" void framework__12Z2SpeechMgr2Fv();
extern "C" void playOneShotVoice__12Z2SpeechMgr2FUcUsP3VecSc();
extern "C" void isMidnaSpeak__12Z2SpeechMgr2Fv();
extern "C" void __ct__15Z2SpeechStarterFv();
extern "C" void func_802CCFF8();
extern "C" u8 const sReply__8Z2MdnPrm[100];
extern "C" u8 const sReplyTail__8Z2MdnPrm[10 + 2 /* padding */];
extern "C" u8 const sJoke__8Z2MdnPrm[100];
extern "C" u8 const sJokeTail__8Z2MdnPrm[10 + 2 /* padding */];
extern "C" u8 const sSexy__8Z2MdnPrm[100];
extern "C" u8 const sSexyTail__8Z2MdnPrm[10 + 2 /* padding */];
extern "C" u8 const sRidicule__8Z2MdnPrm[100];
extern "C" u8 const sRidiculeTail__8Z2MdnPrm[10 + 2 /* padding */];
extern "C" u8 const sBoring__8Z2MdnPrm[108];
extern "C" u8 const sIrritated__8Z2MdnPrm[94 + 2 /* padding */];
extern "C" u8 const sIrritatedTail__8Z2MdnPrm[10 + 2 /* padding */];
extern "C" u8 const sOrder__8Z2MdnPrm[114 + 2 /* padding */];
extern "C" u8 const sResent__8Z2MdnPrm[106 + 2 /* padding */];
extern "C" u8 const sCheerful__8Z2MdnPrm[106 + 2 /* padding */];
extern "C" u8 const sConfused__8Z2MdnPrm[106 + 2 /* padding */];
extern "C" u8 const sHostility__8Z2MdnPrm[104];
extern "C" u8 const sTired__8Z2MdnPrm[106 + 2 /* padding */];
extern "C" u8 const sSerious__8Z2MdnPrm[106 + 2 /* padding */];
extern "C" u8 const sReplyb__8Z2MdnPrm[84];
extern "C" u8 const sApologize__8Z2MdnPrm[100];
extern "C" u8 const sApologizeTail__8Z2MdnPrm[9 + 3 /* padding */];
extern "C" u8 const sDeside__8Z2MdnPrm[100];
extern "C" u8 const sAfford__8Z2MdnPrm[104];
extern "C" u8 const sAffordTail__8Z2MdnPrm[12];
extern "C" void* const sPrm__8Z2MdnPrm[51];
extern "C" u8 sBoringTail__8Z2MdnPrm[6 + 2 /* padding */];
extern "C" u8 sOrderTail__8Z2MdnPrm[6 + 2 /* padding */];
extern "C" u8 sResentTail__8Z2MdnPrm[5 + 3 /* padding */];
extern "C" u8 sCheerfulTail__8Z2MdnPrm[8];
extern "C" u8 sConfusedTail__8Z2MdnPrm[5 + 3 /* padding */];
extern "C" u8 sHostilityTail__8Z2MdnPrm[7 + 1 /* padding */];
extern "C" u8 sTiredTail__8Z2MdnPrm[8];
extern "C" u8 sSeriousTail__8Z2MdnPrm[7 + 1 /* padding */];
extern "C" u8 sReplybTail__8Z2MdnPrm[7 + 1 /* padding */];
extern "C" u8 sDesideTail__8Z2MdnPrm[8];
//
// External References:
//
extern "C" void dComIfGp_getReverb__Fi();
extern "C" void releaseSound__14JAISoundHandleFv();
extern "C" void stop__8JAISoundFv();
extern "C" void moveVolume__18JAISoundParamsMoveFfUl();
extern "C" void movePitch__18JAISoundParamsMoveFfUl();
extern "C" void moveFxMix__18JAISoundParamsMoveFfUl();
extern "C" void movePan__18JAISoundParamsMoveFfUl();
extern "C" void moveDolby__18JAISoundParamsMoveFfUl();
extern "C" void __dt__15JAISoundStarterFv();
extern "C" void __ct__14Z2SoundStarterFb();
extern "C" void func_802AABF4();
extern "C" void setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc();
extern "C" void subBgmStart__8Z2SeqMgrFUl();
extern "C" void getFogDensity__10Z2EnvSeMgrFv();
extern "C" void __dl__FPv();
extern "C" void __ct__Q25JMath13TRandom_fast_FUl();
extern "C" void _savegpr_26();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_26();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern void* __vt__14Z2SoundStarter[5 + 1 /* padding */];
extern "C" extern u8 data_80450B3C[4];
extern "C" extern u8 data_80450B7C[4];
extern "C" extern u8 data_80450B80[4];
extern "C" extern u8 data_80450B84[4];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern "C" extern u8 __OSReport_disable;
//
// Declarations:
//
/* 802CBC60-802CBCEC 2C65A0 008C+00 0/0 1/1 0/0 .text __ct__12Z2SpeechMgr2Fv */
Z2SpeechMgr2::Z2SpeechMgr2() : JASGlobalInstance<Z2SpeechMgr2>(true), random(0) {
field_0x3f8 = 0;
field_0x3fa = -1;
field_0x3fc = 0;
field_0x3fe = 0;
field_0x3ff = 0;
field_0x401 = 0;
for (int i = 0; i < 64; i++) {
field_0x402[i] = -1;
}
}
/* ############################################################################################## */
/* 803CBD08-803CBED0 -00001 01C8+00 1/1 0/0 0/0 .data @3729 */
SECTION_DATA static void* lit_3729[114] = {
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xB4),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xB4),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xB4),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xB4),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xA8),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x9C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x90),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x84),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x3C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x30),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x3C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x30),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x9C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x6C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x84),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x84),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x48),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x54),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x60),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x9C),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0x78),
(void*)(((char*)setString__12Z2SpeechMgr2FPCUssUcUs) + 0xC0),
};
/* 803CBED0-803CBF24 -00001 0054+00 1/1 0/0 0/0 .data @3839 */
SECTION_DATA static void* lit_3839[21] = {
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x13C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x14C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x15C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x16C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x17C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x18C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x19C),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1AC),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1D8),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1BC),
(void*)(((char*)setTextCount__12Z2SpeechMgr2Fs) + 0x1CC),
};
/* 803CBF24-803CBF38 029044 0014+00 2/2 1/1 0/0 .data __vt__15Z2SpeechStarter */
SECTION_DATA extern void* __vt__15Z2SpeechStarter[5] = {
(void*)NULL /* RTTI */, (void*)NULL, (void*)__dt__15Z2SpeechStarterFv,
(void*)func_802AABF4, (void*)func_802CCFF8,
};
/* 802CBCEC-802CBD88 2C662C 009C+00 1/0 0/0 0/0 .text __dt__15Z2SpeechStarterFv */
//Z2SpeechStarter::~Z2SpeechStarter() {}
/* 802CBD88-802CBF60 2C66C8 01D8+00 1/0 1/1 0/0 .text setString__12Z2SpeechMgr2FPCUssUcUs
*/
void Z2SpeechMgr2::setString(u16 const* param_1, s16 param_2, u8 param_3, u16 param_4) {
switch (param_3) {
case 0x13:
case 0x15:
field_0x3fe = 1;
break;
case 0x12:
case 0x14:
field_0x3fe = 2;
break;
case 4:
case '\a':
case '\n':
case 0x16:
case 0x19:
case 0x1d:
case '!':
case '$':
case ')':
case ',':
case '-':
case '2':
case '3':
case '?':
case '@':
case 'A':
case 'S':
case 'T':
case 'U':
case 'Y':
case 'Z':
case '[':
case '\\':
case '`':
case 'a':
case 'b':
case 'c':
case 'd':
field_0x3fe = 12;
break;
case 0x1e:
case 0x1f:
case '\"':
case '%':
case '\'':
case '=':
case 'e':
case 'f':
case 'g':
case 'h':
case 'i':
case 'j':
field_0x3fe = 13;
break;
case '7':
case '8':
case '9':
case ':':
case ';':
case '<':
case 'l':
case 'm':
field_0x3fe = 14;
break;
case '/':
field_0x3fe = 15;
break;
case 0x0f:
case 0x10:
case '4':
case '5':
case '6':
case 'p':
field_0x3fe = 16;
break;
case 0x0e:
case 'B':
case 'D':
field_0x3fe = 17;
break;
case '\f':
field_0x3fe = 18;
break;
case '\t':
case '&':
case 'o':
field_0x3fe = 30;
break;
case '\b':
field_0x3fe = 31;
break;
case 0:
case 1:
case 2:
case 3:
field_0x3fe = 99;
return;
case 'q':
default:
field_0x3fe = 11;
break;
}
if ((field_0x3fe == 1) || (field_0x3fe == 2)) {
if (param_4 == 0) {
field_0x3fc = 0;
} else {
if (param_4 > 0x11) {
if ((field_0x3fe == 21) || (field_0x3fe == 20)) {
field_0x3fc = 0;
}
} else {
field_0x3fc = param_4 - 1;
}
}
} else {
field_0x3fc = param_4;
}
for (int i = 0; i < 500; i++) {
field_0x10[i] = 0;
}
if (param_2 > 500) {
field_0x3f8 = 500;
JUT_WARN(387, "TOO MANY TEXT : now(%d) > max(%d)", param_2, 500);
} else {
field_0x3f8 = param_2;
}
for (int i = 0; i < field_0x3f8; i++) {
field_0x10[i] = param_1[i];
}
field_0x3fa = 0;
field_0x3ff = 0;
field_0x400 = 0;
field_0x401 = 0;
for (int i = 0; i < 64; i++) {
field_0x402[i] = -1;
}
selectUnit(false);
}
/* ############################################################################################## */
/* 80455EE0-80455EE8 0044E0 0006+02 1/0 0/0 0/0 .sdata2 sBoringTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sBoringTail[6 + 2 /* padding */] = {
0x92,
0x58,
0x59,
0x5B,
0x70,
0x71,
/* padding */
0x00,
0x00,
};
/* 80455EE8-80455EF0 0044E8 0006+02 1/0 0/0 0/0 .sdata2 sOrderTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sOrderTail[6 + 2 /* padding */] = {
0x60,
0xA8,
0x5B,
0x4E,
0x5D,
0x87,
/* padding */
0x00,
0x00,
};
/* 80455EF0-80455EF8 0044F0 0005+03 1/0 0/0 0/0 .sdata2 sResentTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sResentTail[5 + 3 /* padding */] = {
0x4A,
0x98,
0x8A,
0x7E,
0x57,
/* padding */
0x00,
0x00,
0x00,
};
/* 80455EF8-80455F00 0044F8 0008+00 1/0 0/0 0/0 .sdata2 sCheerfulTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sCheerfulTail[8] = {
0x60, 0x6D, 0x4D, 0x44, 0x9C, 0x54, 0x70, 0x7B,
};
/* 80455F00-80455F08 004500 0005+03 1/0 0/0 0/0 .sdata2 sConfusedTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sConfusedTail[5 + 3 /* padding */] = {
0x2C,
0x42,
0x4C,
0x7C,
0x49,
/* padding */
0x00,
0x00,
0x00,
};
/* 80455F08-80455F10 004508 0007+01 1/0 0/0 0/0 .sdata2 sHostilityTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sHostilityTail[7 + 1 /* padding */] = {
0x97,
0x67,
0x94,
0x6A,
0x66,
0x4F,
0x6A,
/* padding */
0x00,
};
/* 80455F10-80455F18 004510 0008+00 1/0 0/0 0/0 .sdata2 sTiredTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sTiredTail[8] = {
0x66, 0x6F, 0x3B, 0x7A, 0x49, 0x91, 0x5C, 0x6A,
};
/* 80455F18-80455F20 004518 0007+01 1/0 0/0 0/0 .sdata2 sSeriousTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sSeriousTail[7 + 1 /* padding */] = {
0x7B,
0x69,
0x4B,
0x61,
0x52,
0x59,
0x87,
/* padding */
0x00,
};
/* 80455F20-80455F28 004520 0007+01 1/0 0/0 0/0 .sdata2 sReplybTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sReplybTail[7 + 1 /* padding */] = {
0x4F,
0x4A,
0xA2,
0x4F,
0x65,
0x98,
0x5C,
/* padding */
0x00,
};
/* 80455F28-80455F30 004528 0008+00 1/0 0/0 0/0 .sdata2 sDesideTail__8Z2MdnPrm */
SECTION_SDATA2 u8 Z2MdnPrm::sDesideTail[8] = {
0x64, 0x2E, 0x4A, 0x57, 0x80, 0x48, 0x7C, 0x5F,
};
/* 80455F30-80455F34 004530 0004+00 2/2 0/0 0/0 .sdata2 @3836 */
SECTION_SDATA2 static u8 lit_3836[4] = {
0x00,
0x00,
0x00,
0x00,
};
/* 80455F34-80455F38 004534 0004+00 6/6 0/0 0/0 .sdata2 @3837 */
SECTION_SDATA2 static f32 lit_3837 = 1.0f;
/* 80455F38-80455F3C 004538 0004+00 4/4 0/0 0/0 .sdata2 @3838 */
SECTION_SDATA2 static f32 lit_3838 = -1.0f;
/* 802CBF60-802CC190 2C68A0 0230+00 1/0 2/2 0/0 .text setTextCount__12Z2SpeechMgr2Fs */
void Z2SpeechMgr2::setTextCount(s16 param_0) {
if (field_0x3fe != 0x63) {
field_0x3ff = 0x0;
param_0 = (param_0 == 0) ? 0 : param_0 - 1;
bool bVar1 = false;
if (field_0x3fa == 0 && param_0 >= field_0x3f8) {
bVar1 = true;
}
field_0x3fa = param_0;
if (field_0x3fa >= field_0x3f8) {
field_0x3fa = field_0x3f8;
}
if ((field_0x3fe == 1) || (field_0x3fe == 2)) {
if (!field_0x0.isSoundAttached()) {
speakOneWord(false);
}
} else if (bVar1) {
if (field_0x3fc == 0) {
mSpeech.startSound(0x7a, &field_0x4, NULL, 0, 0.0f, 1.0f, 1.0f, -1.0f,
-1.0f, 0);
}
} else {
if (!isNonVerbal() ) {
JAISoundID aJStack_18;
switch (field_0x3fe) {
case 0xb:
aJStack_18 = Z2SE_SY_TEXT_OUT;
break;
case 0xc:
aJStack_18 = Z2SE_SY_TEXT_OUT_FEMALE;
break;
case 0xd:
aJStack_18 = Z2SE_SY_TEXT_OUT_CHILD;
break;
case 0xe:
aJStack_18 = Z2SE_SY_TEXT_OUT_GORON;
break;
case 0xf:
aJStack_18 = Z2SE_SY_TEXT_OUT_ZORA;
break;
case 0x10:
aJStack_18 = Z2SE_SY_TEXT_OUT_GREY;
break;
case 0x11:
aJStack_18 = Z2SE_SY_TEXT_OUT_SPIRIT;
break;
case 0x12:
aJStack_18 = Z2SE_SY_TEXT_OUT_BRAVE;
break;
case 0x1e:
aJStack_18 = Z2SE_SY_TEXT_OUT_GANON;
break;
case 0x1f:
aJStack_18 = Z2SE_SY_TEXT_OUT_ZANT;
break;
}
mSpeech.startSound(aJStack_18, &field_0x4, NULL, 0, 0.0f, 1.0f, 1.0f, -1.0f, -1.0f,
0);
}
}
}
}
/* ############################################################################################## */
/* 80455F3C-80455F40 00453C 0004+00 2/2 0/0 0/0 .sdata2 @3885 */
SECTION_SDATA2 static f32 lit_3885 = 127.0f;
/* 80455F40-80455F48 004540 0008+00 2/2 0/0 0/0 .sdata2 @3887 */
SECTION_SDATA2 static f64 lit_3887 = 4503601774854144.0 /* cast s32 to float */;
/* 802CC190-802CC2FC 2C6AD0 016C+00 1/1 1/1 0/0 .text speakOneWord__12Z2SpeechMgr2Fb */
void Z2SpeechMgr2::speakOneWord(bool param_0) {
if (Z2GetSceneMgr()->isSceneExist() && (field_0x3fe == 1 || field_0x3fe == 2) &&
field_0x400 == 0 && field_0x3ff <= 30)
{
if (field_0x3fa >= field_0x3f8) {
selectTail();
field_0x400 = 1;
} else if (isNonVerbal()) {
return;
}
u32 sound = field_0x3fc + 0x500a1;
f32 fVar1 = Z2GetSceneMgr()->getRoomReverb() / 127.0f;
mSpeech.startSound(sound, &field_0x0, NULL, 0,
fVar1, 1.0f, 1.0f, -1.0f, -1.0f, 0);
mSpeech.setPortData(&field_0x0, 8, field_0x402[field_0x401 - 1] + 1, -1);
if (field_0x400 == 0) {
selectUnit(param_0);
}
}
}
/* 802CC2FC-802CC4C0 2C6C3C 01C4+00 2/2 0/0 0/0 .text isNonVerbal__12Z2SpeechMgr2Fv */
bool Z2SpeechMgr2::isNonVerbal() {
switch(field_0x10[field_0x3fa]) {
case 0:
case 0x20:
case 0x21:
case 0x22:
case 0x23:
case 0x24:
case 0x25:
case 0x26:
case 0x27:
case 0x28:
case 0x29:
case 0x2a:
case 0x2b:
case 0x2c:
case 0x2d:
case 0x2e:
case 0x2f:
case 0x3a:
case 0x3b:
case 0x3c:
case 0x3d:
case 0x3e:
case 0x3f:
case 0x4b:
case 0x4c:
case 0x4d:
case 0x4e:
case 0x4f:
case 0x5b:
case 0x5c:
case 0x5d:
case 0x5e:
case 0x5f:
case 0x813f:
case 0x8140:
case 0x8141:
case 0x8142:
case 0x8143:
case 0x8144:
case 0x8145:
case 0x8146:
case 0x8147:
case 0x8148:
case 0x8149:
case 0x814a:
case 0x814b:
case 0x8151:
case 0x815e:
case 0x8162:
case 0x8166:
case 0x8168:
case 0x8169:
case 0x816a:
case 0x816d:
case 0x816e:
case 0x816f:
case 0x8170:
case 0x8171:
case 0x8172:
case 0x8175:
case 0x8176:
case 0x817b:
case 0x817c:
case 0x8181:
case 0x818f:
case 0x8190:
case 0x8193:
case 0x8194:
case 0x8195:
case 0x8196:
return true;
}
if(field_0x10[field_0x3fa] == 10) {
switch (field_0x3fe) {
case 1:
case 2:
return false;
default:
return true;
}
}
return false;
}
/* 8039C260-8039C2C4 0288C0 0064+00 1/0 0/0 0/0 .rodata sReply__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sReply[100] = {
0x6A, 0x8A, 0x50, 0x5F, 0x53, 0x37, 0x37, 0x4F, 0x4F, 0x5E, 0xAA, 0x46, 0x52, 0x5A, 0x5A,
0x4F, 0x4F, 0x45, 0x45, 0x56, 0x64, 0x79, 0x79, 0x79, 0x87, 0x95, 0x95, 0x89, 0x89, 0x4C,
0x4C, 0x4B, 0x52, 0x41, 0x41, 0x5B, 0x5F, 0x71, 0x53, 0x47, 0x89, 0x7D, 0x77, 0x88, 0x88,
0x80, 0x80, 0x77, 0x52, 0x43, 0x43, 0x42, 0x42, 0x42, 0x42, 0x53, 0x53, 0x4C, 0x4C, 0x5B,
0x5A, 0x70, 0x75, 0x33, 0x5E, 0x5F, 0x5F, 0x60, 0x5E, 0x68, 0x4B, 0x3B, 0x3B, 0x58, 0x59,
0x5D, 0x60, 0x63, 0x63, 0x54, 0x3E, 0x38, 0x38, 0x39, 0x35, 0x41, 0x41, 0x41, 0x41, 0x56,
0x71, 0x85, 0x85, 0xA2, 0xA2, 0x52, 0x52, 0x5C, 0x5C, 0x75,
};
COMPILER_STRIP_GATE(0x8039C260, &Z2MdnPrm::sReply);
/* 8039C2C4-8039C2D0 028924 000A+02 1/0 0/0 0/0 .rodata sReplyTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sReplyTail[10 + 2 /* padding */] = {
0x5E,
0x7F,
0x68,
0x39,
0x56,
0x75,
0x47,
0x71,
0x7D,
0x33,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C2C4, &Z2MdnPrm::sReplyTail);
/* 8039C2D0-8039C334 028930 0064+00 1/0 0/0 0/0 .rodata sJoke__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sJoke[100] = {
0x68, 0x57, 0x57, 0x55, 0x55, 0x51, 0x5B, 0x64, 0x6B, 0x7B, 0x7B, 0x5C, 0x77, 0x97, 0x8D,
0x97, 0x97, 0x8D, 0x66, 0x69, 0xA2, 0x5C, 0x87, 0x4F, 0x69, 0x5F, 0x5F, 0x83, 0x83, 0x82,
0x7F, 0x96, 0x96, 0xB0, 0x70, 0xA1, 0x6D, 0x6D, 0x6D, 0x59, 0x4C, 0x4B, 0x5A, 0x40, 0x4A,
0xAD, 0xA3, 0xAE, 0xAE, 0x63, 0x46, 0x45, 0x3D, 0x47, 0x47, 0x5A, 0x4D, 0x6E, 0x6A, 0x7F,
0x7F, 0x7F, 0x7F, 0xA1, 0xA1, 0xA5, 0x5C, 0x60, 0x5C, 0x6B, 0x6B, 0x7E, 0x81, 0x60, 0x66,
0x64, 0x60, 0xB1, 0x6C, 0x6D, 0x6D, 0x7E, 0x7A, 0x97, 0x97, 0x99, 0xA5, 0x89, 0x90, 0xA4,
0x45, 0x45, 0x29, 0x4C, 0x4B, 0x64, 0x64, 0x60, 0x5C, 0xB1,
};
COMPILER_STRIP_GATE(0x8039C2D0, &Z2MdnPrm::sJoke);
/* 8039C334-8039C340 028994 000A+02 1/0 0/0 0/0 .rodata sJokeTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sJokeTail[10 + 2 /* padding */] = {
0x51,
0x97,
0x60,
0xB0,
0x6F,
0x5E,
0x5A,
0xA6,
0x4F,
0x4F,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C334, &Z2MdnPrm::sJokeTail);
/* 8039C340-8039C3A4 0289A0 0064+00 1/0 0/0 0/0 .rodata sSexy__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sSexy[100] = {
0x5E, 0x60, 0x5F, 0x63, 0x63, 0x72, 0x72, 0x78, 0x4D, 0x7A, 0x6E, 0x6E, 0x6E, 0x6E, 0x6E,
0x59, 0x59, 0x7A, 0x7A, 0xA5, 0x90, 0x8D, 0x86, 0x62, 0x72, 0x79, 0x79, 0x86, 0x7F, 0x8B,
0x85, 0x7B, 0x7B, 0x5E, 0x5E, 0x6D, 0x6D, 0x88, 0x5F, 0xA3, 0xA3, 0x95, 0x95, 0x7F, 0x79,
0x79, 0x79, 0x73, 0x5E, 0x54, 0x45, 0x4F, 0x4F, 0x63, 0x51, 0x56, 0x54, 0x63, 0x63, 0x7B,
0x7B, 0x7B, 0x7B, 0x3B, 0x3B, 0x52, 0x88, 0x8C, 0x6B, 0x98, 0x98, 0xA3, 0xA6, 0x86, 0x89,
0x76, 0x79, 0x79, 0x5C, 0x6A, 0x90, 0xAB, 0x5C, 0x7D, 0x52, 0x49, 0x54, 0x57, 0x49, 0x55,
0x79, 0x65, 0x65, 0x4A, 0x5C, 0x78, 0x78, 0x8B, 0x8D, 0x7C,
};
COMPILER_STRIP_GATE(0x8039C340, &Z2MdnPrm::sSexy);
/* 8039C3A4-8039C3B0 028A04 000A+02 1/0 0/0 0/0 .rodata sSexyTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sSexyTail[10 + 2 /* padding */] = {
0x52,
0x79,
0x82,
0xA5,
0x62,
0x86,
0x3F,
0x7D,
0x57,
0x7C,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C3A4, &Z2MdnPrm::sSexyTail);
/* 8039C3B0-8039C414 028A10 0064+00 1/0 0/0 0/0 .rodata sRidicule__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sRidicule[100] = {
0xA7, 0x5A, 0x5A, 0x52, 0x52, 0x85, 0x85, 0x8C, 0x63, 0x73, 0x73, 0x90, 0x50, 0x46, 0x74,
0x74, 0xA3, 0xA7, 0x41, 0x51, 0x58, 0x34, 0x34, 0x2A, 0x5A, 0x81, 0x5D, 0x42, 0x4B, 0x70,
0x70, 0xB1, 0xB1, 0xB1, 0xB1, 0x65, 0x6A, 0xB1, 0x54, 0xA8, 0xA8, 0x6B, 0x6C, 0x55, 0x55,
0x63, 0x63, 0x6F, 0x7E, 0x64, 0x58, 0x62, 0x63, 0x47, 0x5C, 0x5C, 0x5C, 0x4D, 0x79, 0x40,
0x40, 0x58, 0x48, 0x54, 0x54, 0x4E, 0x4E, 0x6E, 0x6E, 0x4B, 0x47, 0x67, 0x90, 0xA0, 0x79,
0x79, 0x79, 0x7C, 0x7C, 0x6C, 0x6C, 0x73, 0x73, 0x6E, 0x6E, 0x36, 0x3F, 0x3C, 0x56, 0x2D,
0x2D, 0x2D, 0x2D, 0x8C, 0x8C, 0x8B, 0x8B, 0x93, 0x93, 0x6E,
};
COMPILER_STRIP_GATE(0x8039C3B0, &Z2MdnPrm::sRidicule);
/* 8039C414-8039C420 028A74 000A+02 1/0 0/0 0/0 .rodata sRidiculeTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sRidiculeTail[10 + 2 /* padding */] = {
0x81,
0x67,
0x6D,
0x8C,
0x90,
0x85,
0xB1,
0x4D,
0x4F,
0x6E,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C414, &Z2MdnPrm::sRidiculeTail);
/* 8039C420-8039C48C 028A80 006C+00 1/0 0/0 0/0 .rodata sBoring__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sBoring[108] = {
0x8E, 0x9C, 0x9C, 0x5A, 0x5A, 0x52, 0x52, 0x5B, 0x5C, 0x56, 0x5C, 0x52, 0x52, 0x2D, 0x2D, 0x5B,
0x59, 0x56, 0x56, 0x56, 0x56, 0x6B, 0x6B, 0x58, 0x4C, 0x8E, 0x8E, 0x59, 0x61, 0x54, 0xA0, 0x4D,
0x5D, 0x59, 0x48, 0x30, 0x30, 0x5B, 0x5B, 0x5B, 0x4A, 0x64, 0x64, 0x7A, 0x7A, 0x92, 0x62, 0x62,
0x65, 0xA0, 0xA0, 0xB3, 0xB3, 0x4E, 0x4A, 0x49, 0x49, 0x98, 0x98, 0x83, 0x83, 0x76, 0x76, 0x7E,
0x7F, 0x58, 0x5A, 0x51, 0x57, 0x65, 0x65, 0x60, 0x60, 0x72, 0x72, 0x85, 0x8C, 0x89, 0x89, 0x89,
0x89, 0x5A, 0x5A, 0x63, 0x66, 0x5E, 0x5E, 0x71, 0x62, 0x55, 0x55, 0x85, 0x85, 0x5B, 0x5B, 0x5B,
0x5B, 0x5E, 0x70, 0x56, 0x56, 0x4C, 0x4C, 0x59, 0x59, 0x5B, 0x5B, 0x71,
};
COMPILER_STRIP_GATE(0x8039C420, &Z2MdnPrm::sBoring);
/* 8039C48C-8039C4EC 028AEC 005E+02 1/0 0/0 0/0 .rodata sIrritated__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sIrritated[94 + 2 /* padding */] = {
0x6C,
0x91,
0x67,
0x8B,
0x8B,
0xA2,
0xA2,
0xAB,
0x48,
0x64,
0x73,
0x61,
0x61,
0x64,
0x64,
0x6D,
0x60,
0x7E,
0x4A,
0x55,
0x6A,
0x63,
0x66,
0x78,
0x5C,
0x5A,
0x6E,
0x79,
0x75,
0x62,
0x62,
0x57,
0x85,
0x3F,
0x3C,
0x83,
0x83,
0x9B,
0x78,
0x65,
0x65,
0x67,
0x65,
0x65,
0x87,
0x88,
0x88,
0x3D,
0x4C,
0x68,
0x68,
0x4D,
0x5B,
0x6E,
0x6E,
0x74,
0x56,
0x63,
0x6B,
0x8C,
0x8C,
0x93,
0x93,
0x4E,
0x4E,
0x69,
0x77,
0x75,
0x75,
0x71,
0x79,
0x4F,
0x4F,
0x6F,
0x4E,
0x42,
0x71,
0x75,
0x5E,
0x68,
0xAD,
0x6E,
0x72,
0x82,
0x83,
0x87,
0x85,
0x85,
0x85,
0x8E,
0x60,
0x6D,
0x80,
0x80,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C48C, &Z2MdnPrm::sIrritated);
/* 8039C4EC-8039C4F8 028B4C 000A+02 1/0 0/0 0/0 .rodata sIrritatedTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sIrritatedTail[10 + 2 /* padding */] = {
0x64,
0x61,
0x4E,
0x91,
0xA0,
0x85,
0x9B,
0x67,
0x6F,
0x64,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C4EC, &Z2MdnPrm::sIrritatedTail);
/* 8039C4F8-8039C56C 028B58 0072+02 1/0 0/0 0/0 .rodata sOrder__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sOrder[114 + 2 /* padding */] = {
0x77,
0x5F,
0x5F,
0x73,
0x73,
0x66,
0x66,
0x6B,
0x6B,
0x7A,
0x7A,
0x60,
0x54,
0x5F,
0x5F,
0x69,
0x69,
0x5A,
0x86,
0x84,
0x84,
0x96,
0x96,
0x94,
0x94,
0x8A,
0x87,
0x84,
0x5A,
0x2C,
0x4E,
0x52,
0x52,
0x52,
0x52,
0x51,
0x51,
0x6E,
0x62,
0x5E,
0x6C,
0xA3,
0xA3,
0x5B,
0x62,
0x63,
0x63,
0x66,
0x66,
0x51,
0x51,
0x5B,
0x5B,
0x78,
0x78,
0x8F,
0x8F,
0x83,
0x61,
0x7A,
0x7A,
0x4E,
0x75,
0x81,
0x81,
0x71,
0x71,
0x83,
0x83,
0x66,
0x5D,
0x5D,
0x65,
0x47,
0x53,
0x6D,
0x6D,
0x8C,
0x8F,
0x8F,
0x8F,
0x2C,
0x2B,
0x6A,
0x6A,
0x5C,
0x5C,
0x54,
0x54,
0x60,
0xAC,
0xA1,
0x4E,
0x5B,
0x5B,
0x5F,
0x5F,
0x79,
0x4A,
0x60,
0x60,
0x5A,
0x5A,
0x35,
0x2E,
0x48,
0x48,
0x69,
0x69,
0x6D,
0x6D,
0x94,
0x94,
0x97,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C4F8, &Z2MdnPrm::sOrder);
/* 8039C56C-8039C5D8 028BCC 006A+02 1/0 0/0 0/0 .rodata sResent__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sResent[106 + 2 /* padding */] = {
0x6F,
0x5F,
0x5F,
0x66,
0x66,
0x66,
0x66,
0x55,
0x55,
0x55,
0x55,
0x4B,
0x4B,
0x6B,
0x6B,
0x86,
0x86,
0x4A,
0x4A,
0x6D,
0x6D,
0x6D,
0x6D,
0x8C,
0x8C,
0x84,
0x84,
0x64,
0x64,
0x6C,
0x6C,
0x92,
0x92,
0x6A,
0x5F,
0x6F,
0x6F,
0x62,
0x62,
0x62,
0x75,
0x5A,
0x5A,
0x5A,
0x5A,
0x60,
0x60,
0x6A,
0x6A,
0x76,
0x76,
0x6A,
0x6A,
0x7F,
0x7F,
0x9A,
0x9A,
0x98,
0x56,
0x5B,
0x5B,
0x6F,
0x82,
0x98,
0x98,
0x9B,
0x9B,
0x6E,
0x6E,
0x61,
0x61,
0x5C,
0x5F,
0x67,
0x62,
0x8A,
0xA9,
0x65,
0x65,
0x31,
0x31,
0x8C,
0x8C,
0x69,
0x69,
0x7E,
0x67,
0x67,
0x5B,
0x73,
0x73,
0x65,
0x65,
0x56,
0x56,
0x5E,
0x5E,
0xAA,
0xAA,
0x9E,
0x9E,
0x5A,
0x5A,
0x57,
0x57,
0x57,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C56C, &Z2MdnPrm::sResent);
/* 8039C5D8-8039C644 028C38 006A+02 1/0 0/0 0/0 .rodata sCheerful__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sCheerful[106 + 2 /* padding */] = {
0x64,
0x6D,
0x6D,
0x6D,
0x99,
0x6D,
0x40,
0x51,
0x51,
0x6F,
0x6F,
0x66,
0x66,
0x60,
0xA7,
0xAF,
0xB3,
0x61,
0x61,
0xA7,
0xA7,
0x5E,
0x8B,
0x75,
0x77,
0x72,
0x72,
0x93,
0x93,
0x8B,
0x8B,
0x88,
0x88,
0x77,
0x77,
0x80,
0x80,
0x80,
0x80,
0x67,
0x67,
0x4D,
0x4A,
0x69,
0x44,
0xA1,
0x64,
0xA8,
0xAE,
0x85,
0x85,
0x8D,
0x95,
0xA9,
0xA9,
0x91,
0x91,
0x67,
0x69,
0x60,
0x60,
0x5E,
0x5E,
0x54,
0x34,
0x6B,
0x63,
0x4F,
0x4F,
0x46,
0x46,
0x55,
0x6F,
0x6A,
0x6A,
0x75,
0x75,
0x75,
0x75,
0x70,
0x70,
0x9F,
0x9F,
0x55,
0x55,
0x63,
0x63,
0x63,
0x62,
0x9C,
0x9C,
0xA8,
0x85,
0x65,
0x65,
0x65,
0x65,
0x70,
0x6B,
0x6B,
0x6B,
0x6D,
0x6D,
0x57,
0x57,
0x7B,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C5D8, &Z2MdnPrm::sCheerful);
/* 8039C644-8039C6B0 028CA4 006A+02 1/0 0/0 0/0 .rodata sConfused__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sConfused[106 + 2 /* padding */] = {
0x83,
0x80,
0x80,
0x82,
0x82,
0x82,
0x82,
0x5B,
0x75,
0x84,
0x84,
0x84,
0x84,
0x75,
0x75,
0x62,
0x62,
0x62,
0x4D,
0x56,
0x56,
0x59,
0x59,
0x59,
0x59,
0x74,
0x74,
0x85,
0x7D,
0x8D,
0x8D,
0x70,
0x70,
0x5A,
0x5A,
0x6B,
0x6B,
0x6B,
0x6B,
0x70,
0x79,
0x73,
0x73,
0x71,
0x71,
0x75,
0x75,
0x7B,
0x7B,
0x5F,
0x5F,
0x62,
0x76,
0x64,
0x7B,
0x7B,
0x7B,
0x7C,
0x7F,
0x65,
0x7C,
0x7C,
0x68,
0x43,
0x40,
0x67,
0x67,
0x69,
0x69,
0x5F,
0x5F,
0x5D,
0x5D,
0x5D,
0xA2,
0xA2,
0xA2,
0xA6,
0xA6,
0x9A,
0x9A,
0x97,
0x97,
0x97,
0x97,
0x97,
0x97,
0x8E,
0x8E,
0x94,
0x8E,
0x95,
0x95,
0x95,
0x95,
0x42,
0x38,
0x38,
0x38,
0x83,
0x83,
0x8E,
0x8E,
0x4C,
0x56,
0x56,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C644, &Z2MdnPrm::sConfused);
/* 8039C6B0-8039C718 028D10 0068+00 1/0 0/0 0/0 .rodata sHostility__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sHostility[104] = {
0x85, 0x71, 0x71, 0x73, 0x73, 0x3B, 0x62, 0x84, 0x94, 0x94, 0x94, 0xAF, 0x98, 0xAD, 0xAD,
0x5A, 0x5A, 0x63, 0x63, 0x97, 0x90, 0x90, 0x7B, 0x73, 0x73, 0x63, 0x63, 0x55, 0x55, 0x65,
0x66, 0x7F, 0x7F, 0x87, 0x87, 0x8A, 0x8A, 0x94, 0x5D, 0x5C, 0x5A, 0x67, 0x67, 0x68, 0x68,
0x5C, 0x5C, 0x56, 0x56, 0x53, 0x53, 0x73, 0x73, 0x87, 0x87, 0x8B, 0x8B, 0x74, 0x74, 0x5B,
0x6F, 0x78, 0x73, 0x6E, 0x6E, 0x71, 0x71, 0x5B, 0x5B, 0x6E, 0x6E, 0x66, 0x57, 0x5C, 0x61,
0x65, 0x6B, 0x6E, 0x6E, 0x83, 0x83, 0x96, 0x3F, 0x56, 0x56, 0x56, 0x56, 0x4F, 0x5F, 0x57,
0x62, 0x6A, 0x5F, 0x72, 0x72, 0x62, 0x62, 0x65, 0x5E, 0x69, 0x69, 0x63, 0x63, 0x7F,
};
COMPILER_STRIP_GATE(0x8039C6B0, &Z2MdnPrm::sHostility);
/* 8039C718-8039C784 028D78 006A+02 1/0 0/0 0/0 .rodata sTired__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sTired[106 + 2 /* padding */] = {
0x70,
0x70,
0x70,
0x5C,
0x5C,
0x5C,
0x6F,
0x6F,
0x6F,
0x93,
0x8C,
0x9A,
0x9D,
0x89,
0x99,
0x7A,
0x91,
0x8D,
0x8D,
0x8D,
0x8D,
0x69,
0x69,
0x72,
0x72,
0x65,
0x65,
0x65,
0x9E,
0x98,
0x98,
0x2A,
0x50,
0x54,
0x54,
0x49,
0x64,
0x59,
0x59,
0x62,
0x62,
0x62,
0x44,
0x5E,
0x9F,
0x91,
0x63,
0x63,
0x63,
0x57,
0x57,
0x2A,
0x64,
0x52,
0x5B,
0x5C,
0x5C,
0x5C,
0x5C,
0x59,
0x63,
0x75,
0x66,
0x69,
0x61,
0x67,
0x67,
0x67,
0x67,
0x65,
0x6A,
0x6A,
0x7B,
0x75,
0x75,
0x75,
0x75,
0x69,
0x69,
0x64,
0x64,
0x51,
0x67,
0x68,
0x68,
0x6F,
0x6F,
0x6F,
0x7F,
0x95,
0x9C,
0x87,
0x84,
0x8A,
0x72,
0x84,
0x84,
0x6D,
0x6D,
0x6A,
0x6A,
0x8D,
0x8D,
0x8D,
0x8D,
0x3B,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C718, &Z2MdnPrm::sTired);
/* 8039C784-8039C7F0 028DE4 006A+02 1/0 0/0 0/0 .rodata sSerious__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sSerious[106 + 2 /* padding */] = {
0x52,
0x65,
0x65,
0x72,
0x5A,
0x61,
0x61,
0x7B,
0x80,
0x92,
0x93,
0x9D,
0x9D,
0x70,
0x79,
0x76,
0x62,
0x57,
0x5A,
0x53,
0x53,
0x59,
0x59,
0x65,
0x63,
0x60,
0x60,
0x6A,
0x83,
0x80,
0x7F,
0x5D,
0x5C,
0x45,
0x5D,
0x71,
0x72,
0x65,
0x65,
0x65,
0x66,
0x4B,
0xB2,
0x60,
0x5C,
0x5C,
0x5C,
0x5B,
0x5F,
0x55,
0x55,
0x5E,
0x5E,
0x5F,
0x5B,
0x4D,
0x58,
0x60,
0x5B,
0x50,
0x50,
0x56,
0x56,
0x56,
0x7D,
0x6E,
0x72,
0x73,
0x73,
0x6A,
0x64,
0x54,
0x58,
0x57,
0x57,
0x5D,
0x5D,
0x64,
0x5F,
0x53,
0x53,
0x52,
0x54,
0x4D,
0x4D,
0x4D,
0x4D,
0x59,
0x59,
0x59,
0x69,
0x6B,
0x6B,
0x5A,
0x72,
0x69,
0x70,
0x60,
0x3C,
0x81,
0x81,
0x92,
0x92,
0x8E,
0x98,
0x87,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C784, &Z2MdnPrm::sSerious);
/* 8039C7F0-8039C844 028E50 0054+00 1/0 0/0 0/0 .rodata sReplyb__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sReplyb[84] = {
0x5C, 0x45, 0x45, 0x71, 0x9F, 0x57, 0xB4, 0xB4, 0x56, 0x62, 0x8E, 0x61, 0x61, 0xB0,
0xB0, 0x3C, 0x59, 0x4A, 0x64, 0xA4, 0xA4, 0x5A, 0x5A, 0x5A, 0x5A, 0x72, 0x72, 0x4B,
0x6B, 0x97, 0x97, 0x59, 0x60, 0x60, 0x60, 0x69, 0x3E, 0x3E, 0x57, 0x42, 0x5E, 0x76,
0x76, 0x6C, 0x6C, 0x9B, 0x6E, 0x84, 0x6F, 0x9B, 0x9B, 0x90, 0x90, 0x76, 0x76, 0x72,
0x72, 0x8A, 0x2C, 0x1F, 0x1F, 0x95, 0x95, 0x69, 0x4C, 0x59, 0x59, 0x79, 0x5B, 0x44,
0x44, 0x4F, 0x52, 0x58, 0x5A, 0x6F, 0x6E, 0x8A, 0x8E, 0x8E, 0x8E, 0x8C, 0x8C, 0x9B,
};
COMPILER_STRIP_GATE(0x8039C7F0, &Z2MdnPrm::sReplyb);
/* 8039C844-8039C8A8 028EA4 0064+00 1/0 0/0 0/0 .rodata sApologize__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sApologize[100] = {
0x6A, 0x6A, 0x6A, 0x51, 0x51, 0x51, 0x51, 0x51, 0x51, 0x51, 0x57, 0x57, 0x57, 0x63, 0x61,
0x54, 0x54, 0x54, 0x54, 0x58, 0x58, 0x58, 0x58, 0x45, 0x45, 0x56, 0x56, 0x5B, 0x5B, 0x37,
0x53, 0x53, 0x53, 0x59, 0x59, 0x59, 0x49, 0x58, 0x58, 0x55, 0x56, 0x56, 0x83, 0x7F, 0x7F,
0x83, 0x83, 0x75, 0x75, 0x88, 0x76, 0x7E, 0x75, 0x75, 0x83, 0x85, 0x85, 0x85, 0x85, 0x8E,
0x89, 0x89, 0x89, 0x5C, 0x5C, 0x6E, 0x6E, 0x6E, 0x6E, 0x68, 0x65, 0x5F, 0x5F, 0x6A, 0x58,
0x5B, 0x70, 0x72, 0x72, 0x72, 0x72, 0x6E, 0x76, 0x6B, 0x6B, 0x58, 0x69, 0x66, 0x66, 0x64,
0x64, 0x60, 0x61, 0x63, 0x6A, 0x62, 0x62, 0x64, 0x65, 0x71,
};
COMPILER_STRIP_GATE(0x8039C844, &Z2MdnPrm::sApologize);
/* 8039C8A8-8039C8B4 028F08 0009+03 1/0 0/0 0/0 .rodata sApologizeTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sApologizeTail[9 + 3 /* padding */] = {
0x7C,
0x6E,
0x63,
0x71,
0x51,
0x37,
0x75,
0x58,
0x5C,
/* padding */
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8039C8A8, &Z2MdnPrm::sApologizeTail);
/* 8039C8B4-8039C918 028F14 0064+00 1/0 0/0 0/0 .rodata sDeside__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sDeside[100] = {
0x77, 0x77, 0x77, 0x58, 0x58, 0x6F, 0x78, 0x5F, 0x66, 0x5E, 0x6E, 0x62, 0x62, 0x2E, 0x5A,
0x58, 0x54, 0x52, 0x52, 0x5C, 0x59, 0x56, 0x56, 0x4B, 0x4B, 0x63, 0x63, 0x4D, 0x4E, 0x4A,
0x69, 0x71, 0x71, 0x76, 0x80, 0x80, 0x80, 0x73, 0x73, 0x5C, 0x7C, 0x64, 0x83, 0x89, 0x89,
0x82, 0x82, 0x7F, 0x7F, 0x88, 0x88, 0x90, 0x91, 0x89, 0x89, 0x57, 0x73, 0x67, 0x67, 0x81,
0x84, 0x6C, 0x6C, 0x5F, 0x69, 0x76, 0x76, 0x6C, 0x75, 0x82, 0x64, 0x75, 0x72, 0x80, 0x69,
0x62, 0x5D, 0x67, 0x5D, 0x5F, 0x62, 0x59, 0x5D, 0x55, 0x55, 0x48, 0x5F, 0x5F, 0x5F, 0x5D,
0x75, 0x6A, 0x66, 0x76, 0x69, 0x69, 0x69, 0x60, 0x60, 0x5F,
};
COMPILER_STRIP_GATE(0x8039C8B4, &Z2MdnPrm::sDeside);
/* 8039C918-8039C980 028F78 0068+00 1/0 0/0 0/0 .rodata sAfford__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sAfford[104] = {
0x4E, 0x45, 0x52, 0x5B, 0x56, 0x5B, 0x59, 0x52, 0x52, 0x57, 0x5C, 0x50, 0x50, 0x49, 0x80,
0x6E, 0x6E, 0x5A, 0x5C, 0x60, 0x6A, 0x62, 0x62, 0x6A, 0x71, 0x48, 0x4C, 0x5B, 0x5A, 0x40,
0x40, 0x49, 0x49, 0x50, 0x51, 0x51, 0x51, 0x3A, 0x5A, 0x5A, 0x5A, 0x5A, 0x5A, 0x57, 0x57,
0x5A, 0x7F, 0x6A, 0x6A, 0x69, 0x69, 0x8C, 0x57, 0x57, 0x48, 0x48, 0x48, 0x4B, 0x4C, 0x49,
0x45, 0x47, 0x47, 0x4C, 0x48, 0x50, 0x50, 0x49, 0x42, 0x42, 0x42, 0x34, 0x26, 0x3C, 0x2C,
0x7D, 0x6E, 0x56, 0x79, 0x79, 0x50, 0x4C, 0x50, 0x43, 0x52, 0x51, 0x66, 0x6C, 0x64, 0x63,
0x63, 0x5D, 0x69, 0x70, 0x56, 0x50, 0x4B, 0x92, 0x86, 0x8F, 0x4B, 0x4F, 0x57, 0x56,
};
COMPILER_STRIP_GATE(0x8039C918, &Z2MdnPrm::sAfford);
/* 8039C980-8039C98C 028FE0 000C+00 1/0 0/0 0/0 .rodata sAffordTail__8Z2MdnPrm */
SECTION_RODATA u8 const Z2MdnPrm::sAffordTail[12] = {
0x63, 0x8E, 0x5B, 0x59, 0x4C, 0x3A, 0x69, 0x47, 0x41, 0x59, 0x50, 0x55,
};
COMPILER_STRIP_GATE(0x8039C980, &Z2MdnPrm::sAffordTail);
/* 8039C98C-8039CA58 -00001 00CC+00 2/2 0/0 0/0 .rodata sPrm__8Z2MdnPrm */
SECTION_RODATA sPrmStruct const Z2MdnPrm::sPrm[17] = {
{ (u8**)&Z2MdnPrm::sReply, (u8**)&Z2MdnPrm::sReplyTail, 0x32, 0x06, 0x04, 0x00},
{ (u8**)&Z2MdnPrm::sJoke, (u8**)&Z2MdnPrm::sJokeTail, 0x32, 0x03, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sSexy, (u8**)&Z2MdnPrm::sSexyTail, 0x32, 0x03, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sRidicule, (u8**)&Z2MdnPrm::sRidiculeTail, 0x32, 0x03, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sBoring, (u8**)&Z2MdnPrm::sBoringTail, 0x36, 0x01, 0x05, 0x00},
{ (u8**)&Z2MdnPrm::sIrritated, (u8**)&Z2MdnPrm::sIrritatedTail, 0x2F, 0x03, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sOrder, (u8**)&Z2MdnPrm::sOrderTail, 0x39, 0x02, 0x04, 0x00},
{ (u8**)&Z2MdnPrm::sResent, (u8**)&Z2MdnPrm::sResentTail, 0x35, 0x02, 0x03, 0x00},
{ (u8**)&Z2MdnPrm::sCheerful, (u8**)&Z2MdnPrm::sCheerfulTail, 0x35, 0x01, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sConfused, (u8**)&Z2MdnPrm::sConfusedTail, 0x35, 0x03, 0x02, 0x00},
{ (u8**)&Z2MdnPrm::sHostility, (u8**)&Z2MdnPrm::sHostilityTail, 0x34, 0x02, 0x05, 0x00},
{ (u8**)&Z2MdnPrm::sTired, (u8**)&Z2MdnPrm::sTiredTail, 0x35, 0x03, 0x05, 0x00},
{ (u8**)&Z2MdnPrm::sSerious, (u8**)&Z2MdnPrm::sSeriousTail, 0x35, 0x02, 0x05, 0x00},
{ (u8**)&Z2MdnPrm::sReplyb, (u8**)&Z2MdnPrm::sReplybTail, 0x2A, 0x04, 0x03, 0x00},
{ (u8**)&Z2MdnPrm::sApologize, (u8**)&Z2MdnPrm::sApologizeTail, 0x32, 0x04, 0x05, 0x00},
{ (u8**)&Z2MdnPrm::sDeside, (u8**)&Z2MdnPrm::sDesideTail, 0x32, 0x01, 0x07, 0x00},
{ (u8**)&Z2MdnPrm::sAfford, (u8**)&Z2MdnPrm::sAffordTail, 0x34, 0x02, 0x0A, 0x00},
};
COMPILER_STRIP_GATE(0x8039C98C, &Z2MdnPrm::sPrm);
/* 80455F48-80455F50 004548 0008+00 3/3 0/0 0/0 .sdata2 @4083 */
SECTION_SDATA2 static f64 lit_4083 = 4503599627370496.0 /* cast u32 to float */;
/* 80456BA8-80456BAC 000048 0002+02 1/1 0/0 0/0 .sbss2 @4003 */
SECTION_SBSS2 static u8 lit_4003[2 + 2 /* padding */];
typedef struct {
u8 field_0x0;
u8 field_0x1;
} Z2ConnectCost;
/* 802CC4C0-802CC738 2C6E00 0278+00 2/2 0/0 0/0 .text selectUnit__12Z2SpeechMgr2Fb */
// This one is a mess
#ifdef NONMATCHING
void Z2SpeechMgr2::selectUnit(bool param_0) {
Z2ConnectCost local_3c[5];
if (field_0x401 >= 64) {
field_0x0->stop();
} else {
s32 ZVar2 = random.get_uint8(Z2MdnPrm::sPrm[field_0x3fc].field_0x8);
if (field_0x401 != 0 && param_0) {
u8 cVar5 = 0;
ZVar2 = field_0x402[field_0x401 - 1];
do {
bool bVar1;
int ZVar3;
do {
do {
bVar1 = false;
ZVar3 = random.get_uint8(Z2MdnPrm::sPrm[field_0x3fc].field_0x8);
for (int iVar4 = 0; iVar4 < field_0x401; iVar4++) {
if (ZVar3 == field_0x402[iVar4]) {
bVar1 = true;
break;
}
}
} while (bVar1);
for (int iVar4 = 0; iVar4 < cVar5; iVar4++) {
if (ZVar3 == local_3c[iVar4].field_0x0) {
bVar1 = true;
break;
}
}
} while (bVar1);
local_3c[1].field_0x1 = J3DUD::JMAAbs((*Z2MdnPrm::sPrm[field_0x3fc].field_0x0)[ZVar3 * 2] - (*Z2MdnPrm::sPrm[field_0x3fc].field_0x0)[ZVar3 * 2 + 1]);
local_3c[2].field_0x0 = ZVar3;
local_3c[cVar5] = local_3c[2];
cVar5++;
} while (cVar5 != 5);
for (int iVar4 = 0; /*ZVar2 = local_3c[0],*/ iVar4 < 5; iVar4++) {
if (local_3c[iVar4].field_0x1 < local_3c[0].field_0x0) {
local_3c[0].field_0x1 = local_3c[iVar4].field_0x1;
local_3c[0].field_0x0 = local_3c[iVar4].field_0x0;
}
}
}
field_0x402[field_0x401 - 1] = ZVar2;
field_0x401++;
}
}
#else
void Z2SpeechMgr2::selectUnit(bool param_0) {
// NONMATCHING
}
#endif
/* ############################################################################################## */
/* 80456BAC-80456BB0 00004C 0002+02 1/1 0/0 0/0 .sbss2 @4104 */
SECTION_SBSS2 static u8 lit_4104[2 + 2 /* padding */];
/* 802CC738-802CC9D0 2C7078 0298+00 1/1 0/0 0/0 .text selectTail__12Z2SpeechMgr2Fv */
void Z2SpeechMgr2::selectTail() {
// NONMATCHING
}
/* 802CC9D0-802CCA18 2C7310 0048+00 0/0 1/1 0/0 .text framework__12Z2SpeechMgr2Fv */
void Z2SpeechMgr2::framework() {
switch (field_0x3fe) {
case 1:
case 2:
if (field_0x0) {
field_0x3ff++;
if (field_0x3ff > 30) {
return;
}
} else {
field_0x3fa = 0;
}
break;
}
}
/* 802CCA18-802CCF88 2C7358 0570+00 0/0 2/2 0/0 .text playOneShotVoice__12Z2SpeechMgr2FUcUsP3VecSc
*/
void Z2SpeechMgr2::playOneShotVoice(u8 param_0, u16 param_1, Vec* param_2, s8 param_3) {
// NONMATCHING
}
/* 802CCF88-802CCFB8 2C78C8 0030+00 0/0 1/1 0/0 .text isMidnaSpeak__12Z2SpeechMgr2Fv */
bool Z2SpeechMgr2::isMidnaSpeak() {
if ((field_0x3fe == 1 || field_0x3fe == 2) && field_0x0) {
return true;
}
return false;
}
/* 802CCFB8-802CCFF8 2C78F8 0040+00 1/1 0/0 0/0 .text __ct__15Z2SpeechStarterFv */
Z2SpeechStarter::Z2SpeechStarter() : Z2SoundStarter(false) {}
/* ############################################################################################## */
/* 80455F50-80455F54 004550 0004+00 1/1 0/0 0/0 .sdata2 @4571 */
SECTION_SDATA2 static f32 lit_4571 = 7.0f / 100.0f;
/* 80455F54-80455F58 004554 0004+00 1/1 0/0 0/0 .sdata2 @4572 */
SECTION_SDATA2 static f32 lit_4572 = 0.5f;
/* 802CCFF8-802CD248 2C7938 0250+00 1/0 0/0 0/0 .text
* startSound__15Z2SpeechStarterF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3<f>UlfffffUl */
bool Z2SpeechStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1,
JGeometry::TVec3<f32> const* param_2, u32 param_3, f32 param_4,
f32 param_5, f32 param_6, f32 param_7, f32 param_8,
u32 param_9) {
// NONMATCHING
}