summaryrefslogtreecommitdiff
path: root/src/contest_ai.c
diff options
context:
space:
mode:
authorPhlosioneer <mattmdrr2@gmail.com>2019-04-01 22:09:14 -0400
committerPhlosioneer <mattmdrr2@gmail.com>2019-04-01 22:16:07 -0400
commit845307b3a6f5d1cb65669e8a971bee22ae6419d0 (patch)
treeefc58834819ad6913fee773d17c79b80005a9942 /src/contest_ai.c
parent4d938cb622a50a5f6659fccc69fca6da78e83ed4 (diff)
Rename contest AI stuff
Diffstat (limited to 'src/contest_ai.c')
-rw-r--r--src/contest_ai.c583
1 files changed, 293 insertions, 290 deletions
diff --git a/src/contest_ai.c b/src/contest_ai.c
index 97e8c8f29..8c0106280 100644
--- a/src/contest_ai.c
+++ b/src/contest_ai.c
@@ -6,29 +6,29 @@
#include "contest_effect.h"
extern const u8 *gAIScriptPtr;
-extern const u8 *gContestAIs[];
+extern const u8 *gContestAIChecks[];
-static void ContestAICmd_unk_00(void);
+static void ContestAICmd_score(void);
static void ContestAICmd_get_turn(void);
-static void ContestAICmd_unk_02(void);
-static void ContestAICmd_unk_03(void);
-static void ContestAICmd_unk_04(void);
-static void ContestAICmd_unk_05(void);
+static void ContestAICmd_if_turn_less_than(void);
+static void ContestAICmd_if_turn_more_than(void);
+static void ContestAICmd_if_turn_eq(void);
+static void ContestAICmd_if_turn_not_eq(void);
static void ContestAICmd_get_excitement(void);
-static void ContestAICmd_unk_07(void);
-static void ContestAICmd_unk_08(void);
-static void ContestAICmd_unk_09(void);
-static void ContestAICmd_unk_0A(void);
+static void ContestAICmd_if_excitement_less_than(void);
+static void ContestAICmd_if_excitement_more_than(void);
+static void ContestAICmd_if_excitement_eq(void);
+static void ContestAICmd_if_excitement_not_eq(void);
static void ContestAICmd_get_user_order(void);
-static void ContestAICmd_unk_0C(void);
-static void ContestAICmd_unk_0D(void);
-static void ContestAICmd_unk_0E(void);
-static void ContestAICmd_unk_0F(void);
-static void ContestAICmd_get_user_condition_maybe(void);
-static void ContestAICmd_unk_11(void);
-static void ContestAICmd_unk_12(void);
-static void ContestAICmd_unk_13(void);
-static void ContestAICmd_unk_14(void);
+static void ContestAICmd_if_user_order_less_than(void);
+static void ContestAICmd_if_user_order_more_than(void);
+static void ContestAICmd_if_user_order_eq(void);
+static void ContestAICmd_if_user_order_not_eq(void);
+static void ContestAICmd_get_user_condition(void);
+static void ContestAICmd_if_user_condition_less_than(void);
+static void ContestAICmd_if_user_condition_more_than(void);
+static void ContestAICmd_if_user_condition_eq(void);
+static void ContestAICmd_if_user_condition_not_eq(void);
static void ContestAICmd_unk_15(void);
static void ContestAICmd_unk_16(void);
static void ContestAICmd_unk_17(void);
@@ -40,21 +40,21 @@ static void ContestAICmd_unk_1C(void);
static void ContestAICmd_unk_1D(void);
static void ContestAICmd_unk_1E(void);
static void ContestAICmd_get_contest_type(void);
-static void ContestAICmd_unk_20(void);
-static void ContestAICmd_unk_21(void);
+static void ContestAICmd_if_contest_type_eq(void);
+static void ContestAICmd_if_contest_type_not_eq(void);
static void ContestAICmd_get_move_excitement(void);
-static void ContestAICmd_unk_23(void);
-static void ContestAICmd_unk_24(void);
-static void ContestAICmd_unk_25(void);
-static void ContestAICmd_unk_26(void);
+static void ContestAICmd_if_move_excitement_less_than(void);
+static void ContestAICmd_if_move_excitement_greater_than(void);
+static void ContestAICmd_if_move_excitement_eq(void);
+static void ContestAICmd_if_move_excitement_not_eq(void);
static void ContestAICmd_get_move_effect(void);
-static void ContestAICmd_unk_28(void);
-static void ContestAICmd_unk_29(void);
+static void ContestAICmd_if_move_effect_eq(void);
+static void ContestAICmd_if_move_effect_not_eq(void);
static void ContestAICmd_get_move_effect_type(void);
-static void ContestAICmd_unk_2B(void);
-static void ContestAICmd_unk_2C(void);
-static void ContestAICmd_check_move_has_highest_appeal(void);
-static void ContestAICmd_unk_2E(void);
+static void ContestAICmd_if_move_effect_type_eq(void);
+static void ContestAICmd_if_move_effect_type_not_eq(void);
+static void ContestAICmd_check_most_appealing_move(void);
+static void ContestAICmd_if_most_appealing_move(void);
static void ContestAICmd_unk_2F(void);
static void ContestAICmd_unk_30(void);
static void ContestAICmd_unk_31(void);
@@ -68,35 +68,35 @@ static void ContestAICmd_unk_38(void);
static void ContestAICmd_unk_39(void);
static void ContestAICmd_unk_3A(void);
static void ContestAICmd_get_move_used_count(void);
-static void ContestAICmd_unk_3C(void);
-static void ContestAICmd_unk_3D(void);
-static void ContestAICmd_unk_3E(void);
-static void ContestAICmd_unk_3F(void);
+static void ContestAICmd_if_most_used_count_less_than(void);
+static void ContestAICmd_if_most_used_count_more_than(void);
+static void ContestAICmd_if_most_used_count_eq(void);
+static void ContestAICmd_if_most_used_count_not_eq(void);
static void ContestAICmd_check_combo_starter(void);
-static void ContestAICmd_unk_41(void);
-static void ContestAICmd_unk_42(void);
+static void ContestAICmd_if_combo_starter(void);
+static void ContestAICmd_if_not_combo_starter(void);
static void ContestAICmd_check_combo_finisher(void);
-static void ContestAICmd_unk_44(void);
-static void ContestAICmd_unk_45(void);
+static void ContestAICmd_if_combo_finisher(void);
+static void ContestAICmd_if_not_combo_finisher(void);
static void ContestAICmd_check_would_finish_combo(void);
-static void ContestAICmd_unk_47(void);
-static void ContestAICmd_unk_48(void);
+static void ContestAICmd_if_would_finish_combo(void);
+static void ContestAICmd_if_would_not_finish_combo(void);
static void ContestAICmd_get_condition(void);
-static void ContestAICmd_unk_4A(void);
-static void ContestAICmd_unk_4B(void);
-static void ContestAICmd_unk_4C(void);
-static void ContestAICmd_unk_4D(void);
+static void ContestAICmd_if_condition_less_than(void);
+static void ContestAICmd_if_condition_more_than(void);
+static void ContestAICmd_if_condition_eq(void);
+static void ContestAICmd_if_condition_not_eq(void);
static void ContestAICmd_get_used_combo_starter(void);
-static void ContestAICmd_unk_4F(void);
-static void ContestAICmd_unk_50(void);
-static void ContestAICmd_unk_51(void);
-static void ContestAICmd_unk_52(void);
+static void ContestAICmd_if_used_combo_starter_less_than(void);
+static void ContestAICmd_if_used_combo_starter_more_than(void);
+static void ContestAICmd_if_used_combo_starter_eq(void);
+static void ContestAICmd_if_used_combo_starter_not_eq(void);
static void ContestAICmd_check_can_participate(void);
-static void ContestAICmd_unk_54(void);
-static void ContestAICmd_unk_55(void);
+static void ContestAICmd_if_can_participate(void);
+static void ContestAICmd_if_cannot_participate(void);
static void ContestAICmd_get_val_812A188(void);
static void ContestAICmd_unk_57(void);
-static void ContestAICmd_unk_58(void);
+static void ContestAICmd_contest_58(void);
static void ContestAICmd_unk_59(void);
static void ContestAICmd_unk_5A(void);
static void ContestAICmd_unk_5B(void);
@@ -133,158 +133,158 @@ static void ContestAICmd_unk_79(void);
static void ContestAICmd_unk_7A(void);
static void ContestAICmd_unk_7B(void);
static void ContestAICmd_unk_7C(void);
-static void ContestAICmd_unk_7D(void);
+static void ContestAICmd_if_random(void);
static void ContestAICmd_unk_7E(void);
-static void ContestAICmd_unk_7F(void);
-static void ContestAICmd_unk_80(void);
-static void ContestAICmd_unk_81(void);
-static void ContestAICmd_check_for_exciting_move(void);
-static void ContestAICmd_unk_83(void);
-static void ContestAICmd_unk_84(void);
+static void ContestAICmd_jump(void);
+static void ContestAICmd_call(void);
+static void ContestAICmd_end(void);
+static void ContestAICmd_check_user_has_exciting_move(void);
+static void ContestAICmd_if_user_has_exciting_move(void);
+static void ContestAICmd_if_user_doesnt_have_exciting_move(void);
static void ContestAICmd_unk_85(void);
static void ContestAICmd_unk_86(void);
-static void ContestAICmd_unk_87(void);
+static void ContestAICmd_if_effect_in_user_moveset(void);
typedef void (* ContestAICmdFunc)(void);
static const ContestAICmdFunc sContestAICmdTable[] =
{
- ContestAICmd_unk_00, // 0x00
- ContestAICmd_get_turn, // 0x01
- ContestAICmd_unk_02, // 0x02
- ContestAICmd_unk_03, // 0x03
- ContestAICmd_unk_04, // 0x04
- ContestAICmd_unk_05, // 0x05
- ContestAICmd_get_excitement, // 0x06
- ContestAICmd_unk_07, // 0x07
- ContestAICmd_unk_08, // 0x08
- ContestAICmd_unk_09, // 0x09
- ContestAICmd_unk_0A, // 0x0A
- ContestAICmd_get_user_order, // 0x0B
- ContestAICmd_unk_0C, // 0x0C
- ContestAICmd_unk_0D, // 0x0D
- ContestAICmd_unk_0E, // 0x0E
- ContestAICmd_unk_0F, // 0x0F
- ContestAICmd_get_user_condition_maybe, // 0x10
- ContestAICmd_unk_11, // 0x11
- ContestAICmd_unk_12, // 0x12
- ContestAICmd_unk_13, // 0x13
- ContestAICmd_unk_14, // 0x14
- ContestAICmd_unk_15, // 0x15
- ContestAICmd_unk_16, // 0x16
- ContestAICmd_unk_17, // 0x17
- ContestAICmd_unk_18, // 0x18
- ContestAICmd_unk_19, // 0x19
- ContestAICmd_unk_1A, // 0x1A
- ContestAICmd_unk_1B, // 0x1B
- ContestAICmd_unk_1C, // 0x1C
- ContestAICmd_unk_1D, // 0x1D
- ContestAICmd_unk_1E, // 0x1E
- ContestAICmd_get_contest_type, // 0x1F
- ContestAICmd_unk_20, // 0x20
- ContestAICmd_unk_21, // 0x21
- ContestAICmd_get_move_excitement, // 0x22
- ContestAICmd_unk_23, // 0x23
- ContestAICmd_unk_24, // 0x24
- ContestAICmd_unk_25, // 0x25
- ContestAICmd_unk_26, // 0x26
- ContestAICmd_get_move_effect, // 0x27
- ContestAICmd_unk_28, // 0x28
- ContestAICmd_unk_29, // 0x29
- ContestAICmd_get_move_effect_type, // 0x2A
- ContestAICmd_unk_2B, // 0x2B
- ContestAICmd_unk_2C, // 0x2C
- ContestAICmd_check_move_has_highest_appeal, // 0x2D
- ContestAICmd_unk_2E, // 0x2E
- ContestAICmd_unk_2F, // 0x2F
- ContestAICmd_unk_30, // 0x30
- ContestAICmd_unk_31, // 0x31
- ContestAICmd_unk_32, // 0x32
- ContestAICmd_unk_33, // 0x33
- ContestAICmd_unk_34, // 0x34
- ContestAICmd_unk_35, // 0x35
- ContestAICmd_unk_36, // 0x36
- ContestAICmd_unk_37, // 0x37
- ContestAICmd_unk_38, // 0x38
- ContestAICmd_unk_39, // 0x39
- ContestAICmd_unk_3A, // 0x3A
- ContestAICmd_get_move_used_count, // 0x3B
- ContestAICmd_unk_3C, // 0x3C
- ContestAICmd_unk_3D, // 0x3D
- ContestAICmd_unk_3E, // 0x3E
- ContestAICmd_unk_3F, // 0x3F
- ContestAICmd_check_combo_starter, // 0x40
- ContestAICmd_unk_41, // 0x41
- ContestAICmd_unk_42, // 0x42
- ContestAICmd_check_combo_finisher, // 0x43
- ContestAICmd_unk_44, // 0x44
- ContestAICmd_unk_45, // 0x45
- ContestAICmd_check_would_finish_combo, // 0x46
- ContestAICmd_unk_47, // 0x47
- ContestAICmd_unk_48, // 0x48
- ContestAICmd_get_condition, // 0x49
- ContestAICmd_unk_4A, // 0x4A
- ContestAICmd_unk_4B, // 0x4B
- ContestAICmd_unk_4C, // 0x4C
- ContestAICmd_unk_4D, // 0x4D
- ContestAICmd_get_used_combo_starter, // 0x4E
- ContestAICmd_unk_4F, // 0x4F
- ContestAICmd_unk_50, // 0x50
- ContestAICmd_unk_51, // 0x51
- ContestAICmd_unk_52, // 0x52
- ContestAICmd_check_can_participate, // 0x53
- ContestAICmd_unk_54, // 0x54
- ContestAICmd_unk_55, // 0x55
- ContestAICmd_get_val_812A188, // 0x56
- ContestAICmd_unk_57, // 0x57
- ContestAICmd_unk_58, // 0x58
- ContestAICmd_unk_59, // 0x59
- ContestAICmd_unk_5A, // 0x5A
- ContestAICmd_unk_5B, // 0x5B
- ContestAICmd_unk_5C, // 0x5C
- ContestAICmd_unk_5D, // 0x5D
- ContestAICmd_unk_5E, // 0x5E
- ContestAICmd_unk_5F, // 0x5F
- ContestAICmd_unk_60, // 0x60
- ContestAICmd_unk_61, // 0x61
- ContestAICmd_unk_62, // 0x62
- ContestAICmd_unk_63, // 0x63
- ContestAICmd_unk_64, // 0x64
- ContestAICmd_unk_65, // 0x65
- ContestAICmd_unk_66, // 0x66
- ContestAICmd_unk_67, // 0x67
- ContestAICmd_unk_68, // 0x68
- ContestAICmd_unk_69, // 0x69
- ContestAICmd_unk_6A, // 0x6A
- ContestAICmd_unk_6B, // 0x6B
- ContestAICmd_unk_6C, // 0x6C
- ContestAICmd_unk_6D, // 0x6D
- ContestAICmd_unk_6E, // 0x6E
- ContestAICmd_unk_6F, // 0x6F
- ContestAICmd_unk_70, // 0x70
- ContestAICmd_unk_71, // 0x71
- ContestAICmd_unk_72, // 0x72
- ContestAICmd_unk_73, // 0x73
- ContestAICmd_unk_74, // 0x74
- ContestAICmd_unk_75, // 0x75
- ContestAICmd_unk_76, // 0x76
- ContestAICmd_unk_77, // 0x77
- ContestAICmd_unk_78, // 0x78
- ContestAICmd_unk_79, // 0x79
- ContestAICmd_unk_7A, // 0x7A
- ContestAICmd_unk_7B, // 0x7B
- ContestAICmd_unk_7C, // 0x7C
- ContestAICmd_unk_7D, // 0x7D
- ContestAICmd_unk_7E, // 0x7E
- ContestAICmd_unk_7F, // 0x7F
- ContestAICmd_unk_80, // 0x80
- ContestAICmd_unk_81, // 0x81
- ContestAICmd_check_for_exciting_move, // 0x82
- ContestAICmd_unk_83, // 0x83
- ContestAICmd_unk_84, // 0x84
- ContestAICmd_unk_85, // 0x85
- ContestAICmd_unk_86, // 0x86
- ContestAICmd_unk_87, // 0x87
+ ContestAICmd_score, // 0x00
+ ContestAICmd_get_turn, // 0x01
+ ContestAICmd_if_turn_less_than, // 0x02
+ ContestAICmd_if_turn_more_than, // 0x03
+ ContestAICmd_if_turn_eq, // 0x04
+ ContestAICmd_if_turn_not_eq, // 0x05
+ ContestAICmd_get_excitement, // 0x06
+ ContestAICmd_if_excitement_less_than, // 0x07
+ ContestAICmd_if_excitement_more_than, // 0x08
+ ContestAICmd_if_excitement_eq, // 0x09
+ ContestAICmd_if_excitement_not_eq, // 0x0A
+ ContestAICmd_get_user_order, // 0x0B
+ ContestAICmd_if_user_order_less_than, // 0x0C
+ ContestAICmd_if_user_order_more_than, // 0x0D
+ ContestAICmd_if_user_order_eq, // 0x0E
+ ContestAICmd_if_user_order_not_eq, // 0x0F
+ ContestAICmd_get_user_condition, // 0x10
+ ContestAICmd_if_user_condition_less_than, // 0x11
+ ContestAICmd_if_user_condition_more_than, // 0x12
+ ContestAICmd_if_user_condition_eq, // 0x13
+ ContestAICmd_if_user_condition_not_eq, // 0x14
+ ContestAICmd_unk_15, // 0x15
+ ContestAICmd_unk_16, // 0x16
+ ContestAICmd_unk_17, // 0x17
+ ContestAICmd_unk_18, // 0x18
+ ContestAICmd_unk_19, // 0x19
+ ContestAICmd_unk_1A, // 0x1A
+ ContestAICmd_unk_1B, // 0x1B
+ ContestAICmd_unk_1C, // 0x1C
+ ContestAICmd_unk_1D, // 0x1D
+ ContestAICmd_unk_1E, // 0x1E
+ ContestAICmd_get_contest_type, // 0x1F
+ ContestAICmd_if_contest_type_eq, // 0x20
+ ContestAICmd_if_contest_type_not_eq, // 0x21
+ ContestAICmd_get_move_excitement, // 0x22
+ ContestAICmd_if_move_excitement_less_than, // 0x23
+ ContestAICmd_if_move_excitement_greater_than, // 0x24
+ ContestAICmd_if_move_excitement_eq, // 0x25
+ ContestAICmd_if_move_excitement_not_eq, // 0x26
+ ContestAICmd_get_move_effect, // 0x27
+ ContestAICmd_if_move_effect_eq, // 0x28
+ ContestAICmd_if_move_effect_not_eq, // 0x29
+ ContestAICmd_get_move_effect_type, // 0x2A
+ ContestAICmd_if_move_effect_type_eq, // 0x2B
+ ContestAICmd_if_move_effect_type_not_eq, // 0x2C
+ ContestAICmd_check_most_appealing_move, // 0x2D
+ ContestAICmd_if_most_appealing_move, // 0x2E
+ ContestAICmd_unk_2F, // 0x2F
+ ContestAICmd_unk_30, // 0x30
+ ContestAICmd_unk_31, // 0x31
+ ContestAICmd_unk_32, // 0x32
+ ContestAICmd_unk_33, // 0x33
+ ContestAICmd_unk_34, // 0x34
+ ContestAICmd_unk_35, // 0x35
+ ContestAICmd_unk_36, // 0x36
+ ContestAICmd_unk_37, // 0x37
+ ContestAICmd_unk_38, // 0x38
+ ContestAICmd_unk_39, // 0x39
+ ContestAICmd_unk_3A, // 0x3A
+ ContestAICmd_get_move_used_count, // 0x3B
+ ContestAICmd_if_most_used_count_less_than, // 0x3C
+ ContestAICmd_if_most_used_count_more_than, // 0x3D
+ ContestAICmd_if_most_used_count_eq, // 0x3E
+ ContestAICmd_if_most_used_count_not_eq, // 0x3F
+ ContestAICmd_check_combo_starter, // 0x40
+ ContestAICmd_if_combo_starter, // 0x41
+ ContestAICmd_if_not_combo_starter, // 0x42
+ ContestAICmd_check_combo_finisher, // 0x43
+ ContestAICmd_if_combo_finisher, // 0x44
+ ContestAICmd_if_not_combo_finisher, // 0x45
+ ContestAICmd_check_would_finish_combo, // 0x46
+ ContestAICmd_if_would_finish_combo, // 0x47
+ ContestAICmd_if_would_not_finish_combo, // 0x48
+ ContestAICmd_get_condition, // 0x49
+ ContestAICmd_if_condition_less_than, // 0x4A
+ ContestAICmd_if_condition_more_than, // 0x4B
+ ContestAICmd_if_condition_eq, // 0x4C
+ ContestAICmd_if_condition_not_eq, // 0x4D
+ ContestAICmd_get_used_combo_starter, // 0x4E
+ ContestAICmd_if_used_combo_starter_less_than, // 0x4F
+ ContestAICmd_if_used_combo_starter_more_than, // 0x50
+ ContestAICmd_if_used_combo_starter_eq, // 0x51
+ ContestAICmd_if_used_combo_starter_not_eq, // 0x52
+ ContestAICmd_check_can_participate, // 0x53
+ ContestAICmd_if_can_participate, // 0x54
+ ContestAICmd_if_cannot_participate, // 0x55
+ ContestAICmd_get_val_812A188, // 0x56
+ ContestAICmd_unk_57, // 0x57
+ ContestAICmd_contest_58, // 0x58
+ ContestAICmd_unk_59, // 0x59
+ ContestAICmd_unk_5A, // 0x5A
+ ContestAICmd_unk_5B, // 0x5B
+ ContestAICmd_unk_5C, // 0x5C
+ ContestAICmd_unk_5D, // 0x5D
+ ContestAICmd_unk_5E, // 0x5E
+ ContestAICmd_unk_5F, // 0x5F
+ ContestAICmd_unk_60, // 0x60
+ ContestAICmd_unk_61, // 0x61
+ ContestAICmd_unk_62, // 0x62
+ ContestAICmd_unk_63, // 0x63
+ ContestAICmd_unk_64, // 0x64
+ ContestAICmd_unk_65, // 0x65
+ ContestAICmd_unk_66, // 0x66
+ ContestAICmd_unk_67, // 0x67
+ ContestAICmd_unk_68, // 0x68
+ ContestAICmd_unk_69, // 0x69
+ ContestAICmd_unk_6A, // 0x6A
+ ContestAICmd_unk_6B, // 0x6B
+ ContestAICmd_unk_6C, // 0x6C
+ ContestAICmd_unk_6D, // 0x6D
+ ContestAICmd_unk_6E, // 0x6E
+ ContestAICmd_unk_6F, // 0x6F
+ ContestAICmd_unk_70, // 0x70
+ ContestAICmd_unk_71, // 0x71
+ ContestAICmd_unk_72, // 0x72
+ ContestAICmd_unk_73, // 0x73
+ ContestAICmd_unk_74, // 0x74
+ ContestAICmd_unk_75, // 0x75
+ ContestAICmd_unk_76, // 0x76
+ ContestAICmd_unk_77, // 0x77
+ ContestAICmd_unk_78, // 0x78
+ ContestAICmd_unk_79, // 0x79
+ ContestAICmd_unk_7A, // 0x7A
+ ContestAICmd_unk_7B, // 0x7B
+ ContestAICmd_unk_7C, // 0x7C
+ ContestAICmd_if_random, // 0x7D
+ ContestAICmd_unk_7E, // 0x7E
+ ContestAICmd_jump, // 0x7F
+ ContestAICmd_call, // 0x80
+ ContestAICmd_end, // 0x81
+ ContestAICmd_check_user_has_exciting_move, // 0x82
+ ContestAICmd_if_user_has_exciting_move, // 0x83
+ ContestAICmd_if_user_doesnt_have_exciting_move, // 0x84
+ ContestAICmd_unk_85, // 0x85
+ ContestAICmd_unk_86, // 0x86
+ ContestAICmd_if_effect_in_user_moveset, // 0x87
};
static void ContestAI_DoAIProcessing(void);
@@ -302,21 +302,21 @@ void ContestAI_ResetAI(u8 contestantAI)
eContestAI->contestantId = contestantAI;
eContestAI->stackSize = 0;
- eContestAI->flags = gContestMons[eContestAI->contestantId].flags;
+ eContestAI->aiChecks = gContestMons[eContestAI->contestantId].aiChecks;
}
u8 ContestAI_GetActionToUse(void)
{
- while (eContestAI->flags != 0)
+ while (eContestAI->aiChecks != 0)
{
- if (eContestAI->flags & 1)
+ if (eContestAI->aiChecks & 1)
{
- eContestAI->aiState = 0;
+ eContestAI->aiState = CONTESTAI_SETTING_UP;
ContestAI_DoAIProcessing();
}
- eContestAI->flags >>= 1;
- eContestAI->unk10++;
- eContestAI->unk4 = 0;
+ eContestAI->aiChecks >>= 1;
+ eContestAI->currentAICheck++;
+ eContestAI->nextMoveIndex = 0;
}
while (1)
@@ -343,28 +343,31 @@ static void ContestAI_DoAIProcessing(void)
case CONTESTAI_DO_NOT_PROCESS:
break;
case CONTESTAI_SETTING_UP:
- gAIScriptPtr = gContestAIs[eContestAI->unk10];
+ gAIScriptPtr = gContestAIChecks[eContestAI->currentAICheck];
- if (gContestMons[eContestAI->contestantId].moves[eContestAI->unk4] == 0)
- eContestAI->unk2 = 0; // don't process a move that doesn't exist.
+ if (gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex] == 0)
+ eContestAI->nextMove = 0; // don't process a move that doesn't exist.
else
- eContestAI->unk2 = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ eContestAI->nextMove = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
eContestAI->aiState++;
break;
case CONTESTAI_PROCESSING:
- if (eContestAI->unk2 != 0)
+ if (eContestAI->nextMove != 0)
+ {
sContestAICmdTable[*gAIScriptPtr](); // run the command.
+ }
else
{
- eContestAI->unk5[eContestAI->unk4] = 0; // don't consider a move that doesn't exist.
+ eContestAI->unk5[eContestAI->nextMoveIndex] = 0; // don't consider a move that doesn't exist.
eContestAI->aiAction |= 1;
}
if (eContestAI->aiAction & 1)
{
- eContestAI->unk4++;
- if (eContestAI->unk4 < 4)
+ eContestAI->nextMoveIndex++;
+ if (eContestAI->nextMoveIndex < 4)
eContestAI->aiState = 0;
else
+ // aiState = CONTESTAI_FINISHED
eContestAI->aiState++;
eContestAI->aiAction &= 0xFE; // TODO: Define action flags
}
@@ -384,16 +387,16 @@ static u8 sub_81563B0(u8 var)
return i;
}
-static void ContestAICmd_unk_00(void)
+static void ContestAICmd_score(void)
{
- s16 score = eContestAI->unk5[eContestAI->unk4] + (s8)gAIScriptPtr[1];
+ s16 score = eContestAI->unk5[eContestAI->nextMoveIndex] + (s8)gAIScriptPtr[1];
if (score > 255)
score = 255;
else if (score < 0)
score = 0;
- eContestAI->unk5[eContestAI->unk4] = score;
+ eContestAI->unk5[eContestAI->nextMoveIndex] = score;
gAIScriptPtr += 2;
}
@@ -404,7 +407,7 @@ static void ContestAICmd_get_turn(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_02(void)
+static void ContestAICmd_if_turn_less_than(void)
{
ContestAICmd_get_turn();
@@ -414,7 +417,7 @@ static void ContestAICmd_unk_02(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_03(void)
+static void ContestAICmd_if_turn_more_than(void)
{
ContestAICmd_get_turn();
@@ -424,7 +427,7 @@ static void ContestAICmd_unk_03(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_04(void)
+static void ContestAICmd_if_turn_eq(void)
{
ContestAICmd_get_turn();
@@ -434,7 +437,7 @@ static void ContestAICmd_unk_04(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_05(void)
+static void ContestAICmd_if_turn_not_eq(void)
{
ContestAICmd_get_turn();
@@ -450,7 +453,7 @@ static void ContestAICmd_get_excitement(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_07(void)
+static void ContestAICmd_if_excitement_less_than(void)
{
ContestAICmd_get_excitement();
@@ -460,7 +463,7 @@ static void ContestAICmd_unk_07(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_08(void)
+static void ContestAICmd_if_excitement_more_than(void)
{
ContestAICmd_get_excitement();
@@ -470,7 +473,7 @@ static void ContestAICmd_unk_08(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_09(void)
+static void ContestAICmd_if_excitement_eq(void)
{
ContestAICmd_get_excitement();
@@ -480,7 +483,7 @@ static void ContestAICmd_unk_09(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_0A(void)
+static void ContestAICmd_if_excitement_not_eq(void)
{
ContestAICmd_get_excitement();
@@ -496,7 +499,7 @@ static void ContestAICmd_get_user_order(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_0C(void)
+static void ContestAICmd_if_user_order_less_than(void)
{
ContestAICmd_get_user_order();
@@ -506,7 +509,7 @@ static void ContestAICmd_unk_0C(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_0D(void)
+static void ContestAICmd_if_user_order_more_than(void)
{
ContestAICmd_get_user_order();
@@ -516,7 +519,7 @@ static void ContestAICmd_unk_0D(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_0E(void)
+static void ContestAICmd_if_user_order_eq(void)
{
ContestAICmd_get_user_order();
@@ -526,7 +529,7 @@ static void ContestAICmd_unk_0E(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_0F(void)
+static void ContestAICmd_if_user_order_not_eq(void)
{
ContestAICmd_get_user_order();
@@ -536,15 +539,15 @@ static void ContestAICmd_unk_0F(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_get_user_condition_maybe(void)
+static void ContestAICmd_get_user_condition(void)
{
eContestAI->scriptResult = sContestantStatus[eContestAI->contestantId].condition / 10;
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_11(void)
+static void ContestAICmd_if_user_condition_less_than(void)
{
- ContestAICmd_get_user_condition_maybe();
+ ContestAICmd_get_user_condition();
if (eContestAI->scriptResult < gAIScriptPtr[0])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
@@ -552,9 +555,9 @@ static void ContestAICmd_unk_11(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_12(void)
+static void ContestAICmd_if_user_condition_more_than(void)
{
- ContestAICmd_get_user_condition_maybe();
+ ContestAICmd_get_user_condition();
if (eContestAI->scriptResult > gAIScriptPtr[0])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
@@ -562,9 +565,9 @@ static void ContestAICmd_unk_12(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_13(void)
+static void ContestAICmd_if_user_condition_eq(void)
{
- ContestAICmd_get_user_condition_maybe();
+ ContestAICmd_get_user_condition();
if (eContestAI->scriptResult == gAIScriptPtr[0])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
@@ -572,9 +575,9 @@ static void ContestAICmd_unk_13(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_14(void)
+static void ContestAICmd_if_user_condition_not_eq(void)
{
- ContestAICmd_get_user_condition_maybe();
+ ContestAICmd_get_user_condition();
if (eContestAI->scriptResult != gAIScriptPtr[0])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
@@ -680,7 +683,7 @@ static void ContestAICmd_get_contest_type(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_20(void)
+static void ContestAICmd_if_contest_type_eq(void)
{
ContestAICmd_get_contest_type();
@@ -690,7 +693,7 @@ static void ContestAICmd_unk_20(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_21(void)
+static void ContestAICmd_if_contest_type_not_eq(void)
{
ContestAICmd_get_contest_type();
@@ -702,11 +705,11 @@ static void ContestAICmd_unk_21(void)
static void ContestAICmd_get_move_excitement(void)
{
- eContestAI->scriptResult = Contest_GetMoveExcitement(gContestMons[eContestAI->contestantId].moves[eContestAI->unk4]);
+ eContestAI->scriptResult = Contest_GetMoveExcitement(gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex]);
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_23(void)
+static void ContestAICmd_if_move_excitement_less_than(void)
{
ContestAICmd_get_move_excitement();
@@ -716,7 +719,7 @@ static void ContestAICmd_unk_23(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_24(void)
+static void ContestAICmd_if_move_excitement_greater_than(void)
{
ContestAICmd_get_move_excitement();
@@ -726,7 +729,7 @@ static void ContestAICmd_unk_24(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_25(void)
+static void ContestAICmd_if_move_excitement_eq(void)
{
ContestAICmd_get_move_excitement();
@@ -736,7 +739,7 @@ static void ContestAICmd_unk_25(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_26(void)
+static void ContestAICmd_if_move_excitement_not_eq(void)
{
ContestAICmd_get_move_excitement();
@@ -748,13 +751,13 @@ static void ContestAICmd_unk_26(void)
static void ContestAICmd_get_move_effect(void)
{
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
eContestAI->scriptResult = gContestMoves[move].effect;
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_28(void)
+static void ContestAICmd_if_move_effect_eq(void)
{
ContestAICmd_get_move_effect();
@@ -764,7 +767,7 @@ static void ContestAICmd_unk_28(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_29(void)
+static void ContestAICmd_if_move_effect_not_eq(void)
{
ContestAICmd_get_move_effect();
@@ -776,13 +779,13 @@ static void ContestAICmd_unk_29(void)
static void ContestAICmd_get_move_effect_type(void)
{
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
eContestAI->scriptResult = gContestEffects[gContestMoves[move].effect].effectType;
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_2B(void)
+static void ContestAICmd_if_move_effect_type_eq(void)
{
ContestAICmd_get_move_effect_type();
@@ -792,7 +795,7 @@ static void ContestAICmd_unk_2B(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_2C(void)
+static void ContestAICmd_if_move_effect_type_not_eq(void)
{
ContestAICmd_get_move_effect_type();
@@ -802,10 +805,10 @@ static void ContestAICmd_unk_2C(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_check_move_has_highest_appeal(void)
+static void ContestAICmd_check_most_appealing_move(void)
{
int i;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
u8 appeal = gContestEffects[gContestMoves[move].effect].appeal;
for (i = 0; i < MAX_MON_MOVES; i++)
@@ -823,9 +826,9 @@ static void ContestAICmd_check_move_has_highest_appeal(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_2E(void)
+static void ContestAICmd_if_most_appealing_move(void)
{
- ContestAICmd_check_move_has_highest_appeal();
+ ContestAICmd_check_most_appealing_move();
if (eContestAI->scriptResult != FALSE)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
@@ -836,7 +839,7 @@ static void ContestAICmd_unk_2E(void)
static void ContestAICmd_unk_2F(void)
{
int i;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
u8 jam = gContestEffects[gContestMoves[move].effect].jam;
for (i = 0; i < MAX_MON_MOVES; i++)
@@ -866,7 +869,7 @@ static void ContestAICmd_unk_30(void)
static void ContestAICmd_unk_31(void)
{
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
eContestAI->scriptResult = gContestEffects[gContestMoves[move].effect].appeal / 10;
gAIScriptPtr += 1;
@@ -914,7 +917,7 @@ static void ContestAICmd_unk_35(void)
static void ContestAICmd_unk_36(void)
{
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
eContestAI->scriptResult = gContestEffects[gContestMoves[move].effect].jam / 10;
gAIScriptPtr += 1;
@@ -963,7 +966,7 @@ static void ContestAICmd_unk_3A(void)
static void ContestAICmd_get_move_used_count(void)
{
s16 result;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
if (move != sContestantStatus[eContestAI->contestantId].prevMove)
result = 0; // move is unique and not reused.
@@ -974,7 +977,7 @@ static void ContestAICmd_get_move_used_count(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_3C(void)
+static void ContestAICmd_if_most_used_count_less_than(void)
{
ContestAICmd_get_move_used_count();
@@ -984,7 +987,7 @@ static void ContestAICmd_unk_3C(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_3D(void)
+static void ContestAICmd_if_most_used_count_more_than(void)
{
ContestAICmd_get_move_used_count();
@@ -994,7 +997,7 @@ static void ContestAICmd_unk_3D(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_3E(void)
+static void ContestAICmd_if_most_used_count_eq(void)
{
ContestAICmd_get_move_used_count();
@@ -1004,7 +1007,7 @@ static void ContestAICmd_unk_3E(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_3F(void)
+static void ContestAICmd_if_most_used_count_not_eq(void)
{
ContestAICmd_get_move_used_count();
@@ -1018,7 +1021,7 @@ static void ContestAICmd_check_combo_starter(void)
{
u8 result = 0;
int i;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
for (i = 0; i < MAX_MON_MOVES; i++)
{
@@ -1040,7 +1043,7 @@ static void ContestAICmd_check_combo_starter(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_41(void)
+static void ContestAICmd_if_combo_starter(void)
{
ContestAICmd_check_combo_starter();
@@ -1050,7 +1053,7 @@ static void ContestAICmd_unk_41(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_42(void)
+static void ContestAICmd_if_not_combo_starter(void)
{
ContestAICmd_check_combo_starter();
@@ -1064,7 +1067,7 @@ static void ContestAICmd_check_combo_finisher(void)
{
u8 result = 0;
int i;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
for (i = 0; i < MAX_MON_MOVES; i++)
{
@@ -1086,7 +1089,7 @@ static void ContestAICmd_check_combo_finisher(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_44(void)
+static void ContestAICmd_if_combo_finisher(void)
{
ContestAICmd_check_combo_finisher();
@@ -1096,7 +1099,7 @@ static void ContestAICmd_unk_44(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_45(void)
+static void ContestAICmd_if_not_combo_finisher(void)
{
ContestAICmd_check_combo_finisher();
@@ -1109,7 +1112,7 @@ static void ContestAICmd_unk_45(void)
static void ContestAICmd_check_would_finish_combo(void)
{
u8 result = 0;
- u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->unk4];
+ u16 move = gContestMons[eContestAI->contestantId].moves[eContestAI->nextMoveIndex];
if (sContestantStatus[eContestAI->contestantId].prevMove)
result = AreMovesContestCombo(sContestantStatus[eContestAI->contestantId].prevMove, move);
@@ -1121,7 +1124,7 @@ static void ContestAICmd_check_would_finish_combo(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_47(void)
+static void ContestAICmd_if_would_finish_combo(void)
{
ContestAICmd_check_would_finish_combo();
@@ -1131,7 +1134,7 @@ static void ContestAICmd_unk_47(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_48(void)
+static void ContestAICmd_if_would_not_finish_combo(void)
{
ContestAICmd_check_would_finish_combo();
@@ -1149,7 +1152,7 @@ static void ContestAICmd_get_condition(void)
gAIScriptPtr += 2;
}
-static void ContestAICmd_unk_4A(void)
+static void ContestAICmd_if_condition_less_than(void)
{
ContestAICmd_get_condition();
@@ -1159,7 +1162,7 @@ static void ContestAICmd_unk_4A(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_4B(void)
+static void ContestAICmd_if_condition_more_than(void)
{
ContestAICmd_get_condition();
@@ -1169,7 +1172,7 @@ static void ContestAICmd_unk_4B(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_4C(void)
+static void ContestAICmd_if_condition_eq(void)
{
ContestAICmd_get_condition();
@@ -1179,7 +1182,7 @@ static void ContestAICmd_unk_4C(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_4D(void)
+static void ContestAICmd_if_condition_not_eq(void)
{
ContestAICmd_get_condition();
@@ -1201,7 +1204,7 @@ static void ContestAICmd_get_used_combo_starter(void)
gAIScriptPtr += 2;
}
-static void ContestAICmd_unk_4F(void)
+static void ContestAICmd_if_used_combo_starter_less_than(void)
{
ContestAICmd_get_used_combo_starter();
@@ -1211,7 +1214,7 @@ static void ContestAICmd_unk_4F(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_50(void)
+static void ContestAICmd_if_used_combo_starter_more_than(void)
{
ContestAICmd_get_used_combo_starter();
@@ -1221,7 +1224,7 @@ static void ContestAICmd_unk_50(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_51(void)
+static void ContestAICmd_if_used_combo_starter_eq(void)
{
ContestAICmd_get_used_combo_starter();
@@ -1231,7 +1234,7 @@ static void ContestAICmd_unk_51(void)
gAIScriptPtr += 5;
}
-static void ContestAICmd_unk_52(void)
+static void ContestAICmd_if_used_combo_starter_not_eq(void)
{
ContestAICmd_get_used_combo_starter();
@@ -1251,7 +1254,7 @@ static void ContestAICmd_check_can_participate(void)
gAIScriptPtr += 2;
}
-static void ContestAICmd_unk_54(void)
+static void ContestAICmd_if_can_participate(void)
{
ContestAICmd_check_can_participate();
@@ -1261,7 +1264,7 @@ static void ContestAICmd_unk_54(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_55(void)
+static void ContestAICmd_if_cannot_participate(void)
{
ContestAICmd_check_can_participate();
@@ -1289,7 +1292,7 @@ static void ContestAICmd_unk_57(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_58(void)
+static void ContestAICmd_contest_58(void)
{
ContestAICmd_get_val_812A188();
@@ -1620,7 +1623,7 @@ static void ContestAICmd_unk_7C(void)
gAIScriptPtr += 7;
}
-static void ContestAICmd_unk_7D(void)
+static void ContestAICmd_if_random(void)
{
if ((Random() & 0xFF) < eContestAI->scriptArr[gAIScriptPtr[1]])
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
@@ -1637,18 +1640,18 @@ static void ContestAICmd_unk_7E(void)
}
// jump
-static void ContestAICmd_unk_7F(void)
+static void ContestAICmd_jump(void)
{
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
-static void ContestAICmd_unk_80(void)
+static void ContestAICmd_call(void)
{
AIStackPushVar(gAIScriptPtr + 5);
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
}
-static void ContestAICmd_unk_81(void)
+static void ContestAICmd_end(void)
{
if (!AIStackPop())
eContestAI->aiAction |= 1;
@@ -1673,7 +1676,7 @@ static bool8 AIStackPop(void)
}
}
-static void ContestAICmd_check_for_exciting_move(void)
+static void ContestAICmd_check_user_has_exciting_move(void)
{
int result = 0;
int i;
@@ -1694,9 +1697,9 @@ static void ContestAICmd_check_for_exciting_move(void)
gAIScriptPtr += 1;
}
-static void ContestAICmd_unk_83(void)
+static void ContestAICmd_if_user_has_exciting_move(void)
{
- ContestAICmd_check_for_exciting_move();
+ ContestAICmd_check_user_has_exciting_move();
if (eContestAI->scriptResult != 0)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
@@ -1704,9 +1707,9 @@ static void ContestAICmd_unk_83(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_84(void)
+static void ContestAICmd_if_user_doesnt_have_exciting_move(void)
{
- ContestAICmd_check_for_exciting_move();
+ ContestAICmd_check_user_has_exciting_move();
if (eContestAI->scriptResult == 0)
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 0);
@@ -1744,7 +1747,7 @@ static void ContestAICmd_unk_86(void)
gAIScriptPtr += 4;
}
-static void ContestAICmd_unk_87(void)
+static void ContestAICmd_if_effect_in_user_moveset(void)
{
ContestAICmd_unk_85();