mirror of
https://github.com/zeldaret/tp
synced 2026-08-04 17:10:28 -04:00
move / fix bunch of stuff (#133)
* fix some class structures / d_event wip * d_event wip * move gamepad stuff * move m_Do_main * move d_bomb / partial m_Do_reset * format * remove asm * add Z2SoundID enum * move some Z2 classes * fix * move more Z2 stuff * fix fopAc_ac_c more
This commit is contained in:
+1
-19
@@ -12,8 +12,6 @@
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct fopEn_enemy_c {
|
||||
/* 80019404 */ void initBallModel();
|
||||
/* 800194FC */ void checkBallModelDraw();
|
||||
@@ -51,20 +49,12 @@ struct dRes_control_c {
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct dPa_control_c {
|
||||
/* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
|
||||
cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
|
||||
_GXColor const*, cXyz const*, f32);
|
||||
};
|
||||
|
||||
struct dEvt_info_c {
|
||||
/* 80018C44 */ ~dEvt_info_c();
|
||||
/* 800433F0 */ dEvt_info_c();
|
||||
/* 800434CC */ void beforeProc();
|
||||
};
|
||||
|
||||
struct dEvt_control_c {
|
||||
/* 80042FA8 */ void moveApproval(void*);
|
||||
};
|
||||
@@ -96,14 +86,6 @@ struct J3DMaterialTable {
|
||||
/* 8032FE70 */ void entryTevRegAnimator(J3DAnmTevRegKey*);
|
||||
};
|
||||
|
||||
struct J3DLightObj {
|
||||
/* 80018C0C */ J3DLightObj();
|
||||
};
|
||||
|
||||
struct J3DLightInfo {
|
||||
/* 803256C4 */ void operator=(J3DLightInfo const&);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -277,7 +259,7 @@ asm void fopAc_IsActor(void* param_0) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450CBC-80450CC0 0001BC 0004+00 2/2 1/1 0/0 .sbss stopStatus__10fopAc_ac_c */
|
||||
u8 fopAc_ac_c::stopStatus[4];
|
||||
u32 fopAc_ac_c::stopStatus;
|
||||
|
||||
/* 80018D0C-80018DD8 01364C 00CC+00 1/0 0/0 0/0 .text fopAc_Draw__FPv */
|
||||
#pragma push
|
||||
|
||||
+19
-15
@@ -51,12 +51,8 @@ struct daPy_py_c {
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct dPa_control_c {
|
||||
struct level_c {
|
||||
/* 8004B918 */ void getEmitter(u32);
|
||||
@@ -526,6 +522,7 @@ void fopAcM_Log(fopAc_ac_c const* param_0, char const* param_1) {
|
||||
/* 80019C7C-80019CB8 0145BC 003C+00 0/0 10/10 483/483 .text fopAcM_delete__FP10fopAc_ac_c
|
||||
*/
|
||||
void fopAcM_delete(fopAc_ac_c* pActor) {
|
||||
// "Deleting Actor"
|
||||
fopAcM_Log(pActor, "アクターの削除");
|
||||
fpcM_Delete(pActor);
|
||||
}
|
||||
@@ -538,6 +535,7 @@ s32 fopAcM_delete(unsigned int pID) {
|
||||
// original moves r3 -> r0, then r0 -> r31 for 0 check
|
||||
// this generates r3 -> r31 with 0 check directly
|
||||
if (searchResult != NULL) {
|
||||
// "Deleting Actor"
|
||||
fopAcM_Log(actor, "アクターの削除");
|
||||
return fpcM_Delete(searchResult);
|
||||
} else {
|
||||
@@ -673,10 +671,11 @@ SECTION_DEAD static char const* const stringBase_8037890A = "アクターのヒ
|
||||
/* 8001A138-8001A188 014A78 0050+00 0/0 1/1 1/1 .text fopAcM_DeleteHeap__FP10fopAc_ac_c
|
||||
*/
|
||||
void fopAcM_DeleteHeap(fopAc_ac_c* pActor) {
|
||||
// "Destroying actor's heap"
|
||||
fopAcM_Log(pActor, "アクターのヒープの破壊");
|
||||
if (pActor->unk_0x0F0 != NULL) {
|
||||
mDoExt_destroySolidHeap(pActor->unk_0x0F0);
|
||||
pActor->unk_0x0F0 = NULL;
|
||||
if (pActor->mHeap != NULL) {
|
||||
mDoExt_destroySolidHeap(pActor->mHeap);
|
||||
pActor->mHeap = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -709,12 +708,14 @@ bool fopAcM_entrySolidHeap_(fopAc_ac_c* pActor, heapCallbackFunc pHeapCallback,
|
||||
if (heap00 != NULL) {
|
||||
bool status = fopAcM_callCallback(pActor, pHeapCallback, heap00) != 0;
|
||||
if (!status) {
|
||||
// "Entry for estimated heap size(%08x) failed. %08x[%s]\n"
|
||||
OSReport_Error("見積もりヒープサイズ(%08x)で登録失敗しました。%08x[%s]\n",
|
||||
pSize, heap00->getFreeSize(), procNameString);
|
||||
mDoExt_destroySolidHeap(heap00);
|
||||
heap00 = NULL;
|
||||
}
|
||||
} else {
|
||||
// "Could not allocate estimated heap. %08x [%s]\n"
|
||||
OSReport_Error("見積もりヒープが確保できませんでした。 %08x [%s]\n", pSize,
|
||||
procNameString);
|
||||
}
|
||||
@@ -722,11 +723,13 @@ bool fopAcM_entrySolidHeap_(fopAc_ac_c* pActor, heapCallbackFunc pHeapCallback,
|
||||
if (heap00 == NULL) {
|
||||
heap00 = mDoExt_createSolidHeapFromGame(0xFFFFFFFF, 0x20);
|
||||
if (heap00 == NULL) {
|
||||
// "Failed to allocate maximum heap size. [%s]\n"
|
||||
OSReport_Error("最大空きヒープサイズで確保失敗。[%s]\n", procNameString);
|
||||
return false;
|
||||
}
|
||||
bool status = fopAcM_callCallback(pActor, pHeapCallback, heap00) != 0;
|
||||
if (!status) {
|
||||
// "Entry failed for maximum heap size. %08x[%s]\n"
|
||||
OSReport_Error("最大空きヒープサイズで登録失敗。%08x[%s]\n", heap00->getFreeSize(),
|
||||
procNameString);
|
||||
mDoExt_destroySolidHeap(heap00);
|
||||
@@ -738,7 +741,7 @@ bool fopAcM_entrySolidHeap_(fopAc_ac_c* pActor, heapCallbackFunc pHeapCallback,
|
||||
}
|
||||
if (lbl_80450CC8 == 0) {
|
||||
mDoExt_adjustSolidHeap(heap00);
|
||||
pActor->unk_0x0F0 = heap00;
|
||||
pActor->mHeap = heap00;
|
||||
return true;
|
||||
} else {
|
||||
JKRSolidHeap* heap = NULL;
|
||||
@@ -753,6 +756,7 @@ bool fopAcM_entrySolidHeap_(fopAc_ac_c* pActor, heapCallbackFunc pHeapCallback,
|
||||
heap00 = NULL;
|
||||
bool status = fopAcM_callCallback(pActor, pHeapCallback, heap) != 0;
|
||||
if (!status) {
|
||||
// "Entry fails at exact size? (Bug)\n"
|
||||
OSReport_Error("ぴったりサイズで、登録失敗?(バグ)\n");
|
||||
mDoExt_destroySolidHeap(heap);
|
||||
heap = NULL;
|
||||
@@ -764,19 +768,20 @@ bool fopAcM_entrySolidHeap_(fopAc_ac_c* pActor, heapCallbackFunc pHeapCallback,
|
||||
}
|
||||
if (heap != NULL) {
|
||||
mDoExt_adjustSolidHeap(heap);
|
||||
pActor->unk_0x0F0 = heap;
|
||||
pActor->mHeap = heap;
|
||||
return true;
|
||||
}
|
||||
if (heap00 != NULL) {
|
||||
mDoExt_adjustSolidHeap(heap00);
|
||||
pActor->unk_0x0F0 = heap00;
|
||||
pActor->mHeap = heap00;
|
||||
return true;
|
||||
}
|
||||
OSReport_Error("ばぐばぐです\n");
|
||||
OSReport_Error("緊急回避措置\n");
|
||||
OSReport_Error("ばぐばぐです\n"); // "There's a big bug\n"
|
||||
OSReport_Error("緊急回避措置\n"); // "Emergency action\n"
|
||||
lbl_80450CC8 = 0;
|
||||
}
|
||||
}
|
||||
// "fopAcM_entrySolidHeap didn't work [%s]\n"
|
||||
OSReport_Error("fopAcM_entrySolidHeap だめでした [%s]\n", procNameString);
|
||||
return false;
|
||||
}
|
||||
@@ -1664,8 +1669,7 @@ s32 fopAc_IsActor(void*);
|
||||
|
||||
/* 8001C9CC-8001CA1C 01730C 0050+00 1/1 0/0 0/0 .text enemySearchJugge__FPvPv */
|
||||
void* enemySearchJugge(void* pActor, void* pData) {
|
||||
if (pActor != NULL && fopAc_IsActor(pActor) &&
|
||||
static_cast<fopAc_ac_c*>(pActor)->unk_0x496 == 2) {
|
||||
if (pActor != NULL && fopAc_IsActor(pActor) && static_cast<fopAc_ac_c*>(pActor)->mGroup == 2) {
|
||||
return pActor;
|
||||
} else {
|
||||
return NULL;
|
||||
@@ -1913,7 +1917,7 @@ asm void fopAcM_setEffectMtx(fopAc_ac_c const* param_0, J3DModelData const* para
|
||||
|
||||
/* 8001D5A4-8001D5EC 017EE4 0048+00 1/1 0/0 0/0 .text fopAcM_getProcNameString__FPC10fopAc_ac_c */
|
||||
static const char* fopAcM_getProcNameString(const fopAc_ac_c* pActor) {
|
||||
const char* name = dStage_getName2(pActor->mBase.mBsTypeId, pActor->unk_0x499);
|
||||
const char* name = dStage_getName2(pActor->mBase.mBsTypeId, pActor->mSubtype);
|
||||
return name != NULL ? name : "UNKOWN";
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user