From b28359d072f4192be79832edc1e10b2f85c98580 Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Thu, 4 Dec 2025 22:59:25 -0500 Subject: [PATCH] Moved IQ_SKILLS to C --- asm/main_rodata_020A1BB0.s | 20 ----------- src/iq_skills.c | 73 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 20 deletions(-) diff --git a/asm/main_rodata_020A1BB0.s b/asm/main_rodata_020A1BB0.s index 8f61c4c3..8323c0da 100644 --- a/asm/main_rodata_020A1BB0.s +++ b/asm/main_rodata_020A1BB0.s @@ -18,23 +18,3 @@ SENTRY_DUTY_MONSTER_IDS: .byte 0x6F, 0x00, 0x65, 0x01, 0x64, 0x01, 0x51, 0x01, 0x3F, 0x01, 0x03, 0x01, 0x63, 0x01, 0x3A, 0x01 .byte 0x24, 0x01, 0x08, 0x01, 0x38, 0x00, 0xE9, 0x01, 0xEA, 0x01, 0xB7, 0x01, 0xB8, 0x01, 0x25, 0x00 .byte 0x05, 0x02, 0x88, 0x01, 0x22, 0x00, 0x00, 0x00 - .global IQ_SKILLS -IQ_SKILLS: - .byte 0x0F, 0x27, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00 - .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF4, 0x01, 0x00, 0x00, 0x1C, 0x02, 0x00, 0x00 - .byte 0x0F, 0x27, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0xC8, 0x00, 0x00, 0x00 - .byte 0x0A, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x00, 0x00, 0x90, 0x01, 0x00, 0x00, 0xDE, 0x03, 0x00, 0x00 - .byte 0xF0, 0x00, 0x00, 0x00, 0x20, 0x03, 0x00, 0x00, 0xFA, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00 - .byte 0x46, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00, 0x2C, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 - .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x0F, 0x27, 0x00, 0x00 - .byte 0xE0, 0x01, 0x00, 0x00, 0x96, 0x00, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00 - .byte 0x26, 0x02, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x0F, 0x27, 0x00, 0x00 - .byte 0xDC, 0x00, 0x00, 0x00, 0xE6, 0x00, 0x00, 0x00, 0x30, 0x02, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00 - .byte 0xA4, 0x01, 0x00, 0x00, 0x4A, 0x01, 0x00, 0x00, 0x08, 0x02, 0x00, 0x00, 0x0E, 0x01, 0x00, 0x00 - .byte 0x0F, 0x27, 0x00, 0x00, 0xEE, 0x02, 0x00, 0x00, 0x3A, 0x02, 0x00, 0x00, 0xB4, 0x00, 0x00, 0x00 - .byte 0xAA, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x00, 0x00, 0x18, 0x01, 0x00, 0x00 - .byte 0x1E, 0x00, 0x00, 0x00, 0x84, 0x03, 0x00, 0x00, 0xAF, 0x00, 0x00, 0x00, 0x22, 0x01, 0x00, 0x00 - .byte 0x32, 0x00, 0x00, 0x00, 0xBE, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x36, 0x01, 0x00, 0x00 - .byte 0xB6, 0x03, 0x00, 0x00, 0x54, 0x01, 0x00, 0x00, 0xC3, 0x00, 0x00, 0x00, 0x0F, 0x27, 0x00, 0x00 - .byte 0x5E, 0x01, 0x00, 0x00, 0x68, 0x01, 0x00, 0x00, 0xB8, 0x01, 0x00, 0x00, 0x44, 0x02, 0x00, 0x00 - .byte 0x52, 0x03, 0x00, 0x00, 0x72, 0x01, 0x00, 0x00, 0x0F, 0x27, 0x00, 0x00 diff --git a/src/iq_skills.c b/src/iq_skills.c index 34976147..4d1ba298 100644 --- a/src/iq_skills.c +++ b/src/iq_skills.c @@ -1,5 +1,78 @@ #include "iq_skills.h" +const s32 IQ_SKILLS[69] = +{ + 9999, // IQ_NONE + 105, // IQ_TYPE_ADVANTAGE_MASTER + -1, // IQ_ITEM_CATCHER + -1, // IQ_COURSE_CHECKER + 500, // IQ_SURE_HIT_ATTACKER + 540, // IQ_QUICK_DODGER + 9999, // IQ_PP_CHECKER + 40, // IQ_NONTRAITOR + 25, // IQ_STATUS_CHECKER + 200, // IQ_EXP_GO_GETTER + 10, // IQ_EFFICIENCY_EXPERT + 125, // IQ_WEAK_TYPE_PICKER + 400, // IQ_ALL_TERRAIN_HIKER + 990, // IQ_ABSOLUTE_MOVER + 240, // IQ_TRAP_AVOIDER + 800, // IQ_HOUSE_AVOIDER + 250, // IQ_ENERGY_SAVER + 160, // IQ_NONSLEEPER + 70, // IQ_SELF_CURER + 600, // IQ_TRAP_SEER + 300, // IQ_LAVA_EVADER + 1, // IQ_DEDICATED_TRAVELER + -1, // IQ_ITEM_MASTER + -1, // IQ_EXCLUSIVE_MOVE_USER + 1, // IQ_ESCAPIST + 9999, // IQ_LOCK_PICKER + 480, // IQ_STAIR_SENSOR + 150, // IQ_COIN_WATCHER + 320, // IQ_EXP_ELITE + 260, // IQ_SHARPSHOOTER + 550, // IQ_FAST_FRIEND + 55, // IQ_PP_SAVER + 65, // IQ_BODYGUARD + 9999, // IQ_CAUTIOUS_CREEPER + 220, // IQ_AGGRESSOR + 230, // IQ_DEFENDER + 560, // IQ_INTIMIDATOR + 140, // IQ_SURVIVALIST + 420, // IQ_TRAP_BUSTER + 330, // IQ_COUNTER_HITTER + 520, // IQ_EXTRA_STRIKER + 270, // IQ_HIT_AND_RUNNER + 9999, // IQ_PARRY_EXPERT + 750, // IQ_QUICK_STRIKER + 570, // IQ_NO_CHARGER + 180, // IQ_WARY_FIGHTER + 170, // IQ_GAP_PROBER + 130, // IQ_POWER_PITCHER + 185, // IQ_CONCENTRATOR + 280, // IQ_COUNTER_BASHER + 30, // IQ_CHEERLEADER + 900, // IQ_NATURE_GIFTER + 175, // IQ_WISE_HEALER + 290, // IQ_QUICK_HEALER + 50, // IQ_ACUTE_SNIFFER + 190, // IQ_DEEP_BREATHER + 100, // IQ_BRICK_TOUGH + 310, // IQ_MULTITALENT + 950, // IQ_TIME_TRIPPER + 340, // IQ_ERRATIC_PLAYER + 195, // IQ_PRACTICE_SWINGER + 9999, // IQ_NO_DEFEATIST + 350, // IQ_HAGGLER + 360, // IQ_CLUTCH_PERFORMER + 440, // IQ_CRITICAL_DODGER + 580, // IQ_MAP_SURVEYOR + 850, // IQ_PIERCE_HURLER + 370, // IQ_COLLECTOR + 9999, // IQ_TRUE_POWERIST +}; + const enum iq_skill_id IQ_GROUP_SKILLS[16][25] = { // Group A