From 82172e2ee51ec04d168248ab9c57077190379480 Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Sat, 21 Mar 2026 19:06:51 -0700 Subject: [PATCH] fix fopAcM_createItemFromEnemyID --- src/f_op/f_op_actor_mng.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp index f16dc5f686..9a9b9c7db5 100644 --- a/src/f_op/f_op_actor_mng.cpp +++ b/src/f_op/f_op_actor_mng.cpp @@ -1471,12 +1471,21 @@ struct EnemyTable { fpc_ProcID fopAcM_createItemFromEnemyID(u8 i_enemyID, cXyz const* i_pos, int i_itemBitNo, int i_roomNo, csXyz const* i_angle, cXyz const* i_scale, f32* i_speedF, f32* i_speedY) { - int itemNo; + int itemNo; int tableNo = 0xFF; - uintptr_t* data = (uintptr_t*)dEnemyItem_c::getItemData(); + +#if TARGET_PC + u8* data = (u8*)dEnemyItem_c::getItemData(); + data += 4; + BE(int) tableNum = *(int*)data; + data += 4; +#else + u32* data = (u32*)dEnemyItem_c::getItemData(); data++; - BE(int) tableNum = (int) *data; + int tableNum = (int)*data; data++; +#endif + EnemyTable* table = (EnemyTable*)data; for (u32 i = 0; i < tableNum; i++) {