mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-18 12:52:51 -04:00
Actor status consolidation & process profile definition editing (#3117)
* Consolidate fopAcM_STATUS into fopAc_Status_e * Add _e suffix to fopAcStts enums * Prepare for profile enumeration * Correct typo in scene_process_profile_definition * Manually handle g_profile_Obj_DamCps (inline preprocessing) * Correct g_profile_TAG_LV5SOUP procname to enum * Create d_priority.h * Update process profile definitions * Moved inline comments to the left * Add missing fopAcStts enums * Add d_priority.h include in f_pc_leaf.h * Manually update d_a_obj_damCps profile * Replace fopAcStts enums replacing and anticipatory profile size correction * Changed profile size from literal to sizeof() in anticipation of PR #3116 * Provided putative names to staff-related status enums * Replaced appropriate literals with fopAcStts enums * Fix borked merge * Rename item number enums and move to d_item_data.h * Rename process profile name & draw priority enums * Move process profile name & draw priority enums to appropriate files * Moved fpcNm_ enums from d/d_procname.h to f_pc/f_pc_name.h * Moved fpcDwPi_ enums from d/d_priority.h to f_pc/f_pc_draw_priority.h * ACTUALLY (whoops) stage merge * Correct item mistranslation Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com> --------- Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
This commit is contained in:
@@ -113,11 +113,11 @@ void daDitem_c::actionStart() {
|
||||
OS_REPORT("ゲットアイテム:エフェクトライトセット&表示スタート!\n");
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_DUNGEON_EXIT || m_itemNo == fpcNm_ITEM_DUNGEON_EXIT_2) {
|
||||
if (m_itemNo == dItemNo_DUNGEON_EXIT_e || m_itemNo == dItemNo_DUNGEON_EXIT_2_e) {
|
||||
current.angle.y = dComIfGp_getPlayer(0)->shape_angle.y;
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_UTAWA_HEART || m_itemNo == fpcNm_ITEM_KAKERA_HEART) {
|
||||
if (m_itemNo == dItemNo_UTAWA_HEART_e || m_itemNo == dItemNo_KAKERA_HEART_e) {
|
||||
JPABaseEmitter* emitter = field_0x96c.getEmitter();
|
||||
if (emitter == NULL) {
|
||||
dComIfGp_particle_set(0x8DE, ¤t.pos, NULL, NULL, 0xFF, &field_0x96c, -1, NULL, NULL, NULL);
|
||||
@@ -131,22 +131,22 @@ void daDitem_c::actionStart() {
|
||||
mParticleAlpha = 0xFF;
|
||||
}
|
||||
|
||||
if ((m_itemNo == fpcNm_ITEM_ORANGE_RUPEE || m_itemNo == fpcNm_ITEM_SILVER_RUPEE) && field_0x96c.getEmitter() == NULL) {
|
||||
if ((m_itemNo == dItemNo_ORANGE_RUPEE_e || m_itemNo == dItemNo_SILVER_RUPEE_e) && field_0x96c.getEmitter() == NULL) {
|
||||
cXyz scale(0.55f, 0.55f, 0.55f);
|
||||
dComIfGp_particle_set(0xC14, &field_0x99c, NULL, &scale, 0xFF, &field_0x96c, -1, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_WALLET_LV3 && field_0x96c.getEmitter() == NULL) {
|
||||
if (m_itemNo == dItemNo_WALLET_LV3_e && field_0x96c.getEmitter() == NULL) {
|
||||
cXyz scale(1.2f, 1.2f, 1.2f);
|
||||
dComIfGp_particle_set(0xC14, &field_0x99c, NULL, &scale, 0xFF, &field_0x96c, -1, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_CHUCHU_RARE && field_0x96c.getEmitter() == NULL) {
|
||||
if (m_itemNo == dItemNo_CHUCHU_RARE_e && field_0x96c.getEmitter() == NULL) {
|
||||
cXyz scale(0.8f, 0.8f, 0.8f);
|
||||
dComIfGp_particle_set(0xC14, &field_0x99c, NULL, &scale, 0xFF, &field_0x96c, -1, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
if ((m_itemNo == fpcNm_ITEM_FAIRY_DROP || m_itemNo == fpcNm_ITEM_DROP_BOTTLE) && field_0x96c.getEmitter() == NULL) {
|
||||
if ((m_itemNo == dItemNo_FAIRY_DROP_e || m_itemNo == dItemNo_DROP_BOTTLE_e) && field_0x96c.getEmitter() == NULL) {
|
||||
dComIfGp_particle_set(0x8C15, &field_0x99c, NULL, NULL, 0xFF, &field_0x96c, -1, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
@@ -164,7 +164,7 @@ void daDitem_c::actionEvent() {
|
||||
cLib_addCalc2(&mLight.mPow, mLightStrength, 0.1f, 1.0f);
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_POU_SPIRIT) {
|
||||
if (m_itemNo == dItemNo_POU_SPIRIT_e) {
|
||||
mSound.startLevelSound(Z2SE_EN_PO_SOUL, 0, -1);
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ void daDitem_c::actionEvent() {
|
||||
execItemGet(m_itemNo);
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_KAKERA_HEART) {
|
||||
if (m_itemNo == dItemNo_KAKERA_HEART_e) {
|
||||
int room_no = dComIfGp_roomControl_getStayNo();
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "F_SP116") == 0 && room_no == 2) {
|
||||
@@ -266,7 +266,7 @@ void daDitem_c::actionEvent() {
|
||||
void daDitem_c::actionWaitLightEnd() {
|
||||
BOOL particle_hidden = TRUE;
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_UTAWA_HEART || m_itemNo == fpcNm_ITEM_KAKERA_HEART) {
|
||||
if (m_itemNo == dItemNo_UTAWA_HEART_e || m_itemNo == dItemNo_KAKERA_HEART_e) {
|
||||
particle_hidden = cLib_chaseUC(&mParticleAlpha, 0, 26);
|
||||
|
||||
JPABaseEmitter* emitter = field_0x96c.getEmitter();
|
||||
@@ -403,7 +403,7 @@ void daDitem_c::settingEffectLight() {
|
||||
void daDitem_c::set_mtx() {
|
||||
mpModel->setBaseScale(scale);
|
||||
|
||||
if (m_itemNo != fpcNm_ITEM_DUNGEON_EXIT && m_itemNo != fpcNm_ITEM_DUNGEON_BACK && m_itemNo != fpcNm_ITEM_LV7_DUNGEON_EXIT && m_itemNo != fpcNm_ITEM_DUNGEON_EXIT_2) {
|
||||
if (m_itemNo != dItemNo_DUNGEON_EXIT_e && m_itemNo != dItemNo_DUNGEON_BACK_e && m_itemNo != dItemNo_LV7_DUNGEON_EXIT_e && m_itemNo != dItemNo_DUNGEON_EXIT_2_e) {
|
||||
s16 var_r28 = 0xFFFF / 250;
|
||||
fopAcM_addAngleY(this, current.angle.y + var_r28, var_r28);
|
||||
}
|
||||
@@ -438,12 +438,12 @@ int daDitem_c::Delete() {
|
||||
dKy_efplight_cut(&mLight);
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_UTAWA_HEART || m_itemNo == fpcNm_ITEM_KAKERA_HEART) {
|
||||
if (m_itemNo == dItemNo_UTAWA_HEART_e || m_itemNo == dItemNo_KAKERA_HEART_e) {
|
||||
field_0x96c.remove();
|
||||
field_0x980.remove();
|
||||
}
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_ORANGE_RUPEE || m_itemNo == fpcNm_ITEM_SILVER_RUPEE || m_itemNo == fpcNm_ITEM_WALLET_LV3 || m_itemNo == fpcNm_ITEM_FAIRY_DROP || m_itemNo == fpcNm_ITEM_DROP_BOTTLE || m_itemNo == fpcNm_ITEM_CHUCHU_RARE) {
|
||||
if (m_itemNo == dItemNo_ORANGE_RUPEE_e || m_itemNo == dItemNo_SILVER_RUPEE_e || m_itemNo == dItemNo_WALLET_LV3_e || m_itemNo == dItemNo_FAIRY_DROP_e || m_itemNo == dItemNo_DROP_BOTTLE_e || m_itemNo == dItemNo_CHUCHU_RARE_e) {
|
||||
field_0x96c.remove();
|
||||
}
|
||||
|
||||
@@ -475,7 +475,7 @@ int daDitem_c::create() {
|
||||
OS_REPORT_ERROR("ゲット用モデルのアーカイブ名がありません![%d]\n", m_itemNo);
|
||||
}
|
||||
|
||||
m_itemNo = fpcNm_ITEM_GREEN_RUPEE;
|
||||
m_itemNo = dItemNo_GREEN_RUPEE_e;
|
||||
}
|
||||
|
||||
int phase_state = dComIfG_resLoad(&mPhase, dItem_data::getArcName(m_itemNo));
|
||||
@@ -519,13 +519,13 @@ int daDitem_c::execute() {
|
||||
eyePos = current.pos;
|
||||
eyePos.y += mpModel->getModelData()->getJointNodePointer(0)->getMax()->y * 0.5f;
|
||||
|
||||
if (m_itemNo == fpcNm_ITEM_ORANGE_RUPEE || m_itemNo == fpcNm_ITEM_SILVER_RUPEE) {
|
||||
if (m_itemNo == dItemNo_ORANGE_RUPEE_e || m_itemNo == dItemNo_SILVER_RUPEE_e) {
|
||||
field_0x99c = current.pos;
|
||||
field_0x99c.y += 10.0f;
|
||||
} else if (m_itemNo == fpcNm_ITEM_WALLET_LV3 || m_itemNo == fpcNm_ITEM_CHUCHU_RARE) {
|
||||
} else if (m_itemNo == dItemNo_WALLET_LV3_e || m_itemNo == dItemNo_CHUCHU_RARE_e) {
|
||||
field_0x99c = current.pos;
|
||||
field_0x99c.y += 15.0f;
|
||||
} else if (m_itemNo == fpcNm_ITEM_FAIRY_DROP || m_itemNo == fpcNm_ITEM_DROP_BOTTLE) {
|
||||
} else if (m_itemNo == dItemNo_FAIRY_DROP_e || m_itemNo == dItemNo_DROP_BOTTLE_e) {
|
||||
field_0x99c = current.pos;
|
||||
}
|
||||
|
||||
@@ -539,7 +539,7 @@ static int daDitem_Execute(daDitem_c* i_this) {
|
||||
|
||||
int daDitem_c::draw() {
|
||||
switch (m_itemNo) {
|
||||
case fpcNm_ITEM_WOOD_STICK:
|
||||
case dItemNo_WOOD_STICK_e:
|
||||
draw_WOOD_STICK();
|
||||
break;
|
||||
}
|
||||
@@ -561,20 +561,20 @@ static actor_method_class l_daDitem_Method = {
|
||||
};
|
||||
|
||||
actor_process_profile_definition g_profile_Demo_Item = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Demo_Item, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daDitem_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
241, // mPriority
|
||||
&l_daDitem_Method, // sub_method
|
||||
0x00060000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
/* Layer ID */ fpcLy_CURRENT_e,
|
||||
/* List ID */ 7,
|
||||
/* List Prio */ fpcPi_CURRENT_e,
|
||||
/* Proc Name */ fpcNm_Demo_Item_e,
|
||||
/* Proc SubMtd */ &g_fpcLf_Method.base,
|
||||
/* Size */ sizeof(daDitem_c),
|
||||
/* Size Other */ 0,
|
||||
/* Parameters */ 0,
|
||||
/* Leaf SubMtd */ &g_fopAc_Method.base,
|
||||
/* Draw Prio */ fpcDwPi_Demo_Item_e,
|
||||
/* Actor SubMtd */ &l_daDitem_Method,
|
||||
/* Status */ fopAcStts_UNK_0x40000_e | fopAcStts_NOPAUSE_e,
|
||||
/* Group */ fopAc_ACTOR_e,
|
||||
/* Cull Type */ fopAc_CULLBOX_CUSTOM_e,
|
||||
};
|
||||
|
||||
AUDIO_INSTANCES;
|
||||
|
||||
Reference in New Issue
Block a user