Use cut type enum in more places

This commit is contained in:
LagoLunatic
2026-05-01 01:42:53 -04:00
parent b46f2904d1
commit e9093fda7f
8 changed files with 199 additions and 135 deletions
+49 -13
View File
@@ -37,19 +37,55 @@ static daKanban_HIO_c l_HIO;
static fopAc_ac_c* target_info[10];
static s32 target_info_count;
static s16 pl_cut_real_no_dt[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31};
static s16 pl_cut_real_no_dt[] = {
daPy_py_c::CUT_TYPE_NONE,
daPy_py_c::CUT_TYPE_CUT_A,
daPy_py_c::CUT_TYPE_CUT_F,
daPy_py_c::CUT_TYPE_CUT_R,
daPy_py_c::CUT_TYPE_CUT_L,
daPy_py_c::CUT_TYPE_BT_JUMPCUT,
daPy_py_c::CUT_TYPE_CUT_EA,
daPy_py_c::CUT_TYPE_CUT_EB,
daPy_py_c::CUT_TYPE_CUT_TURN,
daPy_py_c::CUT_TYPE_CUT_ROLL,
daPy_py_c::CUT_TYPE_JUMPCUT_SWORD,
daPy_py_c::CUT_TYPE_STICK,
daPy_py_c::CUT_TYPE_JUMPCUT_STICK,
daPy_py_c::CUT_TYPE_MACHETE,
daPy_py_c::CUT_TYPE_JUMPCUT_MACHETE,
daPy_py_c::CUT_TYPE_BT_ROLLCUT,
daPy_py_c::CUT_TYPE_BT_VERTICALJUMPCUT,
daPy_py_c::CUT_TYPE_HAMMER_SIDESWING,
daPy_py_c::CUT_TYPE_HAMMER_FRONTSWING,
daPy_py_c::CUT_TYPE_JUMPCUT_HAMMER,
daPy_py_c::CUT_TYPE_CLUB,
daPy_py_c::CUT_TYPE_JUMPCUT_CLUB,
daPy_py_c::CUT_TYPE_DN_SWORD,
daPy_py_c::CUT_TYPE_JUMPCUT_DN_SWORD,
daPy_py_c::CUT_TYPE_SPEAR,
daPy_py_c::CUT_TYPE_JUMPCUT_SPEAR,
daPy_py_c::CUT_TYPE_CUT_EXA,
daPy_py_c::CUT_TYPE_CUT_EXB,
daPy_py_c::CUT_TYPE_PG_SWORD,
daPy_py_c::CUT_TYPE_JUMPCUT_PG_SWORD,
daPy_py_c::CUT_TYPE_CUT_EXMJ,
daPy_py_c::CUT_TYPE_CUT_KESA,
};
// TODO: enum for this
static s16 pl_cut_no_dt[] = {255, 0, 4, 3, 3, 1, 0, 4, 4, 4, 1, 3, 1, 3, 1, 1, 1, 3, 1, 1, 0, 1, 0, 1, 0, 1, 1, 4, 0, 1, 1, 1};
static u32 cut_parts_arg_data[] = {
0x2000000, 0x4000000, 0x800000, 0x1000000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x4000000, 0x800000, 0x1000000, 0x10000000,
0x40000000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x400000, 0x200000, 0x2000000, 0x4000000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x200000, 0x2000000, 0x4000000, 0x800000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x8000000, 0x400000, 0x200000, 0x2000000,
0x4000000, 0x800000, 0x1000000, 0x10000000,
0x02000000, 0x04000000, 0x00800000, 0x01000000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x04000000, 0x00800000, 0x01000000, 0x10000000,
0x40000000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x00400000, 0x00200000, 0x02000000, 0x04000000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x00200000, 0x02000000, 0x04000000, 0x00800000,
0x7FE00000, 0x7FE00000, 0x7FE00000, 0x7FE00000,
0x08000000, 0x00400000, 0x00200000, 0x02000000,
0x04000000, 0x00800000, 0x01000000, 0x10000000,
};
/* 000000EC-0000012C .text __ct__14daKanban_HIO_cFv */
@@ -377,13 +413,13 @@ void mother_move(kanban_class* i_this) {
case AT_TYPE_SWORD: {
s32 i = 0;
for (; i < 32; i++) {
for (; i < ARRAY_SSIZE(pl_cut_real_no_dt); i++) {
if (pl_cut_real_no_dt[i] == player->getCutType()) {
break;
}
}
if (i < 32 && pl_cut_no_dt[i] != 0xFF) {
if (i < ARRAY_SSIZE(pl_cut_real_no_dt) && pl_cut_no_dt[i] != 0xFF) {
i_this->m2C4 = pl_cut_no_dt[i];
cut_point_check(i_this);
}