diff --git a/include/battle/move_display_info.h b/include/battle/move_display_info.h new file mode 100644 index 0000000000..89075dcaf0 --- /dev/null +++ b/include/battle/move_display_info.h @@ -0,0 +1,12 @@ +#ifndef POKEPLATINUM_MOVE_DISPLAY_INFO +#define POKEPLATINUM_MOVE_DISPLAY_INFO + +#include "constants/moves.h" + +typedef struct MoveDisplayInfo { + u16 move[LEARNED_MOVES_MAX]; + u16 curPP[LEARNED_MOVES_MAX]; + u16 maxPP[LEARNED_MOVES_MAX]; +} MoveDisplayInfo; + +#endif // POKEPLATINUM_MOVE_DISPLAY_INFO diff --git a/include/battle/ov16_0226871C.h b/include/battle/ov16_0226871C.h index 1de6da8f30..565cdc75a0 100644 --- a/include/battle/ov16_0226871C.h +++ b/include/battle/ov16_0226871C.h @@ -3,8 +3,8 @@ #include "struct_decls/battle_system.h" +#include "battle/move_display_info.h" #include "battle/struct_ov16_02268A14_decl.h" -#include "battle/struct_ov16_0226AC98.h" #include "bg_window.h" #include "narc.h" @@ -26,7 +26,7 @@ BOOL ov16_02269348(UnkStruct_ov16_02268A14 *param0); int ov16_02269368(int param0, int param1); void ov16_0226940C(UnkStruct_ov16_02268A14 *param0); void ov16_0226947C(UnkStruct_ov16_02268A14 *param0, int param1, int param2); -void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const UnkStruct_ov16_0226AC98 *param2); +void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const MoveDisplayInfo *param2); void ov16_0226BCCC(UnkStruct_ov16_02268A14 *param0, int param1); BOOL ov16_0226BCD0(UnkStruct_ov16_02268A14 *param0); int ov16_0226CD08(UnkStruct_ov16_02268A14 *param0); diff --git a/include/battle/struct_ov16_0226AC98.h b/include/battle/struct_ov16_0226AC98.h deleted file mode 100644 index 2a5be2b3ad..0000000000 --- a/include/battle/struct_ov16_0226AC98.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef POKEPLATINUM_STRUCT_OV16_0226AC98_H -#define POKEPLATINUM_STRUCT_OV16_0226AC98_H - -typedef struct { - u16 unk_00[4]; - u16 unk_08[4]; - u16 unk_10[4]; -} UnkStruct_ov16_0226AC98; - -#endif // POKEPLATINUM_STRUCT_OV16_0226AC98_H diff --git a/include/data/map_headers.h b/include/data/map_headers.h index c7cf2fae97..1cc7f3266d 100644 --- a/include/data/map_headers.h +++ b/include/data/map_headers.h @@ -1,5 +1,6 @@ #include "consts/map.h" +#include "field/events/zone_event.naix" #include "field/scripts/scr_seq.naix" #include "text/pl_msg.naix" @@ -14,7 +15,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -36,7 +37,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -58,7 +59,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x424, .nightMusicID = 0x424, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x1, + .eventsArchiveID = events_underground, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -80,7 +81,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x2, + .eventsArchiveID = events_jubilife_city, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x1, .weather = 0x0, @@ -102,7 +103,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x442, .nightMusicID = 0x442, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x3, + .eventsArchiveID = events_jubilife_city_mart, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -124,7 +125,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x43F, .nightMusicID = 0x43F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x4, + .eventsArchiveID = events_jubilife_city_unknown_house_1, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -146,7 +147,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x43D, .nightMusicID = 0x43E, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x5, + .eventsArchiveID = events_jubilife_city_pokecenter_1f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -168,7 +169,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x43D, .nightMusicID = 0x43E, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x6, + .eventsArchiveID = events_jubilife_city_pokecenter_2f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -190,7 +191,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x7, + .eventsArchiveID = events_poketch_co_1f, .mapLabelTextID = 0x5B, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -212,7 +213,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x8, + .eventsArchiveID = events_poketch_co_2f, .mapLabelTextID = 0x5B, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -234,7 +235,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x9, + .eventsArchiveID = events_poketch_co_3f, .mapLabelTextID = 0x5B, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -388,7 +389,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1093, .nightMusicID = 1093, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x10, + .eventsArchiveID = events_jubilife_tv_3f_group_ranking_room, .mapLabelTextID = 0x5A, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -410,7 +411,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1093, .nightMusicID = 1093, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x11, + .eventsArchiveID = events_jubilife_tv_elevator, .mapLabelTextID = 0x5A, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -432,7 +433,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x12, + .eventsArchiveID = events_jubilife_city_south_house_1f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -454,7 +455,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x13, + .eventsArchiveID = events_jubilife_city_south_house_2f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -476,7 +477,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x14, + .eventsArchiveID = events_jubilife_city_south_house_3f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -498,7 +499,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x15, + .eventsArchiveID = events_jubilife_city_south_house_4f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -520,7 +521,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x16, + .eventsArchiveID = events_jubilife_city_unknown_house_2, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -542,7 +543,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x17, + .eventsArchiveID = events_jubilife_city_condominiums_1f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -564,7 +565,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x18, + .eventsArchiveID = events_jubilife_city_condominiums_2f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -586,7 +587,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3F2, .nightMusicID = 0x40F, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x19, + .eventsArchiveID = events_jubilife_city_condominiums_3f, .mapLabelTextID = 0x6, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -1290,7 +1291,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1012, .nightMusicID = 1041, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x39, + .eventsArchiveID = events_oreburgh_city_middle_house, .mapLabelTextID = 0x8, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -1554,7 +1555,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x43D, .nightMusicID = 0x43E, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x45, + .eventsArchiveID = events_eterna_city_pokecenter_2f, .mapLabelTextID = 0x9, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -1620,7 +1621,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1068, .nightMusicID = 1068, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x48, + .eventsArchiveID = events_team_galactic_eterna_building_2f, .mapLabelTextID = 122, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -2588,7 +2589,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1089, .nightMusicID = 1089, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x74, + .eventsArchiveID = events_contest_hall_lobby, .mapLabelTextID = 97, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -2610,7 +2611,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1089, .nightMusicID = 1089, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x75, + .eventsArchiveID = events_contest_hall_stage_ongoing_contest, .mapLabelTextID = 97, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -4326,7 +4327,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1020, .nightMusicID = 1049, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -4546,7 +4547,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -4898,7 +4899,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -4942,7 +4943,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -5360,7 +5361,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -5558,7 +5559,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1062, .nightMusicID = 1062, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -5866,7 +5867,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -6064,7 +6065,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -6086,7 +6087,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1062, .nightMusicID = 1062, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -6108,7 +6109,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1062, .nightMusicID = 1062, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -6328,7 +6329,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1025, .nightMusicID = 1054, .wildEncountersArchiveID = 117, - .eventsArchiveID = 0x114, + .eventsArchiveID = events_trophy_garden, .mapLabelTextID = 68, .mapLabelWindowID = 0x7, .weather = 0x0, @@ -6350,7 +6351,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1022, .nightMusicID = 1051, .wildEncountersArchiveID = 118, - .eventsArchiveID = 0x115, + .eventsArchiveID = events_iron_island, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x8, @@ -6372,7 +6373,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x433, .nightMusicID = 0x433, .wildEncountersArchiveID = 119, - .eventsArchiveID = 0x116, + .eventsArchiveID = events_iron_island_1f, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -6394,7 +6395,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x433, .nightMusicID = 0x433, .wildEncountersArchiveID = 120, - .eventsArchiveID = 0x117, + .eventsArchiveID = events_iron_island_b1f_left_room, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -6416,7 +6417,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x433, .nightMusicID = 0x433, .wildEncountersArchiveID = 121, - .eventsArchiveID = 0x118, + .eventsArchiveID = events_iron_island_b1f_right_room, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -6438,7 +6439,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x433, .nightMusicID = 0x433, .wildEncountersArchiveID = 122, - .eventsArchiveID = 0x119, + .eventsArchiveID = events_iron_island_b2f_right_room, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -6702,7 +6703,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -7142,7 +7143,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -7164,7 +7165,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -7362,7 +7363,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1021, .nightMusicID = 1050, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x140, + .eventsArchiveID = events_verity_lakefront, .mapLabelTextID = 0x48, .mapLabelWindowID = 0x3, .weather = 0x0, @@ -7384,7 +7385,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1021, .nightMusicID = 1050, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x141, + .eventsArchiveID = events_verity_lakefront_unknown_house, .mapLabelTextID = 0x48, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -7406,7 +7407,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1009, .nightMusicID = 1038, .wildEncountersArchiveID = 138, - .eventsArchiveID = 0x142, + .eventsArchiveID = events_valor_lakefront, .mapLabelTextID = 73, .mapLabelWindowID = 0x3, .weather = 0x0, @@ -7428,7 +7429,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1009, .nightMusicID = 1038, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x143, + .eventsArchiveID = events_restaurant, .mapLabelTextID = 110, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -7450,7 +7451,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1009, .nightMusicID = 1038, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x144, + .eventsArchiveID = events_grand_lake_valor_lakefront_east_house, .mapLabelTextID = 109, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -8836,7 +8837,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1024, .nightMusicID = 1053, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -8858,7 +8859,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1024, .nightMusicID = 1053, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -8880,7 +8881,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1008, .nightMusicID = 1037, .wildEncountersArchiveID = 173, - .eventsArchiveID = 0x183, + .eventsArchiveID = events_route_227, .mapLabelTextID = 42, .mapLabelWindowID = 0x3, .weather = 0x9, @@ -8902,7 +8903,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1024, .nightMusicID = 1053, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -8924,7 +8925,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1024, .nightMusicID = 1053, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -8946,7 +8947,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x404, .nightMusicID = 0x421, .wildEncountersArchiveID = 174, - .eventsArchiveID = 0x184, + .eventsArchiveID = events_route_228, .mapLabelTextID = 0x2B, .mapLabelWindowID = 0x3, .weather = 0xA, @@ -8968,7 +8969,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x404, .nightMusicID = 0x421, .wildEncountersArchiveID = 175, - .eventsArchiveID = 0x185, + .eventsArchiveID = events_route_229, .mapLabelTextID = 44, .mapLabelWindowID = 0x3, .weather = 0x0, @@ -8990,7 +8991,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -9012,7 +9013,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1024, .nightMusicID = 1053, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -9034,7 +9035,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x43D, .nightMusicID = 0x43E, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -9056,7 +9057,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1004, .nightMusicID = 1033, .wildEncountersArchiveID = 176, - .eventsArchiveID = 0x186, + .eventsArchiveID = events_twinleaf_town, .mapLabelTextID = 0x1, .mapLabelWindowID = 0x2, .weather = 0x0, @@ -9100,7 +9101,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1004, .nightMusicID = 1033, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x188, + .eventsArchiveID = events_twinleaf_town_rival_house_2f, .mapLabelTextID = 0x1, .mapLabelWindowID = 0x2, .weather = 0x0, @@ -9298,7 +9299,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1088, .nightMusicID = 1088, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x191, + .eventsArchiveID = events_sandgem_town_pokemon_research_lab, .mapLabelTextID = 0x2, .mapLabelWindowID = 0x2, .weather = 0x0, @@ -10354,7 +10355,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -10420,7 +10421,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x3E8, .nightMusicID = 0x3E8, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x0, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -11256,7 +11257,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x430, .nightMusicID = 0x430, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 86, .mapLabelWindowID = 0x6, .weather = 0xD, @@ -11740,7 +11741,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11762,7 +11763,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11806,7 +11807,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11828,7 +11829,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11850,7 +11851,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11872,7 +11873,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11916,7 +11917,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11938,7 +11939,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11960,7 +11961,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -11982,7 +11983,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12004,7 +12005,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12048,7 +12049,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12070,7 +12071,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12092,7 +12093,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12114,7 +12115,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12136,7 +12137,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12158,7 +12159,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12180,7 +12181,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12202,7 +12203,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12224,7 +12225,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12246,7 +12247,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12268,7 +12269,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1064, .nightMusicID = 1064, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 62, .mapLabelWindowID = 0x6, .weather = (0xE), @@ -12356,7 +12357,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1092, .nightMusicID = 1092, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 80, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -12554,7 +12555,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12598,7 +12599,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 1013, .nightMusicID = 1042, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 122, .mapLabelWindowID = 0x6, .weather = 0x0, @@ -12642,7 +12643,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12664,7 +12665,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12686,7 +12687,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12708,7 +12709,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12730,7 +12731,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12752,7 +12753,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12774,7 +12775,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12796,7 +12797,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12818,7 +12819,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12840,7 +12841,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x4A6, .nightMusicID = 0x4A6, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x0, + .eventsArchiveID = events_empty, .mapLabelTextID = 0x75, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12928,7 +12929,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x433, .nightMusicID = 0x433, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x210, + .eventsArchiveID = events_iron_island_iron_ruins, .mapLabelTextID = 0x45, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12950,7 +12951,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x427, .nightMusicID = 0x427, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x211, + .eventsArchiveID = events_iron_ruins, .mapLabelTextID = 0x7B, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -12994,7 +12995,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x427, .nightMusicID = 0x427, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x213, + .eventsArchiveID = events_iceberg_ruins, .mapLabelTextID = 0x7C, .mapLabelWindowID = 0x4, .weather = 0x1D, @@ -13016,7 +13017,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x404, .nightMusicID = 0x421, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x214, + .eventsArchiveID = events_route_228_rock_peak_ruins, .mapLabelTextID = 0x2B, .mapLabelWindowID = 0x4, .weather = 0x0, @@ -13038,7 +13039,7 @@ static const MapHeader sMapHeaders[] = { .dayMusicID = 0x427, .nightMusicID = 0x427, .wildEncountersArchiveID = 0xFFFF, - .eventsArchiveID = 0x215, + .eventsArchiveID = events_rock_peak_ruins, .mapLabelTextID = 0x7D, .mapLabelWindowID = 0x4, .weather = 0x0, diff --git a/platinum.us/filesys.sha1 b/platinum.us/filesys.sha1 index 1f3be382c6..0d7e5c8ea6 100644 --- a/platinum.us/filesys.sha1 +++ b/platinum.us/filesys.sha1 @@ -218,7 +218,7 @@ e22f0296444ce01e0b7619f73a8cf2016b2307b4 *res/prebuilt/graphic/oekaki.narc dd0663e46347230d1d1b9eb8b583cee9acc10f31 *res/prebuilt/graphic/pl_bag_gra.narc 0929061d78710595aa53796ecffe3545f8406d82 *res/fonts/pl_font.narc d397dbd087737151aa8bea242016c626afb55fa5 *res/prebuilt/graphic/pl_plist_gra.narc -883e6afb310f0ab02c26f2026cba1c76210bb3ac *res/prebuilt/graphic/pl_pst_gra.narc +883e6afb310f0ab02c26f2026cba1c76210bb3ac *res/graphics/pokemon_summary_screen/pl_pst_gra.narc c16faeeeee494830c720d1f795a141cacfe49121 *res/prebuilt/graphic/pl_wifinote.narc 298fd1d0ab31efd35cb00b977f69eacbfb8a8da8 *res/graphics/windows/pl_winframe.narc b9f77b38cc07a6754fc00a7c1830d86c88d45aa6 *res/prebuilt/graphic/plist_gra.narc diff --git a/platinum.us/rom.rsf b/platinum.us/rom.rsf index c9d1a0dd51..d1d17be3af 100644 --- a/platinum.us/rom.rsf +++ b/platinum.us/rom.rsf @@ -329,7 +329,13 @@ RomSpec Root / HostRoot res/prebuilt File graphic/pl_plist_gra.narc - File graphic/pl_pst_gra.narc + + Root /graphic/ + HostRoot res/graphics/pokemon_summary_screen + File pl_pst_gra.narc + + Root / + HostRoot res/prebuilt File graphic/pl_wifinote.narc Root /graphic diff --git a/res/field/encounters/meson.build b/res/field/encounters/meson.build index 0109710761..8be1ab2e9c 100644 --- a/res/field/encounters/meson.build +++ b/res/field/encounters/meson.build @@ -1,5 +1,5 @@ enc_bin_gen = generator( - encounters_new_py, + encounter_py, arguments: [ '@INPUT@', '@OUTPUT@', ], output: '@BASENAME@.bin' ) diff --git a/res/field/events/events_0307.json b/res/field/events/events_acuity_cavern.json similarity index 100% rename from res/field/events/events_0307.json rename to res/field/events/events_acuity_cavern.json diff --git a/res/field/events/events_0326.json b/res/field/events/events_acuity_lakefront.json similarity index 100% rename from res/field/events/events_0326.json rename to res/field/events/events_acuity_lakefront.json diff --git a/res/field/events/events_0246.json b/res/field/events/events_amity_square.json similarity index 100% rename from res/field/events/events_0246.json rename to res/field/events/events_amity_square.json diff --git a/res/field/events/events_0518.json b/res/field/events/events_battle_arcade.json similarity index 100% rename from res/field/events/events_0518.json rename to res/field/events/events_battle_arcade.json diff --git a/res/field/events/events_0517.json b/res/field/events/events_battle_castle.json similarity index 100% rename from res/field/events/events_0517.json rename to res/field/events/events_battle_castle.json diff --git a/res/field/events/events_0515.json b/res/field/events/events_battle_factory.json similarity index 100% rename from res/field/events/events_0515.json rename to res/field/events/events_battle_factory.json diff --git a/res/field/events/events_0513.json b/res/field/events/events_battle_frontier.json similarity index 100% rename from res/field/events/events_0513.json rename to res/field/events/events_battle_frontier.json diff --git a/res/field/events/events_0514.json b/res/field/events/events_battle_frontier_gate_to_fight_area.json similarity index 100% rename from res/field/events/events_0514.json rename to res/field/events/events_battle_frontier_gate_to_fight_area.json diff --git a/res/field/events/events_0516.json b/res/field/events/events_battle_hall.json similarity index 100% rename from res/field/events/events_0516.json rename to res/field/events/events_battle_hall.json diff --git a/res/field/events/events_0310.json b/res/field/events/events_battle_park.json similarity index 100% rename from res/field/events/events_0310.json rename to res/field/events/events_battle_park.json diff --git a/res/field/events/events_0311.json b/res/field/events/events_battle_park_exchange_service_corner.json similarity index 100% rename from res/field/events/events_0311.json rename to res/field/events/events_battle_park_exchange_service_corner.json diff --git a/res/field/events/events_0191.json b/res/field/events/events_battle_park_gate_to_fight_area.json similarity index 100% rename from res/field/events/events_0191.json rename to res/field/events/events_battle_park_gate_to_fight_area.json diff --git a/res/field/events/events_0312.json b/res/field/events/events_battle_tower.json similarity index 100% rename from res/field/events/events_0312.json rename to res/field/events/events_battle_tower.json diff --git a/res/field/events/events_0316.json b/res/field/events/events_battle_tower_battle_room.json similarity index 100% rename from res/field/events/events_0316.json rename to res/field/events/events_battle_tower_battle_room.json diff --git a/res/field/events/events_0470.json b/res/field/events/events_battle_tower_battle_salon.json similarity index 100% rename from res/field/events/events_0470.json rename to res/field/events/events_battle_tower_battle_salon.json diff --git a/res/field/events/events_0314.json b/res/field/events/events_battle_tower_corridor.json similarity index 100% rename from res/field/events/events_0314.json rename to res/field/events/events_battle_tower_corridor.json diff --git a/res/field/events/events_0315.json b/res/field/events/events_battle_tower_corridor_multi.json similarity index 100% rename from res/field/events/events_0315.json rename to res/field/events/events_battle_tower_corridor_multi.json diff --git a/res/field/events/events_0313.json b/res/field/events/events_battle_tower_elevator.json similarity index 100% rename from res/field/events/events_0313.json rename to res/field/events/events_battle_tower_elevator.json diff --git a/res/field/events/events_0317.json b/res/field/events/events_battle_tower_multi_battle_room.json similarity index 100% rename from res/field/events/events_0317.json rename to res/field/events/events_battle_tower_multi_battle_room.json diff --git a/res/field/events/events_0433.json b/res/field/events/events_battleground.json similarity index 100% rename from res/field/events/events_0433.json rename to res/field/events/events_battleground.json diff --git a/res/field/events/events_0469.json b/res/field/events/events_cafe.json similarity index 100% rename from res/field/events/events_0469.json rename to res/field/events/events_cafe.json diff --git a/res/field/events/events_0032.json b/res/field/events/events_canalave_city.json similarity index 100% rename from res/field/events/events_0032.json rename to res/field/events/events_canalave_city.json diff --git a/res/field/events/events_0041.json b/res/field/events/events_canalave_city_east_house.json similarity index 100% rename from res/field/events/events_0041.json rename to res/field/events/events_canalave_city_east_house.json diff --git a/res/field/events/events_0034.json b/res/field/events/events_canalave_city_gym.json similarity index 100% rename from res/field/events/events_0034.json rename to res/field/events/events_canalave_city_gym.json diff --git a/res/field/events/events_0042.json b/res/field/events/events_canalave_city_harbor_inn.json similarity index 100% rename from res/field/events/events_0042.json rename to res/field/events/events_canalave_city_harbor_inn.json diff --git a/res/field/events/events_0033.json b/res/field/events/events_canalave_city_mart.json similarity index 100% rename from res/field/events/events_0033.json rename to res/field/events/events_canalave_city_mart.json diff --git a/res/field/events/events_0035.json b/res/field/events/events_canalave_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0035.json rename to res/field/events/events_canalave_city_pokecenter_1f.json diff --git a/res/field/events/events_0036.json b/res/field/events/events_canalave_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0036.json rename to res/field/events/events_canalave_city_pokecenter_2f.json diff --git a/res/field/events/events_0452.json b/res/field/events/events_canalave_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0452.json rename to res/field/events/events_canalave_city_pokecenter_b1f.json diff --git a/res/field/events/events_0043.json b/res/field/events/events_canalave_city_sailor_eldritch_house.json similarity index 100% rename from res/field/events/events_0043.json rename to res/field/events/events_canalave_city_sailor_eldritch_house.json diff --git a/res/field/events/events_0040.json b/res/field/events/events_canalave_city_southeast_house.json similarity index 100% rename from res/field/events/events_0040.json rename to res/field/events/events_canalave_city_southeast_house.json diff --git a/res/field/events/events_0468.json b/res/field/events/events_canalave_city_west_house.json similarity index 100% rename from res/field/events/events_0468.json rename to res/field/events/events_canalave_city_west_house.json diff --git a/res/field/events/events_0037.json b/res/field/events/events_canalave_library_1f.json similarity index 100% rename from res/field/events/events_0037.json rename to res/field/events/events_canalave_library_1f.json diff --git a/res/field/events/events_0038.json b/res/field/events/events_canalave_library_2f.json similarity index 100% rename from res/field/events/events_0038.json rename to res/field/events/events_canalave_library_2f.json diff --git a/res/field/events/events_0039.json b/res/field/events/events_canalave_library_3f.json similarity index 100% rename from res/field/events/events_0039.json rename to res/field/events/events_canalave_library_3f.json diff --git a/res/field/events/events_0421.json b/res/field/events/events_celestic_town.json similarity index 100% rename from res/field/events/events_0421.json rename to res/field/events/events_celestic_town.json diff --git a/res/field/events/events_0428.json b/res/field/events/events_celestic_town_cave.json similarity index 100% rename from res/field/events/events_0428.json rename to res/field/events/events_celestic_town_cave.json diff --git a/res/field/events/events_0424.json b/res/field/events/events_celestic_town_north_house.json similarity index 100% rename from res/field/events/events_0424.json rename to res/field/events/events_celestic_town_north_house.json diff --git a/res/field/events/events_0426.json b/res/field/events/events_celestic_town_northeast_house.json similarity index 100% rename from res/field/events/events_0426.json rename to res/field/events/events_celestic_town_northeast_house.json diff --git a/res/field/events/events_0425.json b/res/field/events/events_celestic_town_northwest_house.json similarity index 100% rename from res/field/events/events_0425.json rename to res/field/events/events_celestic_town_northwest_house.json diff --git a/res/field/events/events_0422.json b/res/field/events/events_celestic_town_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0422.json rename to res/field/events/events_celestic_town_pokecenter_1f.json diff --git a/res/field/events/events_0423.json b/res/field/events/events_celestic_town_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0423.json rename to res/field/events/events_celestic_town_pokecenter_2f.json diff --git a/res/field/events/events_0465.json b/res/field/events/events_celestic_town_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0465.json rename to res/field/events/events_celestic_town_pokecenter_b1f.json diff --git a/res/field/events/events_0427.json b/res/field/events/events_celestic_town_southwest_house.json similarity index 100% rename from res/field/events/events_0427.json rename to res/field/events/events_celestic_town_southwest_house.json diff --git a/res/field/events/events_0318.json b/res/field/events/events_communication_club_colosseum_2p.json similarity index 100% rename from res/field/events/events_0318.json rename to res/field/events/events_communication_club_colosseum_2p.json diff --git a/res/field/events/events_0319.json b/res/field/events/events_communication_club_colosseum_4p.json similarity index 100% rename from res/field/events/events_0319.json rename to res/field/events/events_communication_club_colosseum_4p.json diff --git a/res/field/events/events_0116.json b/res/field/events/events_contest_hall_lobby.json similarity index 100% rename from res/field/events/events_0116.json rename to res/field/events/events_contest_hall_lobby.json diff --git a/res/field/events/events_0512.json b/res/field/events/events_contest_hall_stage_no_contest.json similarity index 100% rename from res/field/events/events_0512.json rename to res/field/events/events_contest_hall_stage_no_contest.json diff --git a/res/field/events/events_0117.json b/res/field/events/events_contest_hall_stage_ongoing_contest.json similarity index 100% rename from res/field/events/events_0117.json rename to res/field/events/events_contest_hall_stage_ongoing_contest.json diff --git a/res/field/events/events_0070.json b/res/field/events/events_cycle_shop.json similarity index 100% rename from res/field/events/events_0070.json rename to res/field/events/events_cycle_shop.json diff --git a/res/field/events/events_0524.json b/res/field/events/events_distortion_world_1f.json similarity index 100% rename from res/field/events/events_0524.json rename to res/field/events/events_distortion_world_1f.json diff --git a/res/field/events/events_0000.json b/res/field/events/events_empty.json similarity index 100% rename from res/field/events/events_0000.json rename to res/field/events/events_empty.json diff --git a/res/field/events/events_0064.json b/res/field/events/events_eterna_city.json similarity index 100% rename from res/field/events/events_0064.json rename to res/field/events/events_eterna_city.json diff --git a/res/field/events/events_0075.json b/res/field/events/events_eterna_city_condominiums_1f.json similarity index 100% rename from res/field/events/events_0075.json rename to res/field/events/events_eterna_city_condominiums_1f.json diff --git a/res/field/events/events_0076.json b/res/field/events/events_eterna_city_condominiums_2f.json similarity index 100% rename from res/field/events/events_0076.json rename to res/field/events/events_eterna_city_condominiums_2f.json diff --git a/res/field/events/events_0077.json b/res/field/events/events_eterna_city_condominiums_3f.json similarity index 100% rename from res/field/events/events_0077.json rename to res/field/events/events_eterna_city_condominiums_3f.json diff --git a/res/field/events/events_0078.json b/res/field/events/events_eterna_city_condominiums_4f.json similarity index 100% rename from res/field/events/events_0078.json rename to res/field/events/events_eterna_city_condominiums_4f.json diff --git a/res/field/events/events_0067.json b/res/field/events/events_eterna_city_dp_gym.json similarity index 100% rename from res/field/events/events_0067.json rename to res/field/events/events_eterna_city_dp_gym.json diff --git a/res/field/events/events_0082.json b/res/field/events/events_eterna_city_east_house.json similarity index 100% rename from res/field/events/events_0082.json rename to res/field/events/events_eterna_city_east_house.json diff --git a/res/field/events/events_0066.json b/res/field/events/events_eterna_city_gym.json similarity index 100% rename from res/field/events/events_0066.json rename to res/field/events/events_eterna_city_gym.json diff --git a/res/field/events/events_0065.json b/res/field/events/events_eterna_city_mart.json similarity index 100% rename from res/field/events/events_0065.json rename to res/field/events/events_eterna_city_mart.json diff --git a/res/field/events/events_0080.json b/res/field/events/events_eterna_city_north_house.json similarity index 100% rename from res/field/events/events_0080.json rename to res/field/events/events_eterna_city_north_house.json diff --git a/res/field/events/events_0068.json b/res/field/events/events_eterna_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0068.json rename to res/field/events/events_eterna_city_pokecenter_1f.json diff --git a/res/field/events/events_0069.json b/res/field/events/events_eterna_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0069.json rename to res/field/events/events_eterna_city_pokecenter_2f.json diff --git a/res/field/events/events_0454.json b/res/field/events/events_eterna_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0454.json rename to res/field/events/events_eterna_city_pokecenter_b1f.json diff --git a/res/field/events/events_0081.json b/res/field/events/events_eterna_city_south_house.json similarity index 100% rename from res/field/events/events_0081.json rename to res/field/events/events_eterna_city_south_house.json diff --git a/res/field/events/events_0083.json b/res/field/events/events_eterna_city_underground_man_house.json similarity index 100% rename from res/field/events/events_0083.json rename to res/field/events/events_eterna_city_underground_man_house.json diff --git a/res/field/events/events_0084.json b/res/field/events/events_eterna_city_unknown_house.json similarity index 100% rename from res/field/events/events_0084.json rename to res/field/events/events_eterna_city_unknown_house.json diff --git a/res/field/events/events_0201.json b/res/field/events/events_eterna_forest.json similarity index 100% rename from res/field/events/events_0201.json rename to res/field/events/events_eterna_forest.json diff --git a/res/field/events/events_0200.json b/res/field/events/events_eterna_forest_outside.json similarity index 100% rename from res/field/events/events_0200.json rename to res/field/events/events_eterna_forest_outside.json diff --git a/res/field/events/events_0187.json b/res/field/events/events_fight_area.json similarity index 100% rename from res/field/events/events_0187.json rename to res/field/events/events_fight_area.json diff --git a/res/field/events/events_0190.json b/res/field/events/events_fight_area_mart.json similarity index 100% rename from res/field/events/events_0190.json rename to res/field/events/events_fight_area_mart.json diff --git a/res/field/events/events_0193.json b/res/field/events/events_fight_area_middle_house.json similarity index 100% rename from res/field/events/events_0193.json rename to res/field/events/events_fight_area_middle_house.json diff --git a/res/field/events/events_0188.json b/res/field/events/events_fight_area_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0188.json rename to res/field/events/events_fight_area_pokecenter_1f.json diff --git a/res/field/events/events_0189.json b/res/field/events/events_fight_area_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0189.json rename to res/field/events/events_fight_area_pokecenter_2f.json diff --git a/res/field/events/events_0461.json b/res/field/events/events_fight_area_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0461.json rename to res/field/events/events_fight_area_pokecenter_b1f.json diff --git a/res/field/events/events_0194.json b/res/field/events/events_fight_area_south_house.json similarity index 100% rename from res/field/events/events_0194.json rename to res/field/events/events_fight_area_south_house.json diff --git a/res/field/events/events_0249.json b/res/field/events/events_floaroma_meadow.json similarity index 100% rename from res/field/events/events_0249.json rename to res/field/events/events_floaroma_meadow.json diff --git a/res/field/events/events_0250.json b/res/field/events/events_floaroma_meadow_house.json similarity index 100% rename from res/field/events/events_0250.json rename to res/field/events/events_floaroma_meadow_house.json diff --git a/res/field/events/events_0405.json b/res/field/events/events_floaroma_town.json similarity index 100% rename from res/field/events/events_0405.json rename to res/field/events/events_floaroma_town.json diff --git a/res/field/events/events_0406.json b/res/field/events/events_floaroma_town_mart.json similarity index 100% rename from res/field/events/events_0406.json rename to res/field/events/events_floaroma_town_mart.json diff --git a/res/field/events/events_0411.json b/res/field/events/events_floaroma_town_middle_house.json similarity index 100% rename from res/field/events/events_0411.json rename to res/field/events/events_floaroma_town_middle_house.json diff --git a/res/field/events/events_0407.json b/res/field/events/events_floaroma_town_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0407.json rename to res/field/events/events_floaroma_town_pokecenter_1f.json diff --git a/res/field/events/events_0408.json b/res/field/events/events_floaroma_town_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0408.json rename to res/field/events/events_floaroma_town_pokecenter_2f.json diff --git a/res/field/events/events_0463.json b/res/field/events/events_floaroma_town_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0463.json rename to res/field/events/events_floaroma_town_pokecenter_b1f.json diff --git a/res/field/events/events_0410.json b/res/field/events/events_floaroma_town_southeast_house.json similarity index 100% rename from res/field/events/events_0410.json rename to res/field/events/events_floaroma_town_southeast_house.json diff --git a/res/field/events/events_0266.json b/res/field/events/events_flower_paradise.json similarity index 100% rename from res/field/events/events_0266.json rename to res/field/events/events_flower_paradise.json diff --git a/res/field/events/events_0409.json b/res/field/events/events_flower_shop.json similarity index 100% rename from res/field/events/events_0409.json rename to res/field/events/events_flower_shop.json diff --git a/res/field/events/events_0361.json b/res/field/events/events_footstep_house.json similarity index 100% rename from res/field/events/events_0361.json rename to res/field/events/events_footstep_house.json diff --git a/res/field/events/events_0118.json b/res/field/events/events_foreign_building.json similarity index 100% rename from res/field/events/events_0118.json rename to res/field/events/events_foreign_building.json diff --git a/res/field/events/events_0203.json b/res/field/events/events_fuego_ironworks_building.json similarity index 100% rename from res/field/events/events_0203.json rename to res/field/events/events_fuego_ironworks_building.json diff --git a/res/field/events/events_0202.json b/res/field/events/events_fuego_ironworks_outside.json similarity index 100% rename from res/field/events/events_0202.json rename to res/field/events/events_fuego_ironworks_outside.json diff --git a/res/field/events/events_0253.json b/res/field/events/events_fullmoon_island.json similarity index 100% rename from res/field/events/events_0253.json rename to res/field/events/events_fullmoon_island.json diff --git a/res/field/events/events_0254.json b/res/field/events/events_fullmoon_island_forest.json similarity index 100% rename from res/field/events/events_0254.json rename to res/field/events/events_fullmoon_island_forest.json diff --git a/res/field/events/events_0293.json b/res/field/events/events_galactic_hq_1f.json similarity index 100% rename from res/field/events/events_0293.json rename to res/field/events/events_galactic_hq_1f.json diff --git a/res/field/events/events_0294.json b/res/field/events/events_galactic_hq_2f.json similarity index 100% rename from res/field/events/events_0294.json rename to res/field/events/events_galactic_hq_2f.json diff --git a/res/field/events/events_0295.json b/res/field/events/events_galactic_hq_3f.json similarity index 100% rename from res/field/events/events_0295.json rename to res/field/events/events_galactic_hq_3f.json diff --git a/res/field/events/events_0296.json b/res/field/events/events_galactic_hq_4f.json similarity index 100% rename from res/field/events/events_0296.json rename to res/field/events/events_galactic_hq_4f.json diff --git a/res/field/events/events_0297.json b/res/field/events/events_galactic_hq_b1f.json similarity index 100% rename from res/field/events/events_0297.json rename to res/field/events/events_galactic_hq_b1f.json diff --git a/res/field/events/events_0298.json b/res/field/events/events_galactic_hq_b2f.json similarity index 100% rename from res/field/events/events_0298.json rename to res/field/events/events_galactic_hq_b2f.json diff --git a/res/field/events/events_0471.json b/res/field/events/events_galactic_hq_control_room.json similarity index 100% rename from res/field/events/events_0471.json rename to res/field/events/events_galactic_hq_control_room.json diff --git a/res/field/events/events_0522.json b/res/field/events/events_galactic_hq_hall.json similarity index 100% rename from res/field/events/events_0522.json rename to res/field/events/events_galactic_hq_hall.json diff --git a/res/field/events/events_0474.json b/res/field/events/events_galactic_hq_laboratory.json similarity index 100% rename from res/field/events/events_0474.json rename to res/field/events/events_galactic_hq_laboratory.json diff --git a/res/field/events/events_0135.json b/res/field/events/events_game_corner.json similarity index 100% rename from res/field/events/events_0135.json rename to res/field/events/events_game_corner.json diff --git a/res/field/events/events_0338.json b/res/field/events/events_gate_between_eterna_city_route_206.json similarity index 100% rename from res/field/events/events_0338.json rename to res/field/events/events_gate_between_eterna_city_route_206.json diff --git a/res/field/events/events_0027.json b/res/field/events/events_global_terminal_1f.json similarity index 100% rename from res/field/events/events_0027.json rename to res/field/events/events_global_terminal_1f.json diff --git a/res/field/events/events_0520.json b/res/field/events/events_global_terminal_2f.json similarity index 100% rename from res/field/events/events_0520.json rename to res/field/events/events_global_terminal_2f.json diff --git a/res/field/events/events_0521.json b/res/field/events/events_global_terminal_3f.json similarity index 100% rename from res/field/events/events_0521.json rename to res/field/events/events_global_terminal_3f.json diff --git a/res/field/events/events_0363.json b/res/field/events/events_grand_lake_route_213_east_house.json similarity index 100% rename from res/field/events/events_0363.json rename to res/field/events/events_grand_lake_route_213_east_house.json diff --git a/res/field/events/events_0362.json b/res/field/events/events_grand_lake_route_213_lobby.json similarity index 100% rename from res/field/events/events_0362.json rename to res/field/events/events_grand_lake_route_213_lobby.json diff --git a/res/field/events/events_0365.json b/res/field/events/events_grand_lake_route_213_northeast_house.json similarity index 100% rename from res/field/events/events_0365.json rename to res/field/events/events_grand_lake_route_213_northeast_house.json diff --git a/res/field/events/events_0364.json b/res/field/events/events_grand_lake_route_213_northwest_house.json similarity index 100% rename from res/field/events/events_0364.json rename to res/field/events/events_grand_lake_route_213_northwest_house.json diff --git a/res/field/events/events_0324.json b/res/field/events/events_grand_lake_valor_lakefront_east_house.json similarity index 100% rename from res/field/events/events_0324.json rename to res/field/events/events_grand_lake_valor_lakefront_east_house.json diff --git a/res/field/events/events_0325.json b/res/field/events/events_grand_lake_valor_lakefront_west_house.json similarity index 100% rename from res/field/events/events_0325.json rename to res/field/events/events_grand_lake_valor_lakefront_west_house.json diff --git a/res/field/events/events_0481.json b/res/field/events/events_great_marsh_1.json similarity index 100% rename from res/field/events/events_0481.json rename to res/field/events/events_great_marsh_1.json diff --git a/res/field/events/events_0482.json b/res/field/events/events_great_marsh_2.json similarity index 100% rename from res/field/events/events_0482.json rename to res/field/events/events_great_marsh_2.json diff --git a/res/field/events/events_0483.json b/res/field/events/events_great_marsh_3.json similarity index 100% rename from res/field/events/events_0483.json rename to res/field/events/events_great_marsh_3.json diff --git a/res/field/events/events_0484.json b/res/field/events/events_great_marsh_4.json similarity index 100% rename from res/field/events/events_0484.json rename to res/field/events/events_great_marsh_4.json diff --git a/res/field/events/events_0485.json b/res/field/events/events_great_marsh_5.json similarity index 100% rename from res/field/events/events_0485.json rename to res/field/events/events_great_marsh_5.json diff --git a/res/field/events/events_0486.json b/res/field/events/events_great_marsh_6.json similarity index 100% rename from res/field/events/events_0486.json rename to res/field/events/events_great_marsh_6.json diff --git a/res/field/events/events_0487.json b/res/field/events/events_hall_of_origin.json similarity index 100% rename from res/field/events/events_0487.json rename to res/field/events/events_hall_of_origin.json diff --git a/res/field/events/events_0085.json b/res/field/events/events_hearthome_city.json similarity index 100% rename from res/field/events/events_0085.json rename to res/field/events/events_hearthome_city.json diff --git a/res/field/events/events_0092.json b/res/field/events/events_hearthome_city_dp_gym_elevator_room_1.json similarity index 100% rename from res/field/events/events_0092.json rename to res/field/events/events_hearthome_city_dp_gym_elevator_room_1.json diff --git a/res/field/events/events_0094.json b/res/field/events/events_hearthome_city_dp_gym_elevator_room_2.json similarity index 100% rename from res/field/events/events_0094.json rename to res/field/events/events_hearthome_city_dp_gym_elevator_room_2.json diff --git a/res/field/events/events_0099.json b/res/field/events/events_hearthome_city_dp_gym_leader_room.json similarity index 100% rename from res/field/events/events_0099.json rename to res/field/events/events_hearthome_city_dp_gym_leader_room.json diff --git a/res/field/events/events_0091.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_1.json similarity index 100% rename from res/field/events/events_0091.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_1.json diff --git a/res/field/events/events_0093.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_2.json similarity index 100% rename from res/field/events/events_0093.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_2.json diff --git a/res/field/events/events_0095.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_3.json similarity index 100% rename from res/field/events/events_0095.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_3.json diff --git a/res/field/events/events_0096.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_4.json similarity index 100% rename from res/field/events/events_0096.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_4.json diff --git a/res/field/events/events_0097.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_5.json similarity index 100% rename from res/field/events/events_0097.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_5.json diff --git a/res/field/events/events_0098.json b/res/field/events/events_hearthome_city_dp_gym_trainer_room_6.json similarity index 100% rename from res/field/events/events_0098.json rename to res/field/events/events_hearthome_city_dp_gym_trainer_room_6.json diff --git a/res/field/events/events_0107.json b/res/field/events/events_hearthome_city_east_gate_to_amity_square.json similarity index 100% rename from res/field/events/events_0107.json rename to res/field/events/events_hearthome_city_east_gate_to_amity_square.json diff --git a/res/field/events/events_0087.json b/res/field/events/events_hearthome_city_gym_entrance_room.json similarity index 100% rename from res/field/events/events_0087.json rename to res/field/events/events_hearthome_city_gym_entrance_room.json diff --git a/res/field/events/events_0090.json b/res/field/events/events_hearthome_city_gym_leader_room.json similarity index 100% rename from res/field/events/events_0090.json rename to res/field/events/events_hearthome_city_gym_leader_room.json diff --git a/res/field/events/events_0088.json b/res/field/events/events_hearthome_city_gym_trainer_room_1.json similarity index 100% rename from res/field/events/events_0088.json rename to res/field/events/events_hearthome_city_gym_trainer_room_1.json diff --git a/res/field/events/events_0089.json b/res/field/events/events_hearthome_city_gym_trainer_room_2.json similarity index 100% rename from res/field/events/events_0089.json rename to res/field/events/events_hearthome_city_gym_trainer_room_2.json diff --git a/res/field/events/events_0086.json b/res/field/events/events_hearthome_city_mart.json similarity index 100% rename from res/field/events/events_0086.json rename to res/field/events/events_hearthome_city_mart.json diff --git a/res/field/events/events_0111.json b/res/field/events/events_hearthome_city_northeast_house_1f.json similarity index 100% rename from res/field/events/events_0111.json rename to res/field/events/events_hearthome_city_northeast_house_1f.json diff --git a/res/field/events/events_0112.json b/res/field/events/events_hearthome_city_northeast_house_2f.json similarity index 100% rename from res/field/events/events_0112.json rename to res/field/events/events_hearthome_city_northeast_house_2f.json diff --git a/res/field/events/events_0104.json b/res/field/events/events_hearthome_city_northeast_house_elevator.json similarity index 100% rename from res/field/events/events_0104.json rename to res/field/events/events_hearthome_city_northeast_house_elevator.json diff --git a/res/field/events/events_0114.json b/res/field/events/events_hearthome_city_northwest_house.json similarity index 100% rename from res/field/events/events_0114.json rename to res/field/events/events_hearthome_city_northwest_house.json diff --git a/res/field/events/events_0100.json b/res/field/events/events_hearthome_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0100.json rename to res/field/events/events_hearthome_city_pokecenter_1f.json diff --git a/res/field/events/events_0101.json b/res/field/events/events_hearthome_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0101.json rename to res/field/events/events_hearthome_city_pokecenter_2f.json diff --git a/res/field/events/events_0455.json b/res/field/events/events_hearthome_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0455.json rename to res/field/events/events_hearthome_city_pokecenter_b1f.json diff --git a/res/field/events/events_0105.json b/res/field/events/events_hearthome_city_pokemon_fan_club.json similarity index 100% rename from res/field/events/events_0105.json rename to res/field/events/events_hearthome_city_pokemon_fan_club.json diff --git a/res/field/events/events_0102.json b/res/field/events/events_hearthome_city_southeast_house_1f.json similarity index 100% rename from res/field/events/events_0102.json rename to res/field/events/events_hearthome_city_southeast_house_1f.json diff --git a/res/field/events/events_0103.json b/res/field/events/events_hearthome_city_southeast_house_2f.json similarity index 100% rename from res/field/events/events_0103.json rename to res/field/events/events_hearthome_city_southeast_house_2f.json diff --git a/res/field/events/events_0113.json b/res/field/events/events_hearthome_city_southeast_house_elevator.json similarity index 100% rename from res/field/events/events_0113.json rename to res/field/events/events_hearthome_city_southeast_house_elevator.json diff --git a/res/field/events/events_0106.json b/res/field/events/events_hearthome_city_west_gate_to_amity_square.json similarity index 100% rename from res/field/events/events_0106.json rename to res/field/events/events_hearthome_city_west_gate_to_amity_square.json diff --git a/res/field/events/events_0531.json b/res/field/events/events_iceberg_ruins.json similarity index 100% rename from res/field/events/events_0531.json rename to res/field/events/events_iceberg_ruins.json diff --git a/res/field/events/events_0277.json b/res/field/events/events_iron_island.json similarity index 100% rename from res/field/events/events_0277.json rename to res/field/events/events_iron_island.json diff --git a/res/field/events/events_0278.json b/res/field/events/events_iron_island_1f.json similarity index 100% rename from res/field/events/events_0278.json rename to res/field/events/events_iron_island_1f.json diff --git a/res/field/events/events_0279.json b/res/field/events/events_iron_island_b1f_left_room.json similarity index 100% rename from res/field/events/events_0279.json rename to res/field/events/events_iron_island_b1f_left_room.json diff --git a/res/field/events/events_0280.json b/res/field/events/events_iron_island_b1f_right_room.json similarity index 100% rename from res/field/events/events_0280.json rename to res/field/events/events_iron_island_b1f_right_room.json diff --git a/res/field/events/events_0282.json b/res/field/events/events_iron_island_b2f_left_room.json similarity index 100% rename from res/field/events/events_0282.json rename to res/field/events/events_iron_island_b2f_left_room.json diff --git a/res/field/events/events_0281.json b/res/field/events/events_iron_island_b2f_right_room.json similarity index 100% rename from res/field/events/events_0281.json rename to res/field/events/events_iron_island_b2f_right_room.json diff --git a/res/field/events/events_0283.json b/res/field/events/events_iron_island_b3f.json similarity index 100% rename from res/field/events/events_0283.json rename to res/field/events/events_iron_island_b3f.json diff --git a/res/field/events/events_0490.json b/res/field/events/events_iron_island_house.json similarity index 100% rename from res/field/events/events_0490.json rename to res/field/events/events_iron_island_house.json diff --git a/res/field/events/events_0528.json b/res/field/events/events_iron_island_iron_ruins.json similarity index 100% rename from res/field/events/events_0528.json rename to res/field/events/events_iron_island_iron_ruins.json diff --git a/res/field/events/events_0529.json b/res/field/events/events_iron_ruins.json similarity index 100% rename from res/field/events/events_0529.json rename to res/field/events/events_iron_ruins.json diff --git a/res/field/events/events_0002.json b/res/field/events/events_jubilife_city.json similarity index 100% rename from res/field/events/events_0002.json rename to res/field/events/events_jubilife_city.json diff --git a/res/field/events/events_0023.json b/res/field/events/events_jubilife_city_condominiums_1f.json similarity index 100% rename from res/field/events/events_0023.json rename to res/field/events/events_jubilife_city_condominiums_1f.json diff --git a/res/field/events/events_0024.json b/res/field/events/events_jubilife_city_condominiums_2f.json similarity index 100% rename from res/field/events/events_0024.json rename to res/field/events/events_jubilife_city_condominiums_2f.json diff --git a/res/field/events/events_0025.json b/res/field/events/events_jubilife_city_condominiums_3f.json similarity index 100% rename from res/field/events/events_0025.json rename to res/field/events/events_jubilife_city_condominiums_3f.json diff --git a/res/field/events/events_0026.json b/res/field/events/events_jubilife_city_condominiums_4f.json similarity index 100% rename from res/field/events/events_0026.json rename to res/field/events/events_jubilife_city_condominiums_4f.json diff --git a/res/field/events/events_0003.json b/res/field/events/events_jubilife_city_mart.json similarity index 100% rename from res/field/events/events_0003.json rename to res/field/events/events_jubilife_city_mart.json diff --git a/res/field/events/events_0005.json b/res/field/events/events_jubilife_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0005.json rename to res/field/events/events_jubilife_city_pokecenter_1f.json diff --git a/res/field/events/events_0006.json b/res/field/events/events_jubilife_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0006.json rename to res/field/events/events_jubilife_city_pokecenter_2f.json diff --git a/res/field/events/events_0451.json b/res/field/events/events_jubilife_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0451.json rename to res/field/events/events_jubilife_city_pokecenter_b1f.json diff --git a/res/field/events/events_0018.json b/res/field/events/events_jubilife_city_south_house_1f.json similarity index 100% rename from res/field/events/events_0018.json rename to res/field/events/events_jubilife_city_south_house_1f.json diff --git a/res/field/events/events_0019.json b/res/field/events/events_jubilife_city_south_house_2f.json similarity index 100% rename from res/field/events/events_0019.json rename to res/field/events/events_jubilife_city_south_house_2f.json diff --git a/res/field/events/events_0020.json b/res/field/events/events_jubilife_city_south_house_3f.json similarity index 100% rename from res/field/events/events_0020.json rename to res/field/events/events_jubilife_city_south_house_3f.json diff --git a/res/field/events/events_0021.json b/res/field/events/events_jubilife_city_south_house_4f.json similarity index 100% rename from res/field/events/events_0021.json rename to res/field/events/events_jubilife_city_south_house_4f.json diff --git a/res/field/events/events_0029.json b/res/field/events/events_jubilife_city_southwest_house_1f.json similarity index 100% rename from res/field/events/events_0029.json rename to res/field/events/events_jubilife_city_southwest_house_1f.json diff --git a/res/field/events/events_0493.json b/res/field/events/events_jubilife_city_southwest_house_2f.json similarity index 100% rename from res/field/events/events_0493.json rename to res/field/events/events_jubilife_city_southwest_house_2f.json diff --git a/res/field/events/events_0004.json b/res/field/events/events_jubilife_city_unknown_house_1.json similarity index 100% rename from res/field/events/events_0004.json rename to res/field/events/events_jubilife_city_unknown_house_1.json diff --git a/res/field/events/events_0022.json b/res/field/events/events_jubilife_city_unknown_house_2.json similarity index 100% rename from res/field/events/events_0022.json rename to res/field/events/events_jubilife_city_unknown_house_2.json diff --git a/res/field/events/events_0030.json b/res/field/events/events_jubilife_city_unknown_house_3.json similarity index 100% rename from res/field/events/events_0030.json rename to res/field/events/events_jubilife_city_unknown_house_3.json diff --git a/res/field/events/events_0031.json b/res/field/events/events_jubilife_city_unknown_house_4.json similarity index 100% rename from res/field/events/events_0031.json rename to res/field/events/events_jubilife_city_unknown_house_4.json diff --git a/res/field/events/events_0010.json b/res/field/events/events_jubilife_tv_1f.json similarity index 100% rename from res/field/events/events_0010.json rename to res/field/events/events_jubilife_tv_1f.json diff --git a/res/field/events/events_0011.json b/res/field/events/events_jubilife_tv_2f.json similarity index 100% rename from res/field/events/events_0011.json rename to res/field/events/events_jubilife_tv_2f.json diff --git a/res/field/events/events_0014.json b/res/field/events/events_jubilife_tv_2f_gallery.json similarity index 100% rename from res/field/events/events_0014.json rename to res/field/events/events_jubilife_tv_2f_gallery.json diff --git a/res/field/events/events_0012.json b/res/field/events/events_jubilife_tv_3f.json similarity index 100% rename from res/field/events/events_0012.json rename to res/field/events/events_jubilife_tv_3f.json diff --git a/res/field/events/events_0015.json b/res/field/events/events_jubilife_tv_3f_global_ranking_room.json similarity index 100% rename from res/field/events/events_0015.json rename to res/field/events/events_jubilife_tv_3f_global_ranking_room.json diff --git a/res/field/events/events_0016.json b/res/field/events/events_jubilife_tv_3f_group_ranking_room.json similarity index 100% rename from res/field/events/events_0016.json rename to res/field/events/events_jubilife_tv_3f_group_ranking_room.json diff --git a/res/field/events/events_0013.json b/res/field/events/events_jubilife_tv_4f.json similarity index 100% rename from res/field/events/events_0013.json rename to res/field/events/events_jubilife_tv_4f.json diff --git a/res/field/events/events_0017.json b/res/field/events/events_jubilife_tv_elevator.json similarity index 100% rename from res/field/events/events_0017.json rename to res/field/events/events_jubilife_tv_elevator.json diff --git a/res/field/events/events_0306.json b/res/field/events/events_lake_acuity.json similarity index 100% rename from res/field/events/events_0306.json rename to res/field/events/events_lake_acuity.json diff --git a/res/field/events/events_0305.json b/res/field/events/events_lake_acuity_low_water.json similarity index 100% rename from res/field/events/events_0305.json rename to res/field/events/events_lake_acuity_low_water.json diff --git a/res/field/events/events_0303.json b/res/field/events/events_lake_valor.json similarity index 100% rename from res/field/events/events_0303.json rename to res/field/events/events_lake_valor.json diff --git a/res/field/events/events_0302.json b/res/field/events/events_lake_valor_drained.json similarity index 100% rename from res/field/events/events_0302.json rename to res/field/events/events_lake_valor_drained.json diff --git a/res/field/events/events_0300.json b/res/field/events/events_lake_verity.json similarity index 100% rename from res/field/events/events_0300.json rename to res/field/events/events_lake_verity.json diff --git a/res/field/events/events_0299.json b/res/field/events/events_lake_verity_low_water.json similarity index 100% rename from res/field/events/events_0299.json rename to res/field/events/events_lake_verity_low_water.json diff --git a/res/field/events/events_0489.json b/res/field/events/events_maniac_tunnel.json similarity index 100% rename from res/field/events/events_0489.json rename to res/field/events/events_maniac_tunnel.json diff --git a/res/field/events/events_0058.json b/res/field/events/events_mining_museum.json similarity index 100% rename from res/field/events/events_0058.json rename to res/field/events/events_mining_museum.json diff --git a/res/field/events/events_0215.json b/res/field/events/events_mt_coronet_1f_north_room_1.json similarity index 100% rename from res/field/events/events_0215.json rename to res/field/events/events_mt_coronet_1f_north_room_1.json diff --git a/res/field/events/events_0214.json b/res/field/events/events_mt_coronet_1f_north_room_2.json similarity index 100% rename from res/field/events/events_0214.json rename to res/field/events/events_mt_coronet_1f_north_room_2.json diff --git a/res/field/events/events_0204.json b/res/field/events/events_mt_coronet_1f_south.json similarity index 100% rename from res/field/events/events_0204.json rename to res/field/events/events_mt_coronet_1f_south.json diff --git a/res/field/events/events_0213.json b/res/field/events/events_mt_coronet_1f_tunnel_room.json similarity index 100% rename from res/field/events/events_0213.json rename to res/field/events/events_mt_coronet_1f_tunnel_room.json diff --git a/res/field/events/events_0205.json b/res/field/events/events_mt_coronet_2f.json similarity index 100% rename from res/field/events/events_0205.json rename to res/field/events/events_mt_coronet_2f.json diff --git a/res/field/events/events_0206.json b/res/field/events/events_mt_coronet_3f.json similarity index 100% rename from res/field/events/events_0206.json rename to res/field/events/events_mt_coronet_3f.json diff --git a/res/field/events/events_0210.json b/res/field/events/events_mt_coronet_4f_room_3.json similarity index 100% rename from res/field/events/events_0210.json rename to res/field/events/events_mt_coronet_4f_room_3.json diff --git a/res/field/events/events_0209.json b/res/field/events/events_mt_coronet_4f_rooms_1_and_2.json similarity index 100% rename from res/field/events/events_0209.json rename to res/field/events/events_mt_coronet_4f_rooms_1_and_2.json diff --git a/res/field/events/events_0211.json b/res/field/events/events_mt_coronet_5f.json similarity index 100% rename from res/field/events/events_0211.json rename to res/field/events/events_mt_coronet_5f.json diff --git a/res/field/events/events_0212.json b/res/field/events/events_mt_coronet_6f.json similarity index 100% rename from res/field/events/events_0212.json rename to res/field/events/events_mt_coronet_6f.json diff --git a/res/field/events/events_0216.json b/res/field/events/events_mt_coronet_b1f.json similarity index 100% rename from res/field/events/events_0216.json rename to res/field/events/events_mt_coronet_b1f.json diff --git a/res/field/events/events_0530.json b/res/field/events/events_mt_coronet_iceberg_ruins.json similarity index 100% rename from res/field/events/events_0530.json rename to res/field/events/events_mt_coronet_iceberg_ruins.json diff --git a/res/field/events/events_0207.json b/res/field/events/events_mt_coronet_outside_north.json similarity index 100% rename from res/field/events/events_0207.json rename to res/field/events/events_mt_coronet_outside_north.json diff --git a/res/field/events/events_0208.json b/res/field/events/events_mt_coronet_outside_south.json similarity index 100% rename from res/field/events/events_0208.json rename to res/field/events/events_mt_coronet_outside_south.json diff --git a/res/field/events/events_0308.json b/res/field/events/events_newmoon_island.json similarity index 100% rename from res/field/events/events_0308.json rename to res/field/events/events_newmoon_island.json diff --git a/res/field/events/events_0309.json b/res/field/events/events_newmoon_island_forest.json similarity index 100% rename from res/field/events/events_0309.json rename to res/field/events/events_newmoon_island_forest.json diff --git a/res/field/events/events_0284.json b/res/field/events/events_old_chateau.json similarity index 100% rename from res/field/events/events_0284.json rename to res/field/events/events_old_chateau.json diff --git a/res/field/events/events_0292.json b/res/field/events/events_old_chateau_back_east_room.json similarity index 100% rename from res/field/events/events_0292.json rename to res/field/events/events_old_chateau_back_east_room.json diff --git a/res/field/events/events_0291.json b/res/field/events/events_old_chateau_back_middle_east_room.json similarity index 100% rename from res/field/events/events_0291.json rename to res/field/events/events_old_chateau_back_middle_east_room.json diff --git a/res/field/events/events_0290.json b/res/field/events/events_old_chateau_back_middle_room.json similarity index 100% rename from res/field/events/events_0290.json rename to res/field/events/events_old_chateau_back_middle_room.json diff --git a/res/field/events/events_0289.json b/res/field/events/events_old_chateau_back_middle_west_room.json similarity index 100% rename from res/field/events/events_0289.json rename to res/field/events/events_old_chateau_back_middle_west_room.json diff --git a/res/field/events/events_0288.json b/res/field/events/events_old_chateau_back_west_room.json similarity index 100% rename from res/field/events/events_0288.json rename to res/field/events/events_old_chateau_back_west_room.json diff --git a/res/field/events/events_0287.json b/res/field/events/events_old_chateau_corridor.json similarity index 100% rename from res/field/events/events_0287.json rename to res/field/events/events_old_chateau_corridor.json diff --git a/res/field/events/events_0285.json b/res/field/events/events_old_chateau_dining_area.json similarity index 100% rename from res/field/events/events_0285.json rename to res/field/events/events_old_chateau_dining_area.json diff --git a/res/field/events/events_0286.json b/res/field/events/events_old_chateau_side_rooms.json similarity index 100% rename from res/field/events/events_0286.json rename to res/field/events/events_old_chateau_side_rooms.json diff --git a/res/field/events/events_0044.json b/res/field/events/events_oreburgh_city.json similarity index 100% rename from res/field/events/events_0044.json rename to res/field/events/events_oreburgh_city.json diff --git a/res/field/events/events_0060.json b/res/field/events/events_oreburgh_city_east_house_1f.json similarity index 100% rename from res/field/events/events_0060.json rename to res/field/events/events_oreburgh_city_east_house_1f.json diff --git a/res/field/events/events_0061.json b/res/field/events/events_oreburgh_city_east_house_2f.json similarity index 100% rename from res/field/events/events_0061.json rename to res/field/events/events_oreburgh_city_east_house_2f.json diff --git a/res/field/events/events_0062.json b/res/field/events/events_oreburgh_city_east_house_3f.json similarity index 100% rename from res/field/events/events_0062.json rename to res/field/events/events_oreburgh_city_east_house_3f.json diff --git a/res/field/events/events_0046.json b/res/field/events/events_oreburgh_city_gym.json similarity index 100% rename from res/field/events/events_0046.json rename to res/field/events/events_oreburgh_city_gym.json diff --git a/res/field/events/events_0045.json b/res/field/events/events_oreburgh_city_mart.json similarity index 100% rename from res/field/events/events_0045.json rename to res/field/events/events_oreburgh_city_mart.json diff --git a/res/field/events/events_0057.json b/res/field/events/events_oreburgh_city_middle_house.json similarity index 100% rename from res/field/events/events_0057.json rename to res/field/events/events_oreburgh_city_middle_house.json diff --git a/res/field/events/events_0053.json b/res/field/events/events_oreburgh_city_north_house_1f.json similarity index 100% rename from res/field/events/events_0053.json rename to res/field/events/events_oreburgh_city_north_house_1f.json diff --git a/res/field/events/events_0054.json b/res/field/events/events_oreburgh_city_north_house_2f.json similarity index 100% rename from res/field/events/events_0054.json rename to res/field/events/events_oreburgh_city_north_house_2f.json diff --git a/res/field/events/events_0055.json b/res/field/events/events_oreburgh_city_north_house_3f.json similarity index 100% rename from res/field/events/events_0055.json rename to res/field/events/events_oreburgh_city_north_house_3f.json diff --git a/res/field/events/events_0056.json b/res/field/events/events_oreburgh_city_north_house_4f.json similarity index 100% rename from res/field/events/events_0056.json rename to res/field/events/events_oreburgh_city_north_house_4f.json diff --git a/res/field/events/events_0049.json b/res/field/events/events_oreburgh_city_northwest_house_1f.json similarity index 100% rename from res/field/events/events_0049.json rename to res/field/events/events_oreburgh_city_northwest_house_1f.json diff --git a/res/field/events/events_0050.json b/res/field/events/events_oreburgh_city_northwest_house_2f.json similarity index 100% rename from res/field/events/events_0050.json rename to res/field/events/events_oreburgh_city_northwest_house_2f.json diff --git a/res/field/events/events_0051.json b/res/field/events/events_oreburgh_city_northwest_house_3f.json similarity index 100% rename from res/field/events/events_0051.json rename to res/field/events/events_oreburgh_city_northwest_house_3f.json diff --git a/res/field/events/events_0052.json b/res/field/events/events_oreburgh_city_northwest_house_4f.json similarity index 100% rename from res/field/events/events_0052.json rename to res/field/events/events_oreburgh_city_northwest_house_4f.json diff --git a/res/field/events/events_0047.json b/res/field/events/events_oreburgh_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0047.json rename to res/field/events/events_oreburgh_city_pokecenter_1f.json diff --git a/res/field/events/events_0048.json b/res/field/events/events_oreburgh_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0048.json rename to res/field/events/events_oreburgh_city_pokecenter_2f.json diff --git a/res/field/events/events_0453.json b/res/field/events/events_oreburgh_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0453.json rename to res/field/events/events_oreburgh_city_pokecenter_b1f.json diff --git a/res/field/events/events_0063.json b/res/field/events/events_oreburgh_city_south_house.json similarity index 100% rename from res/field/events/events_0063.json rename to res/field/events/events_oreburgh_city_south_house.json diff --git a/res/field/events/events_0059.json b/res/field/events/events_oreburgh_city_west_house.json similarity index 100% rename from res/field/events/events_0059.json rename to res/field/events/events_oreburgh_city_west_house.json diff --git a/res/field/events/events_0251.json b/res/field/events/events_oreburgh_gate_1f.json similarity index 100% rename from res/field/events/events_0251.json rename to res/field/events/events_oreburgh_gate_1f.json diff --git a/res/field/events/events_0252.json b/res/field/events/events_oreburgh_gate_b1f.json similarity index 100% rename from res/field/events/events_0252.json rename to res/field/events/events_oreburgh_gate_b1f.json diff --git a/res/field/events/events_0196.json b/res/field/events/events_oreburgh_mine_b1f.json similarity index 100% rename from res/field/events/events_0196.json rename to res/field/events/events_oreburgh_mine_b1f.json diff --git a/res/field/events/events_0197.json b/res/field/events/events_oreburgh_mine_b2f.json similarity index 100% rename from res/field/events/events_0197.json rename to res/field/events/events_oreburgh_mine_b2f.json diff --git a/res/field/events/events_0245.json b/res/field/events/events_pal_park.json similarity index 100% rename from res/field/events/events_0245.json rename to res/field/events/events_pal_park.json diff --git a/res/field/events/events_0379.json b/res/field/events/events_pal_park_lobby.json similarity index 100% rename from res/field/events/events_0379.json rename to res/field/events/events_pal_park_lobby.json diff --git a/res/field/events/events_0119.json b/res/field/events/events_pastoria_city.json similarity index 100% rename from res/field/events/events_0119.json rename to res/field/events/events_pastoria_city.json diff --git a/res/field/events/events_0195.json b/res/field/events/events_pastoria_city_dp_great_marsh.json similarity index 100% rename from res/field/events/events_0195.json rename to res/field/events/events_pastoria_city_dp_great_marsh.json diff --git a/res/field/events/events_0128.json b/res/field/events/events_pastoria_city_east_house.json similarity index 100% rename from res/field/events/events_0128.json rename to res/field/events/events_pastoria_city_east_house.json diff --git a/res/field/events/events_0121.json b/res/field/events/events_pastoria_city_gym.json similarity index 100% rename from res/field/events/events_0121.json rename to res/field/events/events_pastoria_city_gym.json diff --git a/res/field/events/events_0120.json b/res/field/events/events_pastoria_city_mart.json similarity index 100% rename from res/field/events/events_0120.json rename to res/field/events/events_pastoria_city_mart.json diff --git a/res/field/events/events_0127.json b/res/field/events/events_pastoria_city_middle_house.json similarity index 100% rename from res/field/events/events_0127.json rename to res/field/events/events_pastoria_city_middle_house.json diff --git a/res/field/events/events_0129.json b/res/field/events/events_pastoria_city_north_house.json similarity index 100% rename from res/field/events/events_0129.json rename to res/field/events/events_pastoria_city_north_house.json diff --git a/res/field/events/events_0130.json b/res/field/events/events_pastoria_city_northeast_house.json similarity index 100% rename from res/field/events/events_0130.json rename to res/field/events/events_pastoria_city_northeast_house.json diff --git a/res/field/events/events_0124.json b/res/field/events/events_pastoria_city_observatory_gate_1f.json similarity index 100% rename from res/field/events/events_0124.json rename to res/field/events/events_pastoria_city_observatory_gate_1f.json diff --git a/res/field/events/events_0125.json b/res/field/events/events_pastoria_city_observatory_gate_2f.json similarity index 100% rename from res/field/events/events_0125.json rename to res/field/events/events_pastoria_city_observatory_gate_2f.json diff --git a/res/field/events/events_0122.json b/res/field/events/events_pastoria_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0122.json rename to res/field/events/events_pastoria_city_pokecenter_1f.json diff --git a/res/field/events/events_0123.json b/res/field/events/events_pastoria_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0123.json rename to res/field/events/events_pastoria_city_pokecenter_2f.json diff --git a/res/field/events/events_0456.json b/res/field/events/events_pastoria_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0456.json rename to res/field/events/events_pastoria_city_pokecenter_b1f.json diff --git a/res/field/events/events_0126.json b/res/field/events/events_pastoria_city_southwest_house.json similarity index 100% rename from res/field/events/events_0126.json rename to res/field/events/events_pastoria_city_southwest_house.json diff --git a/res/field/events/events_0115.json b/res/field/events/events_poffin_house.json similarity index 100% rename from res/field/events/events_0115.json rename to res/field/events/events_poffin_house.json diff --git a/res/field/events/events_0416.json b/res/field/events/events_pokemon_day_care.json similarity index 100% rename from res/field/events/events_0416.json rename to res/field/events/events_pokemon_day_care.json diff --git a/res/field/events/events_0171.json b/res/field/events/events_pokemon_league.json similarity index 100% rename from res/field/events/events_0171.json rename to res/field/events/events_pokemon_league.json diff --git a/res/field/events/events_0176.json b/res/field/events/events_pokemon_league_aaron_room.json similarity index 100% rename from res/field/events/events_0176.json rename to res/field/events/events_pokemon_league_aaron_room.json diff --git a/res/field/events/events_0178.json b/res/field/events/events_pokemon_league_bertha_room.json similarity index 100% rename from res/field/events/events_0178.json rename to res/field/events/events_pokemon_league_bertha_room.json diff --git a/res/field/events/events_0184.json b/res/field/events/events_pokemon_league_champion_room.json similarity index 100% rename from res/field/events/events_0184.json rename to res/field/events/events_pokemon_league_champion_room.json diff --git a/res/field/events/events_0175.json b/res/field/events/events_pokemon_league_elevator_to_aaron_room.json similarity index 100% rename from res/field/events/events_0175.json rename to res/field/events/events_pokemon_league_elevator_to_aaron_room.json diff --git a/res/field/events/events_0177.json b/res/field/events/events_pokemon_league_elevator_to_bertha_room.json similarity index 100% rename from res/field/events/events_0177.json rename to res/field/events/events_pokemon_league_elevator_to_bertha_room.json diff --git a/res/field/events/events_0183.json b/res/field/events/events_pokemon_league_elevator_to_champion_room.json similarity index 100% rename from res/field/events/events_0183.json rename to res/field/events/events_pokemon_league_elevator_to_champion_room.json diff --git a/res/field/events/events_0179.json b/res/field/events/events_pokemon_league_elevator_to_flint_room.json similarity index 100% rename from res/field/events/events_0179.json rename to res/field/events/events_pokemon_league_elevator_to_flint_room.json diff --git a/res/field/events/events_0185.json b/res/field/events/events_pokemon_league_elevator_to_hall_of_fame.json similarity index 100% rename from res/field/events/events_0185.json rename to res/field/events/events_pokemon_league_elevator_to_hall_of_fame.json diff --git a/res/field/events/events_0181.json b/res/field/events/events_pokemon_league_elevator_to_lucian_room.json similarity index 100% rename from res/field/events/events_0181.json rename to res/field/events/events_pokemon_league_elevator_to_lucian_room.json diff --git a/res/field/events/events_0180.json b/res/field/events/events_pokemon_league_flint_room.json similarity index 100% rename from res/field/events/events_0180.json rename to res/field/events/events_pokemon_league_flint_room.json diff --git a/res/field/events/events_0186.json b/res/field/events/events_pokemon_league_hall_of_fame.json similarity index 100% rename from res/field/events/events_0186.json rename to res/field/events/events_pokemon_league_hall_of_fame.json diff --git a/res/field/events/events_0182.json b/res/field/events/events_pokemon_league_lucian_room.json similarity index 100% rename from res/field/events/events_0182.json rename to res/field/events/events_pokemon_league_lucian_room.json diff --git a/res/field/events/events_0174.json b/res/field/events/events_pokemon_league_north_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0174.json rename to res/field/events/events_pokemon_league_north_pokecenter_1f.json diff --git a/res/field/events/events_0472.json b/res/field/events/events_pokemon_league_north_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0472.json rename to res/field/events/events_pokemon_league_north_pokecenter_2f.json diff --git a/res/field/events/events_0473.json b/res/field/events/events_pokemon_league_north_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0473.json rename to res/field/events/events_pokemon_league_north_pokecenter_b1f.json diff --git a/res/field/events/events_0172.json b/res/field/events/events_pokemon_league_south_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0172.json rename to res/field/events/events_pokemon_league_south_pokecenter_1f.json diff --git a/res/field/events/events_0173.json b/res/field/events/events_pokemon_league_south_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0173.json rename to res/field/events/events_pokemon_league_south_pokecenter_2f.json diff --git a/res/field/events/events_0460.json b/res/field/events/events_pokemon_league_south_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0460.json rename to res/field/events/events_pokemon_league_south_pokecenter_b1f.json diff --git a/res/field/events/events_0354.json b/res/field/events/events_pokemon_mansion.json similarity index 100% rename from res/field/events/events_0354.json rename to res/field/events/events_pokemon_mansion.json diff --git a/res/field/events/events_0355.json b/res/field/events/events_pokemon_mansion_maids_room.json similarity index 100% rename from res/field/events/events_0355.json rename to res/field/events/events_pokemon_mansion_maids_room.json diff --git a/res/field/events/events_0356.json b/res/field/events/events_pokemon_mansion_office.json similarity index 100% rename from res/field/events/events_0356.json rename to res/field/events/events_pokemon_mansion_office.json diff --git a/res/field/events/events_0007.json b/res/field/events/events_poketch_co_1f.json similarity index 100% rename from res/field/events/events_0007.json rename to res/field/events/events_poketch_co_1f.json diff --git a/res/field/events/events_0008.json b/res/field/events/events_poketch_co_2f.json similarity index 100% rename from res/field/events/events_0008.json rename to res/field/events/events_poketch_co_2f.json diff --git a/res/field/events/events_0009.json b/res/field/events/events_poketch_co_3f.json similarity index 100% rename from res/field/events/events_0009.json rename to res/field/events/events_poketch_co_3f.json diff --git a/res/field/events/events_0247.json b/res/field/events/events_ravaged_path.json similarity index 100% rename from res/field/events/events_0247.json rename to res/field/events/events_ravaged_path.json diff --git a/res/field/events/events_0436.json b/res/field/events/events_resort_area.json similarity index 100% rename from res/field/events/events_0436.json rename to res/field/events/events_resort_area.json diff --git a/res/field/events/events_0444.json b/res/field/events/events_resort_area_house.json similarity index 100% rename from res/field/events/events_0444.json rename to res/field/events/events_resort_area_house.json diff --git a/res/field/events/events_0437.json b/res/field/events/events_resort_area_mart.json similarity index 100% rename from res/field/events/events_0437.json rename to res/field/events/events_resort_area_mart.json diff --git a/res/field/events/events_0438.json b/res/field/events/events_resort_area_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0438.json rename to res/field/events/events_resort_area_pokecenter_1f.json diff --git a/res/field/events/events_0439.json b/res/field/events/events_resort_area_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0439.json rename to res/field/events/events_resort_area_pokecenter_2f.json diff --git a/res/field/events/events_0467.json b/res/field/events/events_resort_area_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0467.json rename to res/field/events/events_resort_area_pokecenter_b1f.json diff --git a/res/field/events/events_0440.json b/res/field/events/events_resort_area_ribbon_syndicate_1f.json similarity index 100% rename from res/field/events/events_0440.json rename to res/field/events/events_resort_area_ribbon_syndicate_1f.json diff --git a/res/field/events/events_0441.json b/res/field/events/events_resort_area_ribbon_syndicate_2f.json similarity index 100% rename from res/field/events/events_0441.json rename to res/field/events/events_resort_area_ribbon_syndicate_2f.json diff --git a/res/field/events/events_0141.json b/res/field/events/events_resort_area_ribbon_syndicate_elevator.json similarity index 100% rename from res/field/events/events_0141.json rename to res/field/events/events_resort_area_ribbon_syndicate_elevator.json diff --git a/res/field/events/events_0323.json b/res/field/events/events_restaurant.json similarity index 100% rename from res/field/events/events_0323.json rename to res/field/events/events_restaurant.json diff --git a/res/field/events/events_0533.json b/res/field/events/events_rock_peak_ruins.json similarity index 100% rename from res/field/events/events_0533.json rename to res/field/events/events_rock_peak_ruins.json diff --git a/res/field/events/events_0523.json b/res/field/events/events_rotoms_room.json similarity index 100% rename from res/field/events/events_0523.json rename to res/field/events/events_rotoms_room.json diff --git a/res/field/events/events_0328.json b/res/field/events/events_route_201.json similarity index 100% rename from res/field/events/events_0328.json rename to res/field/events/events_route_201.json diff --git a/res/field/events/events_0329.json b/res/field/events/events_route_202.json similarity index 100% rename from res/field/events/events_0329.json rename to res/field/events/events_route_202.json diff --git a/res/field/events/events_0330.json b/res/field/events/events_route_203.json similarity index 100% rename from res/field/events/events_0330.json rename to res/field/events/events_route_203.json diff --git a/res/field/events/events_0332.json b/res/field/events/events_route_204_north.json similarity index 100% rename from res/field/events/events_0332.json rename to res/field/events/events_route_204_north.json diff --git a/res/field/events/events_0331.json b/res/field/events/events_route_204_south.json similarity index 100% rename from res/field/events/events_0331.json rename to res/field/events/events_route_204_south.json diff --git a/res/field/events/events_0334.json b/res/field/events/events_route_205_house.json similarity index 100% rename from res/field/events/events_0334.json rename to res/field/events/events_route_205_house.json diff --git a/res/field/events/events_0335.json b/res/field/events/events_route_205_north.json similarity index 100% rename from res/field/events/events_0335.json rename to res/field/events/events_route_205_north.json diff --git a/res/field/events/events_0333.json b/res/field/events/events_route_205_south.json similarity index 100% rename from res/field/events/events_0333.json rename to res/field/events/events_route_205_south.json diff --git a/res/field/events/events_0336.json b/res/field/events/events_route_206.json similarity index 100% rename from res/field/events/events_0336.json rename to res/field/events/events_route_206.json diff --git a/res/field/events/events_0079.json b/res/field/events/events_route_206_cycling_road_north_gate.json similarity index 100% rename from res/field/events/events_0079.json rename to res/field/events/events_route_206_cycling_road_north_gate.json diff --git a/res/field/events/events_0337.json b/res/field/events/events_route_206_cycling_road_south_gate.json similarity index 100% rename from res/field/events/events_0337.json rename to res/field/events/events_route_206_cycling_road_south_gate.json diff --git a/res/field/events/events_0339.json b/res/field/events/events_route_207.json similarity index 100% rename from res/field/events/events_0339.json rename to res/field/events/events_route_207.json diff --git a/res/field/events/events_0340.json b/res/field/events/events_route_208.json similarity index 100% rename from res/field/events/events_0340.json rename to res/field/events/events_route_208.json diff --git a/res/field/events/events_0108.json b/res/field/events/events_route_208_gate_to_hearthome_city.json similarity index 100% rename from res/field/events/events_0108.json rename to res/field/events/events_route_208_gate_to_hearthome_city.json diff --git a/res/field/events/events_0341.json b/res/field/events/events_route_208_house.json similarity index 100% rename from res/field/events/events_0341.json rename to res/field/events/events_route_208_house.json diff --git a/res/field/events/events_0342.json b/res/field/events/events_route_209.json similarity index 100% rename from res/field/events/events_0342.json rename to res/field/events/events_route_209.json diff --git a/res/field/events/events_0109.json b/res/field/events/events_route_209_gate_to_hearthome_city.json similarity index 100% rename from res/field/events/events_0109.json rename to res/field/events/events_route_209_gate_to_hearthome_city.json diff --git a/res/field/events/events_0343.json b/res/field/events/events_route_209_lost_tower_1f.json similarity index 100% rename from res/field/events/events_0343.json rename to res/field/events/events_route_209_lost_tower_1f.json diff --git a/res/field/events/events_0344.json b/res/field/events/events_route_209_lost_tower_2f.json similarity index 100% rename from res/field/events/events_0344.json rename to res/field/events/events_route_209_lost_tower_2f.json diff --git a/res/field/events/events_0345.json b/res/field/events/events_route_209_lost_tower_3f.json similarity index 100% rename from res/field/events/events_0345.json rename to res/field/events/events_route_209_lost_tower_3f.json diff --git a/res/field/events/events_0346.json b/res/field/events/events_route_209_lost_tower_4f.json similarity index 100% rename from res/field/events/events_0346.json rename to res/field/events/events_route_209_lost_tower_4f.json diff --git a/res/field/events/events_0347.json b/res/field/events/events_route_209_lost_tower_5f.json similarity index 100% rename from res/field/events/events_0347.json rename to res/field/events/events_route_209_lost_tower_5f.json diff --git a/res/field/events/events_0350.json b/res/field/events/events_route_210_grandma_wilma_house.json similarity index 100% rename from res/field/events/events_0350.json rename to res/field/events/events_route_210_grandma_wilma_house.json diff --git a/res/field/events/events_0349.json b/res/field/events/events_route_210_north.json similarity index 100% rename from res/field/events/events_0349.json rename to res/field/events/events_route_210_north.json diff --git a/res/field/events/events_0348.json b/res/field/events/events_route_210_south.json similarity index 100% rename from res/field/events/events_0348.json rename to res/field/events/events_route_210_south.json diff --git a/res/field/events/events_0352.json b/res/field/events/events_route_211_east.json similarity index 100% rename from res/field/events/events_0352.json rename to res/field/events/events_route_211_east.json diff --git a/res/field/events/events_0351.json b/res/field/events/events_route_211_west.json similarity index 100% rename from res/field/events/events_0351.json rename to res/field/events/events_route_211_west.json diff --git a/res/field/events/events_0110.json b/res/field/events/events_route_212_gate_to_hearthome_city.json similarity index 100% rename from res/field/events/events_0110.json rename to res/field/events/events_route_212_gate_to_hearthome_city.json diff --git a/res/field/events/events_0358.json b/res/field/events/events_route_212_house.json similarity index 100% rename from res/field/events/events_0358.json rename to res/field/events/events_route_212_house.json diff --git a/res/field/events/events_0353.json b/res/field/events/events_route_212_north.json similarity index 100% rename from res/field/events/events_0353.json rename to res/field/events/events_route_212_north.json diff --git a/res/field/events/events_0357.json b/res/field/events/events_route_212_south.json similarity index 100% rename from res/field/events/events_0357.json rename to res/field/events/events_route_212_south.json diff --git a/res/field/events/events_0359.json b/res/field/events/events_route_213.json similarity index 100% rename from res/field/events/events_0359.json rename to res/field/events/events_route_213.json diff --git a/res/field/events/events_0360.json b/res/field/events/events_route_213_gate_to_pastoria_city.json similarity index 100% rename from res/field/events/events_0360.json rename to res/field/events/events_route_213_gate_to_pastoria_city.json diff --git a/res/field/events/events_0366.json b/res/field/events/events_route_214.json similarity index 100% rename from res/field/events/events_0366.json rename to res/field/events/events_route_214.json diff --git a/res/field/events/events_0367.json b/res/field/events/events_route_214_gate_to_veilstone_city.json similarity index 100% rename from res/field/events/events_0367.json rename to res/field/events/events_route_214_gate_to_veilstone_city.json diff --git a/res/field/events/events_0368.json b/res/field/events/events_route_215.json similarity index 100% rename from res/field/events/events_0368.json rename to res/field/events/events_route_215.json diff --git a/res/field/events/events_0148.json b/res/field/events/events_route_215_gate_to_veilstone_city.json similarity index 100% rename from res/field/events/events_0148.json rename to res/field/events/events_route_215_gate_to_veilstone_city.json diff --git a/res/field/events/events_0369.json b/res/field/events/events_route_216.json similarity index 100% rename from res/field/events/events_0369.json rename to res/field/events/events_route_216.json diff --git a/res/field/events/events_0370.json b/res/field/events/events_route_216_house.json similarity index 100% rename from res/field/events/events_0370.json rename to res/field/events/events_route_216_house.json diff --git a/res/field/events/events_0371.json b/res/field/events/events_route_217.json similarity index 100% rename from res/field/events/events_0371.json rename to res/field/events/events_route_217.json diff --git a/res/field/events/events_0373.json b/res/field/events/events_route_217_northeast_house.json similarity index 100% rename from res/field/events/events_0373.json rename to res/field/events/events_route_217_northeast_house.json diff --git a/res/field/events/events_0372.json b/res/field/events/events_route_217_west_house.json similarity index 100% rename from res/field/events/events_0372.json rename to res/field/events/events_route_217_west_house.json diff --git a/res/field/events/events_0374.json b/res/field/events/events_route_218.json similarity index 100% rename from res/field/events/events_0374.json rename to res/field/events/events_route_218.json diff --git a/res/field/events/events_0376.json b/res/field/events/events_route_218_gate_to_canalave_city.json similarity index 100% rename from res/field/events/events_0376.json rename to res/field/events/events_route_218_gate_to_canalave_city.json diff --git a/res/field/events/events_0375.json b/res/field/events/events_route_218_gate_to_jubilife_city.json similarity index 100% rename from res/field/events/events_0375.json rename to res/field/events/events_route_218_gate_to_jubilife_city.json diff --git a/res/field/events/events_0377.json b/res/field/events/events_route_219.json similarity index 100% rename from res/field/events/events_0377.json rename to res/field/events/events_route_219.json diff --git a/res/field/events/events_0446.json b/res/field/events/events_route_220.json similarity index 100% rename from res/field/events/events_0446.json rename to res/field/events/events_route_220.json diff --git a/res/field/events/events_0378.json b/res/field/events/events_route_221.json similarity index 100% rename from res/field/events/events_0378.json rename to res/field/events/events_route_221.json diff --git a/res/field/events/events_0380.json b/res/field/events/events_route_221_house.json similarity index 100% rename from res/field/events/events_0380.json rename to res/field/events/events_route_221_house.json diff --git a/res/field/events/events_0381.json b/res/field/events/events_route_222.json similarity index 100% rename from res/field/events/events_0381.json rename to res/field/events/events_route_222.json diff --git a/res/field/events/events_0383.json b/res/field/events/events_route_222_east_house.json similarity index 100% rename from res/field/events/events_0383.json rename to res/field/events/events_route_222_east_house.json diff --git a/res/field/events/events_0384.json b/res/field/events/events_route_222_gate_to_sunyshore_city.json similarity index 100% rename from res/field/events/events_0384.json rename to res/field/events/events_route_222_gate_to_sunyshore_city.json diff --git a/res/field/events/events_0382.json b/res/field/events/events_route_222_west_house.json similarity index 100% rename from res/field/events/events_0382.json rename to res/field/events/events_route_222_west_house.json diff --git a/res/field/events/events_0447.json b/res/field/events/events_route_223.json similarity index 100% rename from res/field/events/events_0447.json rename to res/field/events/events_route_223.json diff --git a/res/field/events/events_0385.json b/res/field/events/events_route_224.json similarity index 100% rename from res/field/events/events_0385.json rename to res/field/events/events_route_224.json diff --git a/res/field/events/events_0386.json b/res/field/events/events_route_225.json similarity index 100% rename from res/field/events/events_0386.json rename to res/field/events/events_route_225.json diff --git a/res/field/events/events_0192.json b/res/field/events/events_route_225_gate_to_fight_area.json similarity index 100% rename from res/field/events/events_0192.json rename to res/field/events/events_route_225_gate_to_fight_area.json diff --git a/res/field/events/events_0475.json b/res/field/events/events_route_225_house.json similarity index 100% rename from res/field/events/events_0475.json rename to res/field/events/events_route_225_house.json diff --git a/res/field/events/events_0448.json b/res/field/events/events_route_226.json similarity index 100% rename from res/field/events/events_0448.json rename to res/field/events/events_route_226.json diff --git a/res/field/events/events_0476.json b/res/field/events/events_route_226_house.json similarity index 100% rename from res/field/events/events_0476.json rename to res/field/events/events_route_226_house.json diff --git a/res/field/events/events_0387.json b/res/field/events/events_route_227.json similarity index 100% rename from res/field/events/events_0387.json rename to res/field/events/events_route_227.json diff --git a/res/field/events/events_0477.json b/res/field/events/events_route_227_house.json similarity index 100% rename from res/field/events/events_0477.json rename to res/field/events/events_route_227_house.json diff --git a/res/field/events/events_0388.json b/res/field/events/events_route_228.json similarity index 100% rename from res/field/events/events_0388.json rename to res/field/events/events_route_228.json diff --git a/res/field/events/events_0478.json b/res/field/events/events_route_228_gate_to_route_226.json similarity index 100% rename from res/field/events/events_0478.json rename to res/field/events/events_route_228_gate_to_route_226.json diff --git a/res/field/events/events_0479.json b/res/field/events/events_route_228_north_house.json similarity index 100% rename from res/field/events/events_0479.json rename to res/field/events/events_route_228_north_house.json diff --git a/res/field/events/events_0532.json b/res/field/events/events_route_228_rock_peak_ruins.json similarity index 100% rename from res/field/events/events_0532.json rename to res/field/events/events_route_228_rock_peak_ruins.json diff --git a/res/field/events/events_0480.json b/res/field/events/events_route_228_south_house.json similarity index 100% rename from res/field/events/events_0480.json rename to res/field/events/events_route_228_south_house.json diff --git a/res/field/events/events_0389.json b/res/field/events/events_route_229.json similarity index 100% rename from res/field/events/events_0389.json rename to res/field/events/events_route_229.json diff --git a/res/field/events/events_0449.json b/res/field/events/events_route_230.json similarity index 100% rename from res/field/events/events_0449.json rename to res/field/events/events_route_230.json diff --git a/res/field/events/events_0488.json b/res/field/events/events_ruin_maniac_cave_long.json similarity index 100% rename from res/field/events/events_0488.json rename to res/field/events/events_ruin_maniac_cave_long.json diff --git a/res/field/events/events_0275.json b/res/field/events/events_ruin_maniac_cave_short.json similarity index 100% rename from res/field/events/events_0275.json rename to res/field/events/events_ruin_maniac_cave_short.json diff --git a/res/field/events/events_0397.json b/res/field/events/events_sandgem_town.json similarity index 100% rename from res/field/events/events_0397.json rename to res/field/events/events_sandgem_town.json diff --git a/res/field/events/events_0402.json b/res/field/events/events_sandgem_town_counterpart_house_1f.json similarity index 100% rename from res/field/events/events_0402.json rename to res/field/events/events_sandgem_town_counterpart_house_1f.json diff --git a/res/field/events/events_0403.json b/res/field/events/events_sandgem_town_counterpart_house_2f.json similarity index 100% rename from res/field/events/events_0403.json rename to res/field/events/events_sandgem_town_counterpart_house_2f.json diff --git a/res/field/events/events_0404.json b/res/field/events/events_sandgem_town_house.json similarity index 100% rename from res/field/events/events_0404.json rename to res/field/events/events_sandgem_town_house.json diff --git a/res/field/events/events_0398.json b/res/field/events/events_sandgem_town_mart.json similarity index 100% rename from res/field/events/events_0398.json rename to res/field/events/events_sandgem_town_mart.json diff --git a/res/field/events/events_0399.json b/res/field/events/events_sandgem_town_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0399.json rename to res/field/events/events_sandgem_town_pokecenter_1f.json diff --git a/res/field/events/events_0400.json b/res/field/events/events_sandgem_town_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0400.json rename to res/field/events/events_sandgem_town_pokecenter_2f.json diff --git a/res/field/events/events_0462.json b/res/field/events/events_sandgem_town_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0462.json rename to res/field/events/events_sandgem_town_pokecenter_b1f.json diff --git a/res/field/events/events_0401.json b/res/field/events/events_sandgem_town_pokemon_research_lab.json similarity index 100% rename from res/field/events/events_0401.json rename to res/field/events/events_sandgem_town_pokemon_research_lab.json diff --git a/res/field/events/events_0219.json b/res/field/events/events_seabreak_path.json similarity index 100% rename from res/field/events/events_0219.json rename to res/field/events/events_seabreak_path.json diff --git a/res/field/events/events_0259.json b/res/field/events/events_sendoff_spring.json similarity index 100% rename from res/field/events/events_0259.json rename to res/field/events/events_sendoff_spring.json diff --git a/res/field/events/events_0164.json b/res/field/events/events_snowpoint_city.json similarity index 100% rename from res/field/events/events_0164.json rename to res/field/events/events_snowpoint_city.json diff --git a/res/field/events/events_0170.json b/res/field/events/events_snowpoint_city_east_house.json similarity index 100% rename from res/field/events/events_0170.json rename to res/field/events/events_snowpoint_city_east_house.json diff --git a/res/field/events/events_0166.json b/res/field/events/events_snowpoint_city_gym.json similarity index 100% rename from res/field/events/events_0166.json rename to res/field/events/events_snowpoint_city_gym.json diff --git a/res/field/events/events_0165.json b/res/field/events/events_snowpoint_city_mart.json similarity index 100% rename from res/field/events/events_0165.json rename to res/field/events/events_snowpoint_city_mart.json diff --git a/res/field/events/events_0167.json b/res/field/events/events_snowpoint_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0167.json rename to res/field/events/events_snowpoint_city_pokecenter_1f.json diff --git a/res/field/events/events_0168.json b/res/field/events/events_snowpoint_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0168.json rename to res/field/events/events_snowpoint_city_pokecenter_2f.json diff --git a/res/field/events/events_0459.json b/res/field/events/events_snowpoint_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0459.json rename to res/field/events/events_snowpoint_city_pokecenter_b1f.json diff --git a/res/field/events/events_0169.json b/res/field/events/events_snowpoint_city_west_house.json similarity index 100% rename from res/field/events/events_0169.json rename to res/field/events/events_snowpoint_city_west_house.json diff --git a/res/field/events/events_0267.json b/res/field/events/events_snowpoint_temple_1f.json similarity index 100% rename from res/field/events/events_0267.json rename to res/field/events/events_snowpoint_temple_1f.json diff --git a/res/field/events/events_0268.json b/res/field/events/events_snowpoint_temple_b1f.json similarity index 100% rename from res/field/events/events_0268.json rename to res/field/events/events_snowpoint_temple_b1f.json diff --git a/res/field/events/events_0269.json b/res/field/events/events_snowpoint_temple_b2f.json similarity index 100% rename from res/field/events/events_0269.json rename to res/field/events/events_snowpoint_temple_b2f.json diff --git a/res/field/events/events_0270.json b/res/field/events/events_snowpoint_temple_b3f.json similarity index 100% rename from res/field/events/events_0270.json rename to res/field/events/events_snowpoint_temple_b3f.json diff --git a/res/field/events/events_0271.json b/res/field/events/events_snowpoint_temple_b4f.json similarity index 100% rename from res/field/events/events_0271.json rename to res/field/events/events_snowpoint_temple_b4f.json diff --git a/res/field/events/events_0272.json b/res/field/events/events_snowpoint_temple_b5f.json similarity index 100% rename from res/field/events/events_0272.json rename to res/field/events/events_snowpoint_temple_b5f.json diff --git a/res/field/events/events_0220.json b/res/field/events/events_solaceon_ruins_maniac_tunnel_room.json similarity index 100% rename from res/field/events/events_0220.json rename to res/field/events/events_solaceon_ruins_maniac_tunnel_room.json diff --git a/res/field/events/events_0221.json b/res/field/events/events_solaceon_ruins_room_1.json similarity index 100% rename from res/field/events/events_0221.json rename to res/field/events/events_solaceon_ruins_room_1.json diff --git a/res/field/events/events_0223.json b/res/field/events/events_solaceon_ruins_room_1_northwest_dead_end.json similarity index 100% rename from res/field/events/events_0223.json rename to res/field/events/events_solaceon_ruins_room_1_northwest_dead_end.json diff --git a/res/field/events/events_0225.json b/res/field/events/events_solaceon_ruins_room_1_southeast_dead_end.json similarity index 100% rename from res/field/events/events_0225.json rename to res/field/events/events_solaceon_ruins_room_1_southeast_dead_end.json diff --git a/res/field/events/events_0224.json b/res/field/events/events_solaceon_ruins_room_2.json similarity index 100% rename from res/field/events/events_0224.json rename to res/field/events/events_solaceon_ruins_room_2.json diff --git a/res/field/events/events_0222.json b/res/field/events/events_solaceon_ruins_room_2_northeast_dead_end.json similarity index 100% rename from res/field/events/events_0222.json rename to res/field/events/events_solaceon_ruins_room_2_northeast_dead_end.json diff --git a/res/field/events/events_0227.json b/res/field/events/events_solaceon_ruins_room_2_southeast_dead_end.json similarity index 100% rename from res/field/events/events_0227.json rename to res/field/events/events_solaceon_ruins_room_2_southeast_dead_end.json diff --git a/res/field/events/events_0226.json b/res/field/events/events_solaceon_ruins_room_3.json similarity index 100% rename from res/field/events/events_0226.json rename to res/field/events/events_solaceon_ruins_room_3.json diff --git a/res/field/events/events_0230.json b/res/field/events/events_solaceon_ruins_room_3_northwest_dead_end.json similarity index 100% rename from res/field/events/events_0230.json rename to res/field/events/events_solaceon_ruins_room_3_northwest_dead_end.json diff --git a/res/field/events/events_0231.json b/res/field/events/events_solaceon_ruins_room_3_southwest_dead_end.json similarity index 100% rename from res/field/events/events_0231.json rename to res/field/events/events_solaceon_ruins_room_3_southwest_dead_end.json diff --git a/res/field/events/events_0232.json b/res/field/events/events_solaceon_ruins_room_4.json similarity index 100% rename from res/field/events/events_0232.json rename to res/field/events/events_solaceon_ruins_room_4.json diff --git a/res/field/events/events_0236.json b/res/field/events/events_solaceon_ruins_room_4_southeast_dead_end.json similarity index 100% rename from res/field/events/events_0236.json rename to res/field/events/events_solaceon_ruins_room_4_southeast_dead_end.json diff --git a/res/field/events/events_0234.json b/res/field/events/events_solaceon_ruins_room_5.json similarity index 100% rename from res/field/events/events_0234.json rename to res/field/events/events_solaceon_ruins_room_5.json diff --git a/res/field/events/events_0491.json b/res/field/events/events_solaceon_ruins_room_5_southeast_deadend.json similarity index 100% rename from res/field/events/events_0491.json rename to res/field/events/events_solaceon_ruins_room_5_southeast_deadend.json diff --git a/res/field/events/events_0229.json b/res/field/events/events_solaceon_ruins_room_5_southwest_dead_end.json similarity index 100% rename from res/field/events/events_0229.json rename to res/field/events/events_solaceon_ruins_room_5_southwest_dead_end.json diff --git a/res/field/events/events_0233.json b/res/field/events/events_solaceon_ruins_room_6.json similarity index 100% rename from res/field/events/events_0233.json rename to res/field/events/events_solaceon_ruins_room_6.json diff --git a/res/field/events/events_0237.json b/res/field/events/events_solaceon_ruins_room_6_northwest_dead_end.json similarity index 100% rename from res/field/events/events_0237.json rename to res/field/events/events_solaceon_ruins_room_6_northwest_dead_end.json diff --git a/res/field/events/events_0228.json b/res/field/events/events_solaceon_ruins_room_6_southeast_dead_end.json similarity index 100% rename from res/field/events/events_0228.json rename to res/field/events/events_solaceon_ruins_room_6_southeast_dead_end.json diff --git a/res/field/events/events_0235.json b/res/field/events/events_solaceon_ruins_room_7.json similarity index 100% rename from res/field/events/events_0235.json rename to res/field/events/events_solaceon_ruins_room_7.json diff --git a/res/field/events/events_0412.json b/res/field/events/events_solaceon_town.json similarity index 100% rename from res/field/events/events_0412.json rename to res/field/events/events_solaceon_town.json diff --git a/res/field/events/events_0420.json b/res/field/events/events_solaceon_town_east_house.json similarity index 100% rename from res/field/events/events_0420.json rename to res/field/events/events_solaceon_town_east_house.json diff --git a/res/field/events/events_0413.json b/res/field/events/events_solaceon_town_mart.json similarity index 100% rename from res/field/events/events_0413.json rename to res/field/events/events_solaceon_town_mart.json diff --git a/res/field/events/events_0419.json b/res/field/events/events_solaceon_town_north_house.json similarity index 100% rename from res/field/events/events_0419.json rename to res/field/events/events_solaceon_town_north_house.json diff --git a/res/field/events/events_0417.json b/res/field/events/events_solaceon_town_northeast_house.json similarity index 100% rename from res/field/events/events_0417.json rename to res/field/events/events_solaceon_town_northeast_house.json diff --git a/res/field/events/events_0414.json b/res/field/events/events_solaceon_town_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0414.json rename to res/field/events/events_solaceon_town_pokecenter_1f.json diff --git a/res/field/events/events_0415.json b/res/field/events/events_solaceon_town_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0415.json rename to res/field/events/events_solaceon_town_pokecenter_2f.json diff --git a/res/field/events/events_0464.json b/res/field/events/events_solaceon_town_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0464.json rename to res/field/events/events_solaceon_town_pokecenter_b1f.json diff --git a/res/field/events/events_0418.json b/res/field/events/events_solaceon_town_pokemon_news_press.json similarity index 100% rename from res/field/events/events_0418.json rename to res/field/events/events_solaceon_town_pokemon_news_press.json diff --git a/res/field/events/events_0217.json b/res/field/events/events_spear_pillar.json similarity index 100% rename from res/field/events/events_0217.json rename to res/field/events/events_spear_pillar.json diff --git a/res/field/events/events_0525.json b/res/field/events/events_spear_pillar_dialga.json similarity index 100% rename from res/field/events/events_0525.json rename to res/field/events/events_spear_pillar_dialga.json diff --git a/res/field/events/events_0218.json b/res/field/events/events_spear_pillar_distorted.json similarity index 100% rename from res/field/events/events_0218.json rename to res/field/events/events_spear_pillar_distorted.json diff --git a/res/field/events/events_0526.json b/res/field/events/events_spear_pillar_palkia.json similarity index 100% rename from res/field/events/events_0526.json rename to res/field/events/events_spear_pillar_palkia.json diff --git a/res/field/events/events_0327.json b/res/field/events/events_spring_path.json similarity index 100% rename from res/field/events/events_0327.json rename to res/field/events/events_spring_path.json diff --git a/res/field/events/events_0255.json b/res/field/events/events_stark_mountain_outside.json similarity index 100% rename from res/field/events/events_0255.json rename to res/field/events/events_stark_mountain_outside.json diff --git a/res/field/events/events_0256.json b/res/field/events/events_stark_mountain_room_1.json similarity index 100% rename from res/field/events/events_0256.json rename to res/field/events/events_stark_mountain_room_1.json diff --git a/res/field/events/events_0257.json b/res/field/events/events_stark_mountain_room_2.json similarity index 100% rename from res/field/events/events_0257.json rename to res/field/events/events_stark_mountain_room_2.json diff --git a/res/field/events/events_0258.json b/res/field/events/events_stark_mountain_room_3.json similarity index 100% rename from res/field/events/events_0258.json rename to res/field/events/events_stark_mountain_room_3.json diff --git a/res/field/events/events_0149.json b/res/field/events/events_sunyshore_city.json similarity index 100% rename from res/field/events/events_0149.json rename to res/field/events/events_sunyshore_city.json diff --git a/res/field/events/events_0162.json b/res/field/events/events_sunyshore_city_east_house.json similarity index 100% rename from res/field/events/events_0162.json rename to res/field/events/events_sunyshore_city_east_house.json diff --git a/res/field/events/events_0153.json b/res/field/events/events_sunyshore_city_gym_room_1.json similarity index 100% rename from res/field/events/events_0153.json rename to res/field/events/events_sunyshore_city_gym_room_1.json diff --git a/res/field/events/events_0154.json b/res/field/events/events_sunyshore_city_gym_room_2.json similarity index 100% rename from res/field/events/events_0154.json rename to res/field/events/events_sunyshore_city_gym_room_2.json diff --git a/res/field/events/events_0155.json b/res/field/events/events_sunyshore_city_gym_room_3.json similarity index 100% rename from res/field/events/events_0155.json rename to res/field/events/events_sunyshore_city_gym_room_3.json diff --git a/res/field/events/events_0152.json b/res/field/events/events_sunyshore_city_mart.json similarity index 100% rename from res/field/events/events_0152.json rename to res/field/events/events_sunyshore_city_mart.json diff --git a/res/field/events/events_0157.json b/res/field/events/events_sunyshore_city_northeast_house.json similarity index 100% rename from res/field/events/events_0157.json rename to res/field/events/events_sunyshore_city_northeast_house.json diff --git a/res/field/events/events_0159.json b/res/field/events/events_sunyshore_city_northwest_house.json similarity index 100% rename from res/field/events/events_0159.json rename to res/field/events/events_sunyshore_city_northwest_house.json diff --git a/res/field/events/events_0150.json b/res/field/events/events_sunyshore_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0150.json rename to res/field/events/events_sunyshore_city_pokecenter_1f.json diff --git a/res/field/events/events_0151.json b/res/field/events/events_sunyshore_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0151.json rename to res/field/events/events_sunyshore_city_pokecenter_2f.json diff --git a/res/field/events/events_0458.json b/res/field/events/events_sunyshore_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0458.json rename to res/field/events/events_sunyshore_city_pokecenter_b1f.json diff --git a/res/field/events/events_0160.json b/res/field/events/events_sunyshore_city_unknown_house_1.json similarity index 100% rename from res/field/events/events_0160.json rename to res/field/events/events_sunyshore_city_unknown_house_1.json diff --git a/res/field/events/events_0161.json b/res/field/events/events_sunyshore_city_unknown_house_2.json similarity index 100% rename from res/field/events/events_0161.json rename to res/field/events/events_sunyshore_city_unknown_house_2.json diff --git a/res/field/events/events_0158.json b/res/field/events/events_sunyshore_city_west_house.json similarity index 100% rename from res/field/events/events_0158.json rename to res/field/events/events_sunyshore_city_west_house.json diff --git a/res/field/events/events_0156.json b/res/field/events/events_sunyshore_market.json similarity index 100% rename from res/field/events/events_0156.json rename to res/field/events/events_sunyshore_market.json diff --git a/res/field/events/events_0429.json b/res/field/events/events_survival_area.json similarity index 100% rename from res/field/events/events_0429.json rename to res/field/events/events_survival_area.json diff --git a/res/field/events/events_0430.json b/res/field/events/events_survival_area_mart.json similarity index 100% rename from res/field/events/events_0430.json rename to res/field/events/events_survival_area_mart.json diff --git a/res/field/events/events_0435.json b/res/field/events/events_survival_area_north_house.json similarity index 100% rename from res/field/events/events_0435.json rename to res/field/events/events_survival_area_north_house.json diff --git a/res/field/events/events_0431.json b/res/field/events/events_survival_area_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0431.json rename to res/field/events/events_survival_area_pokecenter_1f.json diff --git a/res/field/events/events_0432.json b/res/field/events/events_survival_area_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0432.json rename to res/field/events/events_survival_area_pokecenter_2f.json diff --git a/res/field/events/events_0466.json b/res/field/events/events_survival_area_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0466.json rename to res/field/events/events_survival_area_pokecenter_b1f.json diff --git a/res/field/events/events_0434.json b/res/field/events/events_survival_area_south_house.json similarity index 100% rename from res/field/events/events_0434.json rename to res/field/events/events_survival_area_south_house.json diff --git a/res/field/events/events_0071.json b/res/field/events/events_team_galactic_eterna_building_1f.json similarity index 100% rename from res/field/events/events_0071.json rename to res/field/events/events_team_galactic_eterna_building_1f.json diff --git a/res/field/events/events_0072.json b/res/field/events/events_team_galactic_eterna_building_2f.json similarity index 100% rename from res/field/events/events_0072.json rename to res/field/events/events_team_galactic_eterna_building_2f.json diff --git a/res/field/events/events_0073.json b/res/field/events/events_team_galactic_eterna_building_3f.json similarity index 100% rename from res/field/events/events_0073.json rename to res/field/events/events_team_galactic_eterna_building_3f.json diff --git a/res/field/events/events_0074.json b/res/field/events/events_team_galactic_eterna_building_4f.json similarity index 100% rename from res/field/events/events_0074.json rename to res/field/events/events_team_galactic_eterna_building_4f.json diff --git a/res/field/events/events_0028.json b/res/field/events/events_trainers_school.json similarity index 100% rename from res/field/events/events_0028.json rename to res/field/events/events_trainers_school.json diff --git a/res/field/events/events_0276.json b/res/field/events/events_trophy_garden.json similarity index 100% rename from res/field/events/events_0276.json rename to res/field/events/events_trophy_garden.json diff --git a/res/field/events/events_0260.json b/res/field/events/events_turnback_cave_entrance.json similarity index 100% rename from res/field/events/events_0260.json rename to res/field/events/events_turnback_cave_entrance.json diff --git a/res/field/events/events_0262.json b/res/field/events/events_turnback_cave_giratina_room.json similarity index 100% rename from res/field/events/events_0262.json rename to res/field/events/events_turnback_cave_giratina_room.json diff --git a/res/field/events/events_0263.json b/res/field/events/events_turnback_cave_pillar_1_room_1.json similarity index 100% rename from res/field/events/events_0263.json rename to res/field/events/events_turnback_cave_pillar_1_room_1.json diff --git a/res/field/events/events_0264.json b/res/field/events/events_turnback_cave_pillar_1_room_2.json similarity index 100% rename from res/field/events/events_0264.json rename to res/field/events/events_turnback_cave_pillar_1_room_2.json diff --git a/res/field/events/events_0265.json b/res/field/events/events_turnback_cave_pillar_1_room_3.json similarity index 100% rename from res/field/events/events_0265.json rename to res/field/events/events_turnback_cave_pillar_1_room_3.json diff --git a/res/field/events/events_0494.json b/res/field/events/events_turnback_cave_pillar_1_room_4.json similarity index 100% rename from res/field/events/events_0494.json rename to res/field/events/events_turnback_cave_pillar_1_room_4.json diff --git a/res/field/events/events_0495.json b/res/field/events/events_turnback_cave_pillar_1_room_5.json similarity index 100% rename from res/field/events/events_0495.json rename to res/field/events/events_turnback_cave_pillar_1_room_5.json diff --git a/res/field/events/events_0496.json b/res/field/events/events_turnback_cave_pillar_1_room_6.json similarity index 100% rename from res/field/events/events_0496.json rename to res/field/events/events_turnback_cave_pillar_1_room_6.json diff --git a/res/field/events/events_0497.json b/res/field/events/events_turnback_cave_pillar_2_room_1.json similarity index 100% rename from res/field/events/events_0497.json rename to res/field/events/events_turnback_cave_pillar_2_room_1.json diff --git a/res/field/events/events_0498.json b/res/field/events/events_turnback_cave_pillar_2_room_2.json similarity index 100% rename from res/field/events/events_0498.json rename to res/field/events/events_turnback_cave_pillar_2_room_2.json diff --git a/res/field/events/events_0499.json b/res/field/events/events_turnback_cave_pillar_2_room_3.json similarity index 100% rename from res/field/events/events_0499.json rename to res/field/events/events_turnback_cave_pillar_2_room_3.json diff --git a/res/field/events/events_0500.json b/res/field/events/events_turnback_cave_pillar_2_room_4.json similarity index 100% rename from res/field/events/events_0500.json rename to res/field/events/events_turnback_cave_pillar_2_room_4.json diff --git a/res/field/events/events_0501.json b/res/field/events/events_turnback_cave_pillar_2_room_5.json similarity index 100% rename from res/field/events/events_0501.json rename to res/field/events/events_turnback_cave_pillar_2_room_5.json diff --git a/res/field/events/events_0502.json b/res/field/events/events_turnback_cave_pillar_2_room_6.json similarity index 100% rename from res/field/events/events_0502.json rename to res/field/events/events_turnback_cave_pillar_2_room_6.json diff --git a/res/field/events/events_0503.json b/res/field/events/events_turnback_cave_pillar_3_room_1.json similarity index 100% rename from res/field/events/events_0503.json rename to res/field/events/events_turnback_cave_pillar_3_room_1.json diff --git a/res/field/events/events_0504.json b/res/field/events/events_turnback_cave_pillar_3_room_2.json similarity index 100% rename from res/field/events/events_0504.json rename to res/field/events/events_turnback_cave_pillar_3_room_2.json diff --git a/res/field/events/events_0505.json b/res/field/events/events_turnback_cave_pillar_3_room_3.json similarity index 100% rename from res/field/events/events_0505.json rename to res/field/events/events_turnback_cave_pillar_3_room_3.json diff --git a/res/field/events/events_0506.json b/res/field/events/events_turnback_cave_pillar_3_room_4.json similarity index 100% rename from res/field/events/events_0506.json rename to res/field/events/events_turnback_cave_pillar_3_room_4.json diff --git a/res/field/events/events_0507.json b/res/field/events/events_turnback_cave_pillar_3_room_5.json similarity index 100% rename from res/field/events/events_0507.json rename to res/field/events/events_turnback_cave_pillar_3_room_5.json diff --git a/res/field/events/events_0508.json b/res/field/events/events_turnback_cave_pillar_3_room_6.json similarity index 100% rename from res/field/events/events_0508.json rename to res/field/events/events_turnback_cave_pillar_3_room_6.json diff --git a/res/field/events/events_0261.json b/res/field/events/events_turnback_cave_pillar_room.json similarity index 100% rename from res/field/events/events_0261.json rename to res/field/events/events_turnback_cave_pillar_room.json diff --git a/res/field/events/events_0390.json b/res/field/events/events_twinleaf_town.json similarity index 100% rename from res/field/events/events_0390.json rename to res/field/events/events_twinleaf_town.json diff --git a/res/field/events/events_0395.json b/res/field/events/events_twinleaf_town_northeast_house.json similarity index 100% rename from res/field/events/events_0395.json rename to res/field/events/events_twinleaf_town_northeast_house.json diff --git a/res/field/events/events_0393.json b/res/field/events/events_twinleaf_town_player_house_1f.json similarity index 100% rename from res/field/events/events_0393.json rename to res/field/events/events_twinleaf_town_player_house_1f.json diff --git a/res/field/events/events_0394.json b/res/field/events/events_twinleaf_town_player_house_2f.json similarity index 100% rename from res/field/events/events_0394.json rename to res/field/events/events_twinleaf_town_player_house_2f.json diff --git a/res/field/events/events_0391.json b/res/field/events/events_twinleaf_town_rival_house_1f.json similarity index 100% rename from res/field/events/events_0391.json rename to res/field/events/events_twinleaf_town_rival_house_1f.json diff --git a/res/field/events/events_0392.json b/res/field/events/events_twinleaf_town_rival_house_2f.json similarity index 100% rename from res/field/events/events_0392.json rename to res/field/events/events_twinleaf_town_rival_house_2f.json diff --git a/res/field/events/events_0396.json b/res/field/events/events_twinleaf_town_southwest_house.json similarity index 100% rename from res/field/events/events_0396.json rename to res/field/events/events_twinleaf_town_southwest_house.json diff --git a/res/field/events/events_0001.json b/res/field/events/events_underground.json similarity index 100% rename from res/field/events/events_0001.json rename to res/field/events/events_underground.json diff --git a/res/field/events/events_0445.json b/res/field/events/events_union_room.json similarity index 100% rename from res/field/events/events_0445.json rename to res/field/events/events_union_room.json diff --git a/res/field/events/events_0244.json b/res/field/events/events_unknown_map_197.json similarity index 100% rename from res/field/events/events_0244.json rename to res/field/events/events_unknown_map_197.json diff --git a/res/field/events/events_0248.json b/res/field/events/events_unknown_map_250.json similarity index 100% rename from res/field/events/events_0248.json rename to res/field/events/events_unknown_map_250.json diff --git a/res/field/events/events_0321.json b/res/field/events/events_unknown_map_255.json similarity index 100% rename from res/field/events/events_0321.json rename to res/field/events/events_unknown_map_255.json diff --git a/res/field/events/events_0450.json b/res/field/events/events_unknown_map_535.json similarity index 100% rename from res/field/events/events_0450.json rename to res/field/events/events_unknown_map_535.json diff --git a/res/field/events/events_0509.json b/res/field/events/events_unknown_map_540.json similarity index 100% rename from res/field/events/events_0509.json rename to res/field/events/events_unknown_map_540.json diff --git a/res/field/events/events_0510.json b/res/field/events/events_unknown_map_546.json similarity index 100% rename from res/field/events/events_0510.json rename to res/field/events/events_unknown_map_546.json diff --git a/res/field/events/events_0199.json b/res/field/events/events_valley_windworks_building.json similarity index 100% rename from res/field/events/events_0199.json rename to res/field/events/events_valley_windworks_building.json diff --git a/res/field/events/events_0198.json b/res/field/events/events_valley_windworks_outside.json similarity index 100% rename from res/field/events/events_0198.json rename to res/field/events/events_valley_windworks_outside.json diff --git a/res/field/events/events_0304.json b/res/field/events/events_valor_cavern.json similarity index 100% rename from res/field/events/events_0304.json rename to res/field/events/events_valor_cavern.json diff --git a/res/field/events/events_0322.json b/res/field/events/events_valor_lakefront.json similarity index 100% rename from res/field/events/events_0322.json rename to res/field/events/events_valor_lakefront.json diff --git a/res/field/events/events_0131.json b/res/field/events/events_veilstone_city.json similarity index 100% rename from res/field/events/events_0131.json rename to res/field/events/events_veilstone_city.json diff --git a/res/field/events/events_0142.json b/res/field/events/events_veilstone_city_galactic_warehouse.json similarity index 100% rename from res/field/events/events_0142.json rename to res/field/events/events_veilstone_city_galactic_warehouse.json diff --git a/res/field/events/events_0132.json b/res/field/events/events_veilstone_city_gym.json similarity index 100% rename from res/field/events/events_0132.json rename to res/field/events/events_veilstone_city_gym.json diff --git a/res/field/events/events_0146.json b/res/field/events/events_veilstone_city_northeast_house.json similarity index 100% rename from res/field/events/events_0146.json rename to res/field/events/events_veilstone_city_northeast_house.json diff --git a/res/field/events/events_0145.json b/res/field/events/events_veilstone_city_northwest_house.json similarity index 100% rename from res/field/events/events_0145.json rename to res/field/events/events_veilstone_city_northwest_house.json diff --git a/res/field/events/events_0133.json b/res/field/events/events_veilstone_city_pokecenter_1f.json similarity index 100% rename from res/field/events/events_0133.json rename to res/field/events/events_veilstone_city_pokecenter_1f.json diff --git a/res/field/events/events_0134.json b/res/field/events/events_veilstone_city_pokecenter_2f.json similarity index 100% rename from res/field/events/events_0134.json rename to res/field/events/events_veilstone_city_pokecenter_2f.json diff --git a/res/field/events/events_0457.json b/res/field/events/events_veilstone_city_pokecenter_b1f.json similarity index 100% rename from res/field/events/events_0457.json rename to res/field/events/events_veilstone_city_pokecenter_b1f.json diff --git a/res/field/events/events_0143.json b/res/field/events/events_veilstone_city_prize_exchange.json similarity index 100% rename from res/field/events/events_0143.json rename to res/field/events/events_veilstone_city_prize_exchange.json diff --git a/res/field/events/events_0144.json b/res/field/events/events_veilstone_city_southeast_house.json similarity index 100% rename from res/field/events/events_0144.json rename to res/field/events/events_veilstone_city_southeast_house.json diff --git a/res/field/events/events_0147.json b/res/field/events/events_veilstone_city_southwest_house.json similarity index 100% rename from res/field/events/events_0147.json rename to res/field/events/events_veilstone_city_southwest_house.json diff --git a/res/field/events/events_0136.json b/res/field/events/events_veilstone_store_1f.json similarity index 100% rename from res/field/events/events_0136.json rename to res/field/events/events_veilstone_store_1f.json diff --git a/res/field/events/events_0137.json b/res/field/events/events_veilstone_store_2f.json similarity index 100% rename from res/field/events/events_0137.json rename to res/field/events/events_veilstone_store_2f.json diff --git a/res/field/events/events_0138.json b/res/field/events/events_veilstone_store_3f.json similarity index 100% rename from res/field/events/events_0138.json rename to res/field/events/events_veilstone_store_3f.json diff --git a/res/field/events/events_0139.json b/res/field/events/events_veilstone_store_4f.json similarity index 100% rename from res/field/events/events_0139.json rename to res/field/events/events_veilstone_store_4f.json diff --git a/res/field/events/events_0140.json b/res/field/events/events_veilstone_store_5f.json similarity index 100% rename from res/field/events/events_0140.json rename to res/field/events/events_veilstone_store_5f.json diff --git a/res/field/events/events_0519.json b/res/field/events/events_veilstone_store_b1f.json similarity index 100% rename from res/field/events/events_0519.json rename to res/field/events/events_veilstone_store_b1f.json diff --git a/res/field/events/events_0442.json b/res/field/events/events_veilstone_store_elevator.json similarity index 100% rename from res/field/events/events_0442.json rename to res/field/events/events_veilstone_store_elevator.json diff --git a/res/field/events/events_0301.json b/res/field/events/events_verity_cavern.json similarity index 100% rename from res/field/events/events_0301.json rename to res/field/events/events_verity_cavern.json diff --git a/res/field/events/events_0320.json b/res/field/events/events_verity_lakefront.json similarity index 100% rename from res/field/events/events_0320.json rename to res/field/events/events_verity_lakefront.json diff --git a/res/field/events/events_0511.json b/res/field/events/events_verity_lakefront_unknown_house.json similarity index 100% rename from res/field/events/events_0511.json rename to res/field/events/events_verity_lakefront_unknown_house.json diff --git a/res/field/events/events_0238.json b/res/field/events/events_victory_road_1f.json similarity index 100% rename from res/field/events/events_0238.json rename to res/field/events/events_victory_road_1f.json diff --git a/res/field/events/events_0242.json b/res/field/events/events_victory_road_1f_room_1.json similarity index 100% rename from res/field/events/events_0242.json rename to res/field/events/events_victory_road_1f_room_1.json diff --git a/res/field/events/events_0241.json b/res/field/events/events_victory_road_1f_room_2.json similarity index 100% rename from res/field/events/events_0241.json rename to res/field/events/events_victory_road_1f_room_2.json diff --git a/res/field/events/events_0243.json b/res/field/events/events_victory_road_1f_room_3.json similarity index 100% rename from res/field/events/events_0243.json rename to res/field/events/events_victory_road_1f_room_3.json diff --git a/res/field/events/events_0239.json b/res/field/events/events_victory_road_2f.json similarity index 100% rename from res/field/events/events_0239.json rename to res/field/events/events_victory_road_2f.json diff --git a/res/field/events/events_0240.json b/res/field/events/events_victory_road_b1f.json similarity index 100% rename from res/field/events/events_0240.json rename to res/field/events/events_victory_road_b1f.json diff --git a/res/field/events/events_0443.json b/res/field/events/events_villa.json similarity index 100% rename from res/field/events/events_0443.json rename to res/field/events/events_villa.json diff --git a/res/field/events/events_0163.json b/res/field/events/events_vista_lighthouse.json similarity index 100% rename from res/field/events/events_0163.json rename to res/field/events/events_vista_lighthouse.json diff --git a/res/field/events/events_0492.json b/res/field/events/events_vista_lighthouse_elevator.json similarity index 100% rename from res/field/events/events_0492.json rename to res/field/events/events_vista_lighthouse_elevator.json diff --git a/res/field/events/events_0273.json b/res/field/events/events_wayward_cave_1f.json similarity index 100% rename from res/field/events/events_0273.json rename to res/field/events/events_wayward_cave_1f.json diff --git a/res/field/events/events_0274.json b/res/field/events/events_wayward_cave_b1f.json similarity index 100% rename from res/field/events/events_0274.json rename to res/field/events/events_wayward_cave_b1f.json diff --git a/res/field/events/events_0527.json b/res/field/events/events_wifi_plaza_entrance.json similarity index 100% rename from res/field/events/events_0527.json rename to res/field/events/events_wifi_plaza_entrance.json diff --git a/res/field/events/meson.build b/res/field/events/meson.build index 99d434a35b..5c7d795b29 100644 --- a/res/field/events/meson.build +++ b/res/field/events/meson.build @@ -1,552 +1,562 @@ -events_files = files( - 'events_0000.json', - 'events_0001.json', - 'events_0002.json', - 'events_0003.json', - 'events_0004.json', - 'events_0005.json', - 'events_0006.json', - 'events_0007.json', - 'events_0008.json', - 'events_0009.json', - 'events_0010.json', - 'events_0011.json', - 'events_0012.json', - 'events_0013.json', - 'events_0014.json', - 'events_0015.json', - 'events_0016.json', - 'events_0017.json', - 'events_0018.json', - 'events_0019.json', - 'events_0020.json', - 'events_0021.json', - 'events_0022.json', - 'events_0023.json', - 'events_0024.json', - 'events_0025.json', - 'events_0026.json', - 'events_0027.json', - 'events_0028.json', - 'events_0029.json', - 'events_0030.json', - 'events_0031.json', - 'events_0032.json', - 'events_0033.json', - 'events_0034.json', - 'events_0035.json', - 'events_0036.json', - 'events_0037.json', - 'events_0038.json', - 'events_0039.json', - 'events_0040.json', - 'events_0041.json', - 'events_0042.json', - 'events_0043.json', - 'events_0044.json', - 'events_0045.json', - 'events_0046.json', - 'events_0047.json', - 'events_0048.json', - 'events_0049.json', - 'events_0050.json', - 'events_0051.json', - 'events_0052.json', - 'events_0053.json', - 'events_0054.json', - 'events_0055.json', - 'events_0056.json', - 'events_0057.json', - 'events_0058.json', - 'events_0059.json', - 'events_0060.json', - 'events_0061.json', - 'events_0062.json', - 'events_0063.json', - 'events_0064.json', - 'events_0065.json', - 'events_0066.json', - 'events_0067.json', - 'events_0068.json', - 'events_0069.json', - 'events_0070.json', - 'events_0071.json', - 'events_0072.json', - 'events_0073.json', - 'events_0074.json', - 'events_0075.json', - 'events_0076.json', - 'events_0077.json', - 'events_0078.json', - 'events_0079.json', - 'events_0080.json', - 'events_0081.json', - 'events_0082.json', - 'events_0083.json', - 'events_0084.json', - 'events_0085.json', - 'events_0086.json', - 'events_0087.json', - 'events_0088.json', - 'events_0089.json', - 'events_0090.json', - 'events_0091.json', - 'events_0092.json', - 'events_0093.json', - 'events_0094.json', - 'events_0095.json', - 'events_0096.json', - 'events_0097.json', - 'events_0098.json', - 'events_0099.json', - 'events_0100.json', - 'events_0101.json', - 'events_0102.json', - 'events_0103.json', - 'events_0104.json', - 'events_0105.json', - 'events_0106.json', - 'events_0107.json', - 'events_0108.json', - 'events_0109.json', - 'events_0110.json', - 'events_0111.json', - 'events_0112.json', - 'events_0113.json', - 'events_0114.json', - 'events_0115.json', - 'events_0116.json', - 'events_0117.json', - 'events_0118.json', - 'events_0119.json', - 'events_0120.json', - 'events_0121.json', - 'events_0122.json', - 'events_0123.json', - 'events_0124.json', - 'events_0125.json', - 'events_0126.json', - 'events_0127.json', - 'events_0128.json', - 'events_0129.json', - 'events_0130.json', - 'events_0131.json', - 'events_0132.json', - 'events_0133.json', - 'events_0134.json', - 'events_0135.json', - 'events_0136.json', - 'events_0137.json', - 'events_0138.json', - 'events_0139.json', - 'events_0140.json', - 'events_0141.json', - 'events_0142.json', - 'events_0143.json', - 'events_0144.json', - 'events_0145.json', - 'events_0146.json', - 'events_0147.json', - 'events_0148.json', - 'events_0149.json', - 'events_0150.json', - 'events_0151.json', - 'events_0152.json', - 'events_0153.json', - 'events_0154.json', - 'events_0155.json', - 'events_0156.json', - 'events_0157.json', - 'events_0158.json', - 'events_0159.json', - 'events_0160.json', - 'events_0161.json', - 'events_0162.json', - 'events_0163.json', - 'events_0164.json', - 'events_0165.json', - 'events_0166.json', - 'events_0167.json', - 'events_0168.json', - 'events_0169.json', - 'events_0170.json', - 'events_0171.json', - 'events_0172.json', - 'events_0173.json', - 'events_0174.json', - 'events_0175.json', - 'events_0176.json', - 'events_0177.json', - 'events_0178.json', - 'events_0179.json', - 'events_0180.json', - 'events_0181.json', - 'events_0182.json', - 'events_0183.json', - 'events_0184.json', - 'events_0185.json', - 'events_0186.json', - 'events_0187.json', - 'events_0188.json', - 'events_0189.json', - 'events_0190.json', - 'events_0191.json', - 'events_0192.json', - 'events_0193.json', - 'events_0194.json', - 'events_0195.json', - 'events_0196.json', - 'events_0197.json', - 'events_0198.json', - 'events_0199.json', - 'events_0200.json', - 'events_0201.json', - 'events_0202.json', - 'events_0203.json', - 'events_0204.json', - 'events_0205.json', - 'events_0206.json', - 'events_0207.json', - 'events_0208.json', - 'events_0209.json', - 'events_0210.json', - 'events_0211.json', - 'events_0212.json', - 'events_0213.json', - 'events_0214.json', - 'events_0215.json', - 'events_0216.json', - 'events_0217.json', - 'events_0218.json', - 'events_0219.json', - 'events_0220.json', - 'events_0221.json', - 'events_0222.json', - 'events_0223.json', - 'events_0224.json', - 'events_0225.json', - 'events_0226.json', - 'events_0227.json', - 'events_0228.json', - 'events_0229.json', - 'events_0230.json', - 'events_0231.json', - 'events_0232.json', - 'events_0233.json', - 'events_0234.json', - 'events_0235.json', - 'events_0236.json', - 'events_0237.json', - 'events_0238.json', - 'events_0239.json', - 'events_0240.json', - 'events_0241.json', - 'events_0242.json', - 'events_0243.json', - 'events_0244.json', - 'events_0245.json', - 'events_0246.json', - 'events_0247.json', - 'events_0248.json', - 'events_0249.json', - 'events_0250.json', - 'events_0251.json', - 'events_0252.json', - 'events_0253.json', - 'events_0254.json', - 'events_0255.json', - 'events_0256.json', - 'events_0257.json', - 'events_0258.json', - 'events_0259.json', - 'events_0260.json', - 'events_0261.json', - 'events_0262.json', - 'events_0263.json', - 'events_0264.json', - 'events_0265.json', - 'events_0266.json', - 'events_0267.json', - 'events_0268.json', - 'events_0269.json', - 'events_0270.json', - 'events_0271.json', - 'events_0272.json', - 'events_0273.json', - 'events_0274.json', - 'events_0275.json', - 'events_0276.json', - 'events_0277.json', - 'events_0278.json', - 'events_0279.json', - 'events_0280.json', - 'events_0281.json', - 'events_0282.json', - 'events_0283.json', - 'events_0284.json', - 'events_0285.json', - 'events_0286.json', - 'events_0287.json', - 'events_0288.json', - 'events_0289.json', - 'events_0290.json', - 'events_0291.json', - 'events_0292.json', - 'events_0293.json', - 'events_0294.json', - 'events_0295.json', - 'events_0296.json', - 'events_0297.json', - 'events_0298.json', - 'events_0299.json', - 'events_0300.json', - 'events_0301.json', - 'events_0302.json', - 'events_0303.json', - 'events_0304.json', - 'events_0305.json', - 'events_0306.json', - 'events_0307.json', - 'events_0308.json', - 'events_0309.json', - 'events_0310.json', - 'events_0311.json', - 'events_0312.json', - 'events_0313.json', - 'events_0314.json', - 'events_0315.json', - 'events_0316.json', - 'events_0317.json', - 'events_0318.json', - 'events_0319.json', - 'events_0320.json', - 'events_0321.json', - 'events_0322.json', - 'events_0323.json', - 'events_0324.json', - 'events_0325.json', - 'events_0326.json', - 'events_0327.json', - 'events_0328.json', - 'events_0329.json', - 'events_0330.json', - 'events_0331.json', - 'events_0332.json', - 'events_0333.json', - 'events_0334.json', - 'events_0335.json', - 'events_0336.json', - 'events_0337.json', - 'events_0338.json', - 'events_0339.json', - 'events_0340.json', - 'events_0341.json', - 'events_0342.json', - 'events_0343.json', - 'events_0344.json', - 'events_0345.json', - 'events_0346.json', - 'events_0347.json', - 'events_0348.json', - 'events_0349.json', - 'events_0350.json', - 'events_0351.json', - 'events_0352.json', - 'events_0353.json', - 'events_0354.json', - 'events_0355.json', - 'events_0356.json', - 'events_0357.json', - 'events_0358.json', - 'events_0359.json', - 'events_0360.json', - 'events_0361.json', - 'events_0362.json', - 'events_0363.json', - 'events_0364.json', - 'events_0365.json', - 'events_0366.json', - 'events_0367.json', - 'events_0368.json', - 'events_0369.json', - 'events_0370.json', - 'events_0371.json', - 'events_0372.json', - 'events_0373.json', - 'events_0374.json', - 'events_0375.json', - 'events_0376.json', - 'events_0377.json', - 'events_0378.json', - 'events_0379.json', - 'events_0380.json', - 'events_0381.json', - 'events_0382.json', - 'events_0383.json', - 'events_0384.json', - 'events_0385.json', - 'events_0386.json', - 'events_0387.json', - 'events_0388.json', - 'events_0389.json', - 'events_0390.json', - 'events_0391.json', - 'events_0392.json', - 'events_0393.json', - 'events_0394.json', - 'events_0395.json', - 'events_0396.json', - 'events_0397.json', - 'events_0398.json', - 'events_0399.json', - 'events_0400.json', - 'events_0401.json', - 'events_0402.json', - 'events_0403.json', - 'events_0404.json', - 'events_0405.json', - 'events_0406.json', - 'events_0407.json', - 'events_0408.json', - 'events_0409.json', - 'events_0410.json', - 'events_0411.json', - 'events_0412.json', - 'events_0413.json', - 'events_0414.json', - 'events_0415.json', - 'events_0416.json', - 'events_0417.json', - 'events_0418.json', - 'events_0419.json', - 'events_0420.json', - 'events_0421.json', - 'events_0422.json', - 'events_0423.json', - 'events_0424.json', - 'events_0425.json', - 'events_0426.json', - 'events_0427.json', - 'events_0428.json', - 'events_0429.json', - 'events_0430.json', - 'events_0431.json', - 'events_0432.json', - 'events_0433.json', - 'events_0434.json', - 'events_0435.json', - 'events_0436.json', - 'events_0437.json', - 'events_0438.json', - 'events_0439.json', - 'events_0440.json', - 'events_0441.json', - 'events_0442.json', - 'events_0443.json', - 'events_0444.json', - 'events_0445.json', - 'events_0446.json', - 'events_0447.json', - 'events_0448.json', - 'events_0449.json', - 'events_0450.json', - 'events_0451.json', - 'events_0452.json', - 'events_0453.json', - 'events_0454.json', - 'events_0455.json', - 'events_0456.json', - 'events_0457.json', - 'events_0458.json', - 'events_0459.json', - 'events_0460.json', - 'events_0461.json', - 'events_0462.json', - 'events_0463.json', - 'events_0464.json', - 'events_0465.json', - 'events_0466.json', - 'events_0467.json', - 'events_0468.json', - 'events_0469.json', - 'events_0470.json', - 'events_0471.json', - 'events_0472.json', - 'events_0473.json', - 'events_0474.json', - 'events_0475.json', - 'events_0476.json', - 'events_0477.json', - 'events_0478.json', - 'events_0479.json', - 'events_0480.json', - 'events_0481.json', - 'events_0482.json', - 'events_0483.json', - 'events_0484.json', - 'events_0485.json', - 'events_0486.json', - 'events_0487.json', - 'events_0488.json', - 'events_0489.json', - 'events_0490.json', - 'events_0491.json', - 'events_0492.json', - 'events_0493.json', - 'events_0494.json', - 'events_0495.json', - 'events_0496.json', - 'events_0497.json', - 'events_0498.json', - 'events_0499.json', - 'events_0500.json', - 'events_0501.json', - 'events_0502.json', - 'events_0503.json', - 'events_0504.json', - 'events_0505.json', - 'events_0506.json', - 'events_0507.json', - 'events_0508.json', - 'events_0509.json', - 'events_0510.json', - 'events_0511.json', - 'events_0512.json', - 'events_0513.json', - 'events_0514.json', - 'events_0515.json', - 'events_0516.json', - 'events_0517.json', - 'events_0518.json', - 'events_0519.json', - 'events_0520.json', - 'events_0521.json', - 'events_0522.json', - 'events_0523.json', - 'events_0524.json', - 'events_0525.json', - 'events_0526.json', - 'events_0527.json', - 'events_0528.json', - 'events_0529.json', - 'events_0530.json', - 'events_0531.json', - 'events_0532.json', - 'events_0533.json', +event_bin_gen = generator( + event_py, + arguments: [ '@INPUT@', '@OUTPUT@', ], + output: '@BASENAME@' ) +events_files = files( + 'events_empty.json', + 'events_underground.json', + 'events_jubilife_city.json', + 'events_jubilife_city_mart.json', + 'events_jubilife_city_unknown_house_1.json', + 'events_jubilife_city_pokecenter_1f.json', + 'events_jubilife_city_pokecenter_2f.json', + 'events_poketch_co_1f.json', + 'events_poketch_co_2f.json', + 'events_poketch_co_3f.json', + 'events_jubilife_tv_1f.json', + 'events_jubilife_tv_2f.json', + 'events_jubilife_tv_3f.json', + 'events_jubilife_tv_4f.json', + 'events_jubilife_tv_2f_gallery.json', + 'events_jubilife_tv_3f_global_ranking_room.json', + 'events_jubilife_tv_3f_group_ranking_room.json', + 'events_jubilife_tv_elevator.json', + 'events_jubilife_city_south_house_1f.json', + 'events_jubilife_city_south_house_2f.json', + 'events_jubilife_city_south_house_3f.json', + 'events_jubilife_city_south_house_4f.json', + 'events_jubilife_city_unknown_house_2.json', + 'events_jubilife_city_condominiums_1f.json', + 'events_jubilife_city_condominiums_2f.json', + 'events_jubilife_city_condominiums_3f.json', + 'events_jubilife_city_condominiums_4f.json', + 'events_global_terminal_1f.json', + 'events_trainers_school.json', + 'events_jubilife_city_southwest_house_1f.json', + 'events_jubilife_city_unknown_house_3.json', + 'events_jubilife_city_unknown_house_4.json', + 'events_canalave_city.json', + 'events_canalave_city_mart.json', + 'events_canalave_city_gym.json', + 'events_canalave_city_pokecenter_1f.json', + 'events_canalave_city_pokecenter_2f.json', + 'events_canalave_library_1f.json', + 'events_canalave_library_2f.json', + 'events_canalave_library_3f.json', + 'events_canalave_city_southeast_house.json', + 'events_canalave_city_east_house.json', + 'events_canalave_city_harbor_inn.json', + 'events_canalave_city_sailor_eldritch_house.json', + 'events_oreburgh_city.json', + 'events_oreburgh_city_mart.json', + 'events_oreburgh_city_gym.json', + 'events_oreburgh_city_pokecenter_1f.json', + 'events_oreburgh_city_pokecenter_2f.json', + 'events_oreburgh_city_northwest_house_1f.json', + 'events_oreburgh_city_northwest_house_2f.json', + 'events_oreburgh_city_northwest_house_3f.json', + 'events_oreburgh_city_northwest_house_4f.json', + 'events_oreburgh_city_north_house_1f.json', + 'events_oreburgh_city_north_house_2f.json', + 'events_oreburgh_city_north_house_3f.json', + 'events_oreburgh_city_north_house_4f.json', + 'events_oreburgh_city_middle_house.json', + 'events_mining_museum.json', + 'events_oreburgh_city_west_house.json', + 'events_oreburgh_city_east_house_1f.json', + 'events_oreburgh_city_east_house_2f.json', + 'events_oreburgh_city_east_house_3f.json', + 'events_oreburgh_city_south_house.json', + 'events_eterna_city.json', + 'events_eterna_city_mart.json', + 'events_eterna_city_gym.json', + 'events_eterna_city_dp_gym.json', + 'events_eterna_city_pokecenter_1f.json', + 'events_eterna_city_pokecenter_2f.json', + 'events_cycle_shop.json', + 'events_team_galactic_eterna_building_1f.json', + 'events_team_galactic_eterna_building_2f.json', + 'events_team_galactic_eterna_building_3f.json', + 'events_team_galactic_eterna_building_4f.json', + 'events_eterna_city_condominiums_1f.json', + 'events_eterna_city_condominiums_2f.json', + 'events_eterna_city_condominiums_3f.json', + 'events_eterna_city_condominiums_4f.json', + 'events_route_206_cycling_road_north_gate.json', + 'events_eterna_city_north_house.json', + 'events_eterna_city_south_house.json', + 'events_eterna_city_east_house.json', + 'events_eterna_city_underground_man_house.json', + 'events_eterna_city_unknown_house.json', + 'events_hearthome_city.json', + 'events_hearthome_city_mart.json', + 'events_hearthome_city_gym_entrance_room.json', + 'events_hearthome_city_gym_trainer_room_1.json', + 'events_hearthome_city_gym_trainer_room_2.json', + 'events_hearthome_city_gym_leader_room.json', + 'events_hearthome_city_dp_gym_trainer_room_1.json', + 'events_hearthome_city_dp_gym_elevator_room_1.json', + 'events_hearthome_city_dp_gym_trainer_room_2.json', + 'events_hearthome_city_dp_gym_elevator_room_2.json', + 'events_hearthome_city_dp_gym_trainer_room_3.json', + 'events_hearthome_city_dp_gym_trainer_room_4.json', + 'events_hearthome_city_dp_gym_trainer_room_5.json', + 'events_hearthome_city_dp_gym_trainer_room_6.json', + 'events_hearthome_city_dp_gym_leader_room.json', + 'events_hearthome_city_pokecenter_1f.json', + 'events_hearthome_city_pokecenter_2f.json', + 'events_hearthome_city_southeast_house_1f.json', + 'events_hearthome_city_southeast_house_2f.json', + 'events_hearthome_city_southeast_house_elevator.json', + 'events_hearthome_city_pokemon_fan_club.json', + 'events_hearthome_city_west_gate_to_amity_square.json', + 'events_hearthome_city_east_gate_to_amity_square.json', + 'events_route_208_gate_to_hearthome_city.json', + 'events_route_209_gate_to_hearthome_city.json', + 'events_route_212_gate_to_hearthome_city.json', + 'events_hearthome_city_northeast_house_1f.json', + 'events_hearthome_city_northeast_house_2f.json', + 'events_hearthome_city_northeast_house_elevator.json', + 'events_hearthome_city_northwest_house.json', + 'events_poffin_house.json', + 'events_contest_hall_lobby.json', + 'events_contest_hall_stage_ongoing_contest.json', + 'events_foreign_building.json', + 'events_pastoria_city.json', + 'events_pastoria_city_mart.json', + 'events_pastoria_city_gym.json', + 'events_pastoria_city_pokecenter_1f.json', + 'events_pastoria_city_pokecenter_2f.json', + 'events_pastoria_city_observatory_gate_1f.json', + 'events_pastoria_city_observatory_gate_2f.json', + 'events_pastoria_city_southwest_house.json', + 'events_pastoria_city_middle_house.json', + 'events_pastoria_city_east_house.json', + 'events_pastoria_city_north_house.json', + 'events_pastoria_city_northeast_house.json', + 'events_veilstone_city.json', + 'events_veilstone_city_gym.json', + 'events_veilstone_city_pokecenter_1f.json', + 'events_veilstone_city_pokecenter_2f.json', + 'events_game_corner.json', + 'events_veilstone_store_1f.json', + 'events_veilstone_store_2f.json', + 'events_veilstone_store_3f.json', + 'events_veilstone_store_4f.json', + 'events_veilstone_store_5f.json', + 'events_veilstone_store_elevator.json', + 'events_veilstone_city_galactic_warehouse.json', + 'events_veilstone_city_prize_exchange.json', + 'events_veilstone_city_southeast_house.json', + 'events_veilstone_city_northwest_house.json', + 'events_veilstone_city_northeast_house.json', + 'events_veilstone_city_southwest_house.json', + 'events_route_215_gate_to_veilstone_city.json', + 'events_sunyshore_city.json', + 'events_sunyshore_city_pokecenter_1f.json', + 'events_sunyshore_city_pokecenter_2f.json', + 'events_sunyshore_city_mart.json', + 'events_sunyshore_city_gym_room_1.json', + 'events_sunyshore_city_gym_room_2.json', + 'events_sunyshore_city_gym_room_3.json', + 'events_sunyshore_market.json', + 'events_sunyshore_city_northeast_house.json', + 'events_sunyshore_city_west_house.json', + 'events_sunyshore_city_northwest_house.json', + 'events_sunyshore_city_unknown_house_1.json', + 'events_sunyshore_city_unknown_house_2.json', + 'events_sunyshore_city_east_house.json', + 'events_vista_lighthouse.json', + 'events_snowpoint_city.json', + 'events_snowpoint_city_mart.json', + 'events_snowpoint_city_gym.json', + 'events_snowpoint_city_pokecenter_1f.json', + 'events_snowpoint_city_pokecenter_2f.json', + 'events_snowpoint_city_west_house.json', + 'events_snowpoint_city_east_house.json', + 'events_pokemon_league.json', + 'events_pokemon_league_south_pokecenter_1f.json', + 'events_pokemon_league_south_pokecenter_2f.json', + 'events_pokemon_league_north_pokecenter_1f.json', + 'events_pokemon_league_elevator_to_aaron_room.json', + 'events_pokemon_league_aaron_room.json', + 'events_pokemon_league_elevator_to_bertha_room.json', + 'events_pokemon_league_bertha_room.json', + 'events_pokemon_league_elevator_to_flint_room.json', + 'events_pokemon_league_flint_room.json', + 'events_pokemon_league_elevator_to_lucian_room.json', + 'events_pokemon_league_lucian_room.json', + 'events_pokemon_league_elevator_to_champion_room.json', + 'events_pokemon_league_champion_room.json', + 'events_pokemon_league_elevator_to_hall_of_fame.json', + 'events_pokemon_league_hall_of_fame.json', + 'events_fight_area.json', + 'events_fight_area_pokecenter_1f.json', + 'events_fight_area_pokecenter_2f.json', + 'events_fight_area_mart.json', + 'events_battle_park_gate_to_fight_area.json', + 'events_route_225_gate_to_fight_area.json', + 'events_fight_area_middle_house.json', + 'events_fight_area_south_house.json', + 'events_unknown_map_197.json', + 'events_oreburgh_mine_b1f.json', + 'events_oreburgh_mine_b2f.json', + 'events_valley_windworks_outside.json', + 'events_valley_windworks_building.json', + 'events_eterna_forest_outside.json', + 'events_eterna_forest.json', + 'events_fuego_ironworks_outside.json', + 'events_fuego_ironworks_building.json', + 'events_mt_coronet_1f_south.json', + 'events_mt_coronet_2f.json', + 'events_mt_coronet_3f.json', + 'events_mt_coronet_outside_north.json', + 'events_mt_coronet_outside_south.json', + 'events_mt_coronet_4f_rooms_1_and_2.json', + 'events_mt_coronet_4f_room_3.json', + 'events_mt_coronet_5f.json', + 'events_mt_coronet_6f.json', + 'events_mt_coronet_1f_tunnel_room.json', + 'events_mt_coronet_1f_north_room_2.json', + 'events_mt_coronet_1f_north_room_1.json', + 'events_mt_coronet_b1f.json', + 'events_spear_pillar.json', + 'events_spear_pillar_distorted.json', + 'events_pastoria_city_dp_great_marsh.json', + 'events_solaceon_ruins_maniac_tunnel_room.json', + 'events_solaceon_ruins_room_1.json', + 'events_solaceon_ruins_room_2_northeast_dead_end.json', + 'events_solaceon_ruins_room_1_northwest_dead_end.json', + 'events_solaceon_ruins_room_2.json', + 'events_solaceon_ruins_room_1_southeast_dead_end.json', + 'events_solaceon_ruins_room_3.json', + 'events_solaceon_ruins_room_2_southeast_dead_end.json', + 'events_solaceon_ruins_room_6_southeast_dead_end.json', + 'events_solaceon_ruins_room_5_southwest_dead_end.json', + 'events_solaceon_ruins_room_3_northwest_dead_end.json', + 'events_solaceon_ruins_room_3_southwest_dead_end.json', + 'events_solaceon_ruins_room_4.json', + 'events_solaceon_ruins_room_6.json', + 'events_solaceon_ruins_room_5.json', + 'events_solaceon_ruins_room_7.json', + 'events_solaceon_ruins_room_4_southeast_dead_end.json', + 'events_solaceon_ruins_room_6_northwest_dead_end.json', + 'events_victory_road_1f.json', + 'events_victory_road_2f.json', + 'events_victory_road_b1f.json', + 'events_victory_road_1f_room_2.json', + 'events_victory_road_1f_room_1.json', + 'events_victory_road_1f_room_3.json', + 'events_unknown_map_250.json', + 'events_pal_park.json', + 'events_amity_square.json', + 'events_ravaged_path.json', + 'events_unknown_map_255.json', + 'events_floaroma_meadow.json', + 'events_floaroma_meadow_house.json', + 'events_oreburgh_gate_1f.json', + 'events_oreburgh_gate_b1f.json', + 'events_fullmoon_island.json', + 'events_fullmoon_island_forest.json', + 'events_stark_mountain_outside.json', + 'events_stark_mountain_room_1.json', + 'events_stark_mountain_room_2.json', + 'events_stark_mountain_room_3.json', + 'events_sendoff_spring.json', + 'events_turnback_cave_entrance.json', + 'events_turnback_cave_pillar_room.json', + 'events_turnback_cave_giratina_room.json', + 'events_turnback_cave_pillar_1_room_1.json', + 'events_turnback_cave_pillar_1_room_2.json', + 'events_turnback_cave_pillar_1_room_3.json', + 'events_flower_paradise.json', + 'events_snowpoint_temple_1f.json', + 'events_snowpoint_temple_b1f.json', + 'events_snowpoint_temple_b2f.json', + 'events_snowpoint_temple_b3f.json', + 'events_snowpoint_temple_b4f.json', + 'events_snowpoint_temple_b5f.json', + 'events_wayward_cave_1f.json', + 'events_wayward_cave_b1f.json', + 'events_ruin_maniac_cave_short.json', + 'events_trophy_garden.json', + 'events_iron_island.json', + 'events_iron_island_1f.json', + 'events_iron_island_b1f_left_room.json', + 'events_iron_island_b1f_right_room.json', + 'events_iron_island_b2f_right_room.json', + 'events_iron_island_b2f_left_room.json', + 'events_iron_island_b3f.json', + 'events_old_chateau.json', + 'events_old_chateau_dining_area.json', + 'events_old_chateau_side_rooms.json', + 'events_old_chateau_corridor.json', + 'events_old_chateau_back_west_room.json', + 'events_old_chateau_back_middle_west_room.json', + 'events_old_chateau_back_middle_room.json', + 'events_old_chateau_back_middle_east_room.json', + 'events_old_chateau_back_east_room.json', + 'events_galactic_hq_1f.json', + 'events_galactic_hq_2f.json', + 'events_galactic_hq_3f.json', + 'events_galactic_hq_4f.json', + 'events_galactic_hq_b1f.json', + 'events_galactic_hq_b2f.json', + 'events_lake_verity_low_water.json', + 'events_lake_verity.json', + 'events_verity_cavern.json', + 'events_lake_valor_drained.json', + 'events_lake_valor.json', + 'events_valor_cavern.json', + 'events_lake_acuity_low_water.json', + 'events_lake_acuity.json', + 'events_acuity_cavern.json', + 'events_newmoon_island.json', + 'events_newmoon_island_forest.json', + 'events_battle_park.json', + 'events_battle_park_exchange_service_corner.json', + 'events_battle_tower.json', + 'events_battle_tower_elevator.json', + 'events_battle_tower_corridor.json', + 'events_battle_tower_corridor_multi.json', + 'events_battle_tower_battle_room.json', + 'events_battle_tower_multi_battle_room.json', + 'events_communication_club_colosseum_2p.json', + 'events_communication_club_colosseum_4p.json', + 'events_verity_lakefront.json', + 'events_verity_lakefront_unknown_house.json', + 'events_valor_lakefront.json', + 'events_restaurant.json', + 'events_grand_lake_valor_lakefront_east_house.json', + 'events_grand_lake_valor_lakefront_west_house.json', + 'events_acuity_lakefront.json', + 'events_spring_path.json', + 'events_route_201.json', + 'events_route_202.json', + 'events_route_203.json', + 'events_route_204_south.json', + 'events_route_204_north.json', + 'events_route_205_south.json', + 'events_route_205_house.json', + 'events_route_205_north.json', + 'events_route_206.json', + 'events_route_206_cycling_road_south_gate.json', + 'events_gate_between_eterna_city_route_206.json', + 'events_route_207.json', + 'events_route_208.json', + 'events_route_208_house.json', + 'events_route_209.json', + 'events_route_209_lost_tower_1f.json', + 'events_route_209_lost_tower_2f.json', + 'events_route_209_lost_tower_3f.json', + 'events_route_209_lost_tower_4f.json', + 'events_route_209_lost_tower_5f.json', + 'events_route_210_south.json', + 'events_route_210_north.json', + 'events_route_210_grandma_wilma_house.json', + 'events_route_211_west.json', + 'events_route_211_east.json', + 'events_route_212_north.json', + 'events_pokemon_mansion.json', + 'events_pokemon_mansion_maids_room.json', + 'events_pokemon_mansion_office.json', + 'events_route_212_south.json', + 'events_route_212_house.json', + 'events_route_213.json', + 'events_route_213_gate_to_pastoria_city.json', + 'events_footstep_house.json', + 'events_grand_lake_route_213_lobby.json', + 'events_grand_lake_route_213_east_house.json', + 'events_grand_lake_route_213_northwest_house.json', + 'events_grand_lake_route_213_northeast_house.json', + 'events_route_214.json', + 'events_route_214_gate_to_veilstone_city.json', + 'events_route_215.json', + 'events_route_216.json', + 'events_route_216_house.json', + 'events_route_217.json', + 'events_route_217_west_house.json', + 'events_route_217_northeast_house.json', + 'events_route_218.json', + 'events_route_218_gate_to_jubilife_city.json', + 'events_route_218_gate_to_canalave_city.json', + 'events_route_219.json', + 'events_route_221.json', + 'events_pal_park_lobby.json', + 'events_route_221_house.json', + 'events_route_222.json', + 'events_route_222_west_house.json', + 'events_route_222_east_house.json', + 'events_route_222_gate_to_sunyshore_city.json', + 'events_route_224.json', + 'events_route_225.json', + 'events_route_227.json', + 'events_route_228.json', + 'events_route_229.json', + 'events_twinleaf_town.json', + 'events_twinleaf_town_rival_house_1f.json', + 'events_twinleaf_town_rival_house_2f.json', + 'events_twinleaf_town_player_house_1f.json', + 'events_twinleaf_town_player_house_2f.json', + 'events_twinleaf_town_northeast_house.json', + 'events_twinleaf_town_southwest_house.json', + 'events_sandgem_town.json', + 'events_sandgem_town_mart.json', + 'events_sandgem_town_pokecenter_1f.json', + 'events_sandgem_town_pokecenter_2f.json', + 'events_sandgem_town_pokemon_research_lab.json', + 'events_sandgem_town_counterpart_house_1f.json', + 'events_sandgem_town_counterpart_house_2f.json', + 'events_sandgem_town_house.json', + 'events_floaroma_town.json', + 'events_floaroma_town_mart.json', + 'events_floaroma_town_pokecenter_1f.json', + 'events_floaroma_town_pokecenter_2f.json', + 'events_flower_shop.json', + 'events_floaroma_town_southeast_house.json', + 'events_floaroma_town_middle_house.json', + 'events_solaceon_town.json', + 'events_solaceon_town_mart.json', + 'events_solaceon_town_pokecenter_1f.json', + 'events_solaceon_town_pokecenter_2f.json', + 'events_pokemon_day_care.json', + 'events_solaceon_town_northeast_house.json', + 'events_solaceon_town_pokemon_news_press.json', + 'events_solaceon_town_north_house.json', + 'events_solaceon_town_east_house.json', + 'events_celestic_town.json', + 'events_celestic_town_pokecenter_1f.json', + 'events_celestic_town_pokecenter_2f.json', + 'events_celestic_town_north_house.json', + 'events_celestic_town_northwest_house.json', + 'events_celestic_town_northeast_house.json', + 'events_celestic_town_southwest_house.json', + 'events_celestic_town_cave.json', + 'events_survival_area.json', + 'events_survival_area_mart.json', + 'events_survival_area_pokecenter_1f.json', + 'events_survival_area_pokecenter_2f.json', + 'events_battleground.json', + 'events_survival_area_south_house.json', + 'events_survival_area_north_house.json', + 'events_resort_area.json', + 'events_resort_area_mart.json', + 'events_resort_area_pokecenter_1f.json', + 'events_resort_area_pokecenter_2f.json', + 'events_resort_area_ribbon_syndicate_1f.json', + 'events_resort_area_ribbon_syndicate_2f.json', + 'events_resort_area_ribbon_syndicate_elevator.json', + 'events_villa.json', + 'events_resort_area_house.json', + 'events_union_room.json', + 'events_route_220.json', + 'events_route_223.json', + 'events_route_226.json', + 'events_route_230.json', + 'events_seabreak_path.json', + 'events_jubilife_city_pokecenter_b1f.json', + 'events_canalave_city_pokecenter_b1f.json', + 'events_oreburgh_city_pokecenter_b1f.json', + 'events_eterna_city_pokecenter_b1f.json', + 'events_hearthome_city_pokecenter_b1f.json', + 'events_pastoria_city_pokecenter_b1f.json', + 'events_veilstone_city_pokecenter_b1f.json', + 'events_sunyshore_city_pokecenter_b1f.json', + 'events_snowpoint_city_pokecenter_b1f.json', + 'events_pokemon_league_south_pokecenter_b1f.json', + 'events_fight_area_pokecenter_b1f.json', + 'events_sandgem_town_pokecenter_b1f.json', + 'events_floaroma_town_pokecenter_b1f.json', + 'events_solaceon_town_pokecenter_b1f.json', + 'events_celestic_town_pokecenter_b1f.json', + 'events_survival_area_pokecenter_b1f.json', + 'events_resort_area_pokecenter_b1f.json', + 'events_canalave_city_west_house.json', + 'events_cafe.json', + 'events_battle_tower_battle_salon.json', + 'events_galactic_hq_control_room.json', + 'events_pokemon_league_north_pokecenter_2f.json', + 'events_pokemon_league_north_pokecenter_b1f.json', + 'events_galactic_hq_laboratory.json', + 'events_route_225_house.json', + 'events_route_226_house.json', + 'events_route_227_house.json', + 'events_route_228_gate_to_route_226.json', + 'events_route_228_north_house.json', + 'events_route_228_south_house.json', + 'events_great_marsh_1.json', + 'events_great_marsh_2.json', + 'events_great_marsh_3.json', + 'events_great_marsh_4.json', + 'events_great_marsh_5.json', + 'events_great_marsh_6.json', + 'events_hall_of_origin.json', + 'events_ruin_maniac_cave_long.json', + 'events_maniac_tunnel.json', + 'events_iron_island_house.json', + 'events_solaceon_ruins_room_5_southeast_deadend.json', + 'events_vista_lighthouse_elevator.json', + 'events_jubilife_city_southwest_house_2f.json', + 'events_turnback_cave_pillar_1_room_4.json', + 'events_turnback_cave_pillar_1_room_5.json', + 'events_turnback_cave_pillar_1_room_6.json', + 'events_turnback_cave_pillar_2_room_1.json', + 'events_turnback_cave_pillar_2_room_2.json', + 'events_turnback_cave_pillar_2_room_3.json', + 'events_turnback_cave_pillar_2_room_4.json', + 'events_turnback_cave_pillar_2_room_5.json', + 'events_turnback_cave_pillar_2_room_6.json', + 'events_turnback_cave_pillar_3_room_1.json', + 'events_turnback_cave_pillar_3_room_2.json', + 'events_turnback_cave_pillar_3_room_3.json', + 'events_turnback_cave_pillar_3_room_4.json', + 'events_turnback_cave_pillar_3_room_5.json', + 'events_turnback_cave_pillar_3_room_6.json', + 'events_unknown_map_535.json', + 'events_unknown_map_540.json', + 'events_unknown_map_546.json', + 'events_contest_hall_stage_no_contest.json', + 'events_battle_frontier.json', + 'events_battle_frontier_gate_to_fight_area.json', + 'events_battle_factory.json', + 'events_battle_hall.json', + 'events_battle_castle.json', + 'events_battle_arcade.json', + 'events_veilstone_store_b1f.json', + 'events_global_terminal_2f.json', + 'events_global_terminal_3f.json', + 'events_galactic_hq_hall.json', + 'events_rotoms_room.json', + 'events_distortion_world_1f.json', + 'events_spear_pillar_dialga.json', + 'events_spear_pillar_palkia.json', + 'events_wifi_plaza_entrance.json', + 'events_iron_island_iron_ruins.json', + 'events_iron_ruins.json', + 'events_mt_coronet_iceberg_ruins.json', + 'events_iceberg_ruins.json', + 'events_route_228_rock_peak_ruins.json', + 'events_rock_peak_ruins.json', +) + +events_order = files('zone_event.order') events_narc = custom_target('zone_event.narc', - output: 'zone_event.narc', - input: events_files, - env: json2bin_env, + output: [ + 'zone_event.narc', + 'zone_event.naix', + ], + input: event_bin_gen.process(events_files, env: json2bin_env), depends: [ py_consts_generators ], command: [ - events_py, - '--knarc', knarc_exe, - '--source-dir', '@CURRENT_SOURCE_DIR@', - '--private-dir', '@PRIVATE_DIR@', - '--output-dir', '@OUTDIR@', + knarc_exe, + '-d', '@PRIVATE_DIR@', + '-p', '@OUTPUT0@', + '--order', events_order, + '--naix', ] ) -nitrofs_files += events_narc +nitrofs_files += events_narc[0] +naix_headers += events_narc[1] diff --git a/res/field/events/zone_event.order b/res/field/events/zone_event.order new file mode 100644 index 0000000000..c923455367 --- /dev/null +++ b/res/field/events/zone_event.order @@ -0,0 +1,534 @@ +events_empty +events_underground +events_jubilife_city +events_jubilife_city_mart +events_jubilife_city_unknown_house_1 +events_jubilife_city_pokecenter_1f +events_jubilife_city_pokecenter_2f +events_poketch_co_1f +events_poketch_co_2f +events_poketch_co_3f +events_jubilife_tv_1f +events_jubilife_tv_2f +events_jubilife_tv_3f +events_jubilife_tv_4f +events_jubilife_tv_2f_gallery +events_jubilife_tv_3f_global_ranking_room +events_jubilife_tv_3f_group_ranking_room +events_jubilife_tv_elevator +events_jubilife_city_south_house_1f +events_jubilife_city_south_house_2f +events_jubilife_city_south_house_3f +events_jubilife_city_south_house_4f +events_jubilife_city_unknown_house_2 +events_jubilife_city_condominiums_1f +events_jubilife_city_condominiums_2f +events_jubilife_city_condominiums_3f +events_jubilife_city_condominiums_4f +events_global_terminal_1f +events_trainers_school +events_jubilife_city_southwest_house_1f +events_jubilife_city_unknown_house_3 +events_jubilife_city_unknown_house_4 +events_canalave_city +events_canalave_city_mart +events_canalave_city_gym +events_canalave_city_pokecenter_1f +events_canalave_city_pokecenter_2f +events_canalave_library_1f +events_canalave_library_2f +events_canalave_library_3f +events_canalave_city_southeast_house +events_canalave_city_east_house +events_canalave_city_harbor_inn +events_canalave_city_sailor_eldritch_house +events_oreburgh_city +events_oreburgh_city_mart +events_oreburgh_city_gym +events_oreburgh_city_pokecenter_1f +events_oreburgh_city_pokecenter_2f +events_oreburgh_city_northwest_house_1f +events_oreburgh_city_northwest_house_2f +events_oreburgh_city_northwest_house_3f +events_oreburgh_city_northwest_house_4f +events_oreburgh_city_north_house_1f +events_oreburgh_city_north_house_2f +events_oreburgh_city_north_house_3f +events_oreburgh_city_north_house_4f +events_oreburgh_city_middle_house +events_mining_museum +events_oreburgh_city_west_house +events_oreburgh_city_east_house_1f +events_oreburgh_city_east_house_2f +events_oreburgh_city_east_house_3f +events_oreburgh_city_south_house +events_eterna_city +events_eterna_city_mart +events_eterna_city_gym +events_eterna_city_dp_gym +events_eterna_city_pokecenter_1f +events_eterna_city_pokecenter_2f +events_cycle_shop +events_team_galactic_eterna_building_1f +events_team_galactic_eterna_building_2f +events_team_galactic_eterna_building_3f +events_team_galactic_eterna_building_4f +events_eterna_city_condominiums_1f +events_eterna_city_condominiums_2f +events_eterna_city_condominiums_3f +events_eterna_city_condominiums_4f +events_route_206_cycling_road_north_gate +events_eterna_city_north_house +events_eterna_city_south_house +events_eterna_city_east_house +events_eterna_city_underground_man_house +events_eterna_city_unknown_house +events_hearthome_city +events_hearthome_city_mart +events_hearthome_city_gym_entrance_room +events_hearthome_city_gym_trainer_room_1 +events_hearthome_city_gym_trainer_room_2 +events_hearthome_city_gym_leader_room +events_hearthome_city_dp_gym_trainer_room_1 +events_hearthome_city_dp_gym_elevator_room_1 +events_hearthome_city_dp_gym_trainer_room_2 +events_hearthome_city_dp_gym_elevator_room_2 +events_hearthome_city_dp_gym_trainer_room_3 +events_hearthome_city_dp_gym_trainer_room_4 +events_hearthome_city_dp_gym_trainer_room_5 +events_hearthome_city_dp_gym_trainer_room_6 +events_hearthome_city_dp_gym_leader_room +events_hearthome_city_pokecenter_1f +events_hearthome_city_pokecenter_2f +events_hearthome_city_southeast_house_1f +events_hearthome_city_southeast_house_2f +events_hearthome_city_southeast_house_elevator +events_hearthome_city_pokemon_fan_club +events_hearthome_city_west_gate_to_amity_square +events_hearthome_city_east_gate_to_amity_square +events_route_208_gate_to_hearthome_city +events_route_209_gate_to_hearthome_city +events_route_212_gate_to_hearthome_city +events_hearthome_city_northeast_house_1f +events_hearthome_city_northeast_house_2f +events_hearthome_city_northeast_house_elevator +events_hearthome_city_northwest_house +events_poffin_house +events_contest_hall_lobby +events_contest_hall_stage_ongoing_contest +events_foreign_building +events_pastoria_city +events_pastoria_city_mart +events_pastoria_city_gym +events_pastoria_city_pokecenter_1f +events_pastoria_city_pokecenter_2f +events_pastoria_city_observatory_gate_1f +events_pastoria_city_observatory_gate_2f +events_pastoria_city_southwest_house +events_pastoria_city_middle_house +events_pastoria_city_east_house +events_pastoria_city_north_house +events_pastoria_city_northeast_house +events_veilstone_city +events_veilstone_city_gym +events_veilstone_city_pokecenter_1f +events_veilstone_city_pokecenter_2f +events_game_corner +events_veilstone_store_1f +events_veilstone_store_2f +events_veilstone_store_3f +events_veilstone_store_4f +events_veilstone_store_5f +events_veilstone_store_elevator +events_veilstone_city_galactic_warehouse +events_veilstone_city_prize_exchange +events_veilstone_city_southeast_house +events_veilstone_city_northwest_house +events_veilstone_city_northeast_house +events_veilstone_city_southwest_house +events_route_215_gate_to_veilstone_city +events_sunyshore_city +events_sunyshore_city_pokecenter_1f +events_sunyshore_city_pokecenter_2f +events_sunyshore_city_mart +events_sunyshore_city_gym_room_1 +events_sunyshore_city_gym_room_2 +events_sunyshore_city_gym_room_3 +events_sunyshore_market +events_sunyshore_city_northeast_house +events_sunyshore_city_west_house +events_sunyshore_city_northwest_house +events_sunyshore_city_unknown_house_1 +events_sunyshore_city_unknown_house_2 +events_sunyshore_city_east_house +events_vista_lighthouse +events_snowpoint_city +events_snowpoint_city_mart +events_snowpoint_city_gym +events_snowpoint_city_pokecenter_1f +events_snowpoint_city_pokecenter_2f +events_snowpoint_city_west_house +events_snowpoint_city_east_house +events_pokemon_league +events_pokemon_league_south_pokecenter_1f +events_pokemon_league_south_pokecenter_2f +events_pokemon_league_north_pokecenter_1f +events_pokemon_league_elevator_to_aaron_room +events_pokemon_league_aaron_room +events_pokemon_league_elevator_to_bertha_room +events_pokemon_league_bertha_room +events_pokemon_league_elevator_to_flint_room +events_pokemon_league_flint_room +events_pokemon_league_elevator_to_lucian_room +events_pokemon_league_lucian_room +events_pokemon_league_elevator_to_champion_room +events_pokemon_league_champion_room +events_pokemon_league_elevator_to_hall_of_fame +events_pokemon_league_hall_of_fame +events_fight_area +events_fight_area_pokecenter_1f +events_fight_area_pokecenter_2f +events_fight_area_mart +events_battle_park_gate_to_fight_area +events_route_225_gate_to_fight_area +events_fight_area_middle_house +events_fight_area_south_house +events_unknown_map_197 +events_oreburgh_mine_b1f +events_oreburgh_mine_b2f +events_valley_windworks_outside +events_valley_windworks_building +events_eterna_forest_outside +events_eterna_forest +events_fuego_ironworks_outside +events_fuego_ironworks_building +events_mt_coronet_1f_south +events_mt_coronet_2f +events_mt_coronet_3f +events_mt_coronet_outside_north +events_mt_coronet_outside_south +events_mt_coronet_4f_rooms_1_and_2 +events_mt_coronet_4f_room_3 +events_mt_coronet_5f +events_mt_coronet_6f +events_mt_coronet_1f_tunnel_room +events_mt_coronet_1f_north_room_2 +events_mt_coronet_1f_north_room_1 +events_mt_coronet_b1f +events_spear_pillar +events_spear_pillar_distorted +events_pastoria_city_dp_great_marsh +events_solaceon_ruins_maniac_tunnel_room +events_solaceon_ruins_room_1 +events_solaceon_ruins_room_2_northeast_dead_end +events_solaceon_ruins_room_1_northwest_dead_end +events_solaceon_ruins_room_2 +events_solaceon_ruins_room_1_southeast_dead_end +events_solaceon_ruins_room_3 +events_solaceon_ruins_room_2_southeast_dead_end +events_solaceon_ruins_room_6_southeast_dead_end +events_solaceon_ruins_room_5_southwest_dead_end +events_solaceon_ruins_room_3_northwest_dead_end +events_solaceon_ruins_room_3_southwest_dead_end +events_solaceon_ruins_room_4 +events_solaceon_ruins_room_6 +events_solaceon_ruins_room_5 +events_solaceon_ruins_room_7 +events_solaceon_ruins_room_4_southeast_dead_end +events_solaceon_ruins_room_6_northwest_dead_end +events_victory_road_1f +events_victory_road_2f +events_victory_road_b1f +events_victory_road_1f_room_2 +events_victory_road_1f_room_1 +events_victory_road_1f_room_3 +events_unknown_map_250 +events_pal_park +events_amity_square +events_ravaged_path +events_unknown_map_255 +events_floaroma_meadow +events_floaroma_meadow_house +events_oreburgh_gate_1f +events_oreburgh_gate_b1f +events_fullmoon_island +events_fullmoon_island_forest +events_stark_mountain_outside +events_stark_mountain_room_1 +events_stark_mountain_room_2 +events_stark_mountain_room_3 +events_sendoff_spring +events_turnback_cave_entrance +events_turnback_cave_pillar_room +events_turnback_cave_giratina_room +events_turnback_cave_pillar_1_room_1 +events_turnback_cave_pillar_1_room_2 +events_turnback_cave_pillar_1_room_3 +events_flower_paradise +events_snowpoint_temple_1f +events_snowpoint_temple_b1f +events_snowpoint_temple_b2f +events_snowpoint_temple_b3f +events_snowpoint_temple_b4f +events_snowpoint_temple_b5f +events_wayward_cave_1f +events_wayward_cave_b1f +events_ruin_maniac_cave_short +events_trophy_garden +events_iron_island +events_iron_island_1f +events_iron_island_b1f_left_room +events_iron_island_b1f_right_room +events_iron_island_b2f_right_room +events_iron_island_b2f_left_room +events_iron_island_b3f +events_old_chateau +events_old_chateau_dining_area +events_old_chateau_side_rooms +events_old_chateau_corridor +events_old_chateau_back_west_room +events_old_chateau_back_middle_west_room +events_old_chateau_back_middle_room +events_old_chateau_back_middle_east_room +events_old_chateau_back_east_room +events_galactic_hq_1f +events_galactic_hq_2f +events_galactic_hq_3f +events_galactic_hq_4f +events_galactic_hq_b1f +events_galactic_hq_b2f +events_lake_verity_low_water +events_lake_verity +events_verity_cavern +events_lake_valor_drained +events_lake_valor +events_valor_cavern +events_lake_acuity_low_water +events_lake_acuity +events_acuity_cavern +events_newmoon_island +events_newmoon_island_forest +events_battle_park +events_battle_park_exchange_service_corner +events_battle_tower +events_battle_tower_elevator +events_battle_tower_corridor +events_battle_tower_corridor_multi +events_battle_tower_battle_room +events_battle_tower_multi_battle_room +events_communication_club_colosseum_2p +events_communication_club_colosseum_4p +events_verity_lakefront +events_verity_lakefront_unknown_house +events_valor_lakefront +events_restaurant +events_grand_lake_valor_lakefront_east_house +events_grand_lake_valor_lakefront_west_house +events_acuity_lakefront +events_spring_path +events_route_201 +events_route_202 +events_route_203 +events_route_204_south +events_route_204_north +events_route_205_south +events_route_205_house +events_route_205_north +events_route_206 +events_route_206_cycling_road_south_gate +events_gate_between_eterna_city_route_206 +events_route_207 +events_route_208 +events_route_208_house +events_route_209 +events_route_209_lost_tower_1f +events_route_209_lost_tower_2f +events_route_209_lost_tower_3f +events_route_209_lost_tower_4f +events_route_209_lost_tower_5f +events_route_210_south +events_route_210_north +events_route_210_grandma_wilma_house +events_route_211_west +events_route_211_east +events_route_212_north +events_pokemon_mansion +events_pokemon_mansion_maids_room +events_pokemon_mansion_office +events_route_212_south +events_route_212_house +events_route_213 +events_route_213_gate_to_pastoria_city +events_footstep_house +events_grand_lake_route_213_lobby +events_grand_lake_route_213_east_house +events_grand_lake_route_213_northwest_house +events_grand_lake_route_213_northeast_house +events_route_214 +events_route_214_gate_to_veilstone_city +events_route_215 +events_route_216 +events_route_216_house +events_route_217 +events_route_217_west_house +events_route_217_northeast_house +events_route_218 +events_route_218_gate_to_jubilife_city +events_route_218_gate_to_canalave_city +events_route_219 +events_route_221 +events_pal_park_lobby +events_route_221_house +events_route_222 +events_route_222_west_house +events_route_222_east_house +events_route_222_gate_to_sunyshore_city +events_route_224 +events_route_225 +events_route_227 +events_route_228 +events_route_229 +events_twinleaf_town +events_twinleaf_town_rival_house_1f +events_twinleaf_town_rival_house_2f +events_twinleaf_town_player_house_1f +events_twinleaf_town_player_house_2f +events_twinleaf_town_northeast_house +events_twinleaf_town_southwest_house +events_sandgem_town +events_sandgem_town_mart +events_sandgem_town_pokecenter_1f +events_sandgem_town_pokecenter_2f +events_sandgem_town_pokemon_research_lab +events_sandgem_town_counterpart_house_1f +events_sandgem_town_counterpart_house_2f +events_sandgem_town_house +events_floaroma_town +events_floaroma_town_mart +events_floaroma_town_pokecenter_1f +events_floaroma_town_pokecenter_2f +events_flower_shop +events_floaroma_town_southeast_house +events_floaroma_town_middle_house +events_solaceon_town +events_solaceon_town_mart +events_solaceon_town_pokecenter_1f +events_solaceon_town_pokecenter_2f +events_pokemon_day_care +events_solaceon_town_northeast_house +events_solaceon_town_pokemon_news_press +events_solaceon_town_north_house +events_solaceon_town_east_house +events_celestic_town +events_celestic_town_pokecenter_1f +events_celestic_town_pokecenter_2f +events_celestic_town_north_house +events_celestic_town_northwest_house +events_celestic_town_northeast_house +events_celestic_town_southwest_house +events_celestic_town_cave +events_survival_area +events_survival_area_mart +events_survival_area_pokecenter_1f +events_survival_area_pokecenter_2f +events_battleground +events_survival_area_south_house +events_survival_area_north_house +events_resort_area +events_resort_area_mart +events_resort_area_pokecenter_1f +events_resort_area_pokecenter_2f +events_resort_area_ribbon_syndicate_1f +events_resort_area_ribbon_syndicate_2f +events_resort_area_ribbon_syndicate_elevator +events_villa +events_resort_area_house +events_union_room +events_route_220 +events_route_223 +events_route_226 +events_route_230 +events_seabreak_path +events_jubilife_city_pokecenter_b1f +events_canalave_city_pokecenter_b1f +events_oreburgh_city_pokecenter_b1f +events_eterna_city_pokecenter_b1f +events_hearthome_city_pokecenter_b1f +events_pastoria_city_pokecenter_b1f +events_veilstone_city_pokecenter_b1f +events_sunyshore_city_pokecenter_b1f +events_snowpoint_city_pokecenter_b1f +events_pokemon_league_south_pokecenter_b1f +events_fight_area_pokecenter_b1f +events_sandgem_town_pokecenter_b1f +events_floaroma_town_pokecenter_b1f +events_solaceon_town_pokecenter_b1f +events_celestic_town_pokecenter_b1f +events_survival_area_pokecenter_b1f +events_resort_area_pokecenter_b1f +events_canalave_city_west_house +events_cafe +events_battle_tower_battle_salon +events_galactic_hq_control_room +events_pokemon_league_north_pokecenter_2f +events_pokemon_league_north_pokecenter_b1f +events_galactic_hq_laboratory +events_route_225_house +events_route_226_house +events_route_227_house +events_route_228_gate_to_route_226 +events_route_228_north_house +events_route_228_south_house +events_great_marsh_1 +events_great_marsh_2 +events_great_marsh_3 +events_great_marsh_4 +events_great_marsh_5 +events_great_marsh_6 +events_hall_of_origin +events_ruin_maniac_cave_long +events_maniac_tunnel +events_iron_island_house +events_solaceon_ruins_room_5_southeast_deadend +events_vista_lighthouse_elevator +events_jubilife_city_southwest_house_2f +events_turnback_cave_pillar_1_room_4 +events_turnback_cave_pillar_1_room_5 +events_turnback_cave_pillar_1_room_6 +events_turnback_cave_pillar_2_room_1 +events_turnback_cave_pillar_2_room_2 +events_turnback_cave_pillar_2_room_3 +events_turnback_cave_pillar_2_room_4 +events_turnback_cave_pillar_2_room_5 +events_turnback_cave_pillar_2_room_6 +events_turnback_cave_pillar_3_room_1 +events_turnback_cave_pillar_3_room_2 +events_turnback_cave_pillar_3_room_3 +events_turnback_cave_pillar_3_room_4 +events_turnback_cave_pillar_3_room_5 +events_turnback_cave_pillar_3_room_6 +events_unknown_map_535 +events_unknown_map_540 +events_unknown_map_546 +events_contest_hall_stage_no_contest +events_battle_frontier +events_battle_frontier_gate_to_fight_area +events_battle_factory +events_battle_hall +events_battle_castle +events_battle_arcade +events_veilstone_store_b1f +events_global_terminal_2f +events_global_terminal_3f +events_galactic_hq_hall +events_rotoms_room +events_distortion_world_1f +events_spear_pillar_dialga +events_spear_pillar_palkia +events_wifi_plaza_entrance +events_iron_island_iron_ruins +events_iron_ruins +events_mt_coronet_iceberg_ruins +events_iceberg_ruins +events_route_228_rock_peak_ruins +events_rock_peak_ruins diff --git a/res/graphics/meson.build b/res/graphics/meson.build index 45198f727c..bf69ba75ea 100644 --- a/res/graphics/meson.build +++ b/res/graphics/meson.build @@ -1,3 +1,4 @@ subdir('options_menu') +subdir('pokemon_summary_screen') subdir('signposts') subdir('windows') diff --git a/res/graphics/pokemon_summary_screen/a_button.png b/res/graphics/pokemon_summary_screen/a_button.png new file mode 100644 index 0000000000..749cb4dd4b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/a_button.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/balls_0.pal b/res/graphics/pokemon_summary_screen/balls/balls_0.pal new file mode 100644 index 0000000000..6976b8c9a9 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/balls/balls_0.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +106 131 98 +74 65 57 +246 255 255 +230 230 205 +255 164 156 +255 106 98 +213 65 57 +238 164 238 +197 106 238 +164 74 205 +255 238 148 +255 205 74 +255 172 41 +139 131 123 +189 189 164 +106 98 90 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/balls/balls_1.pal b/res/graphics/pokemon_summary_screen/balls/balls_1.pal new file mode 100644 index 0000000000..1ae84ffbbc --- /dev/null +++ b/res/graphics/pokemon_summary_screen/balls/balls_1.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +106 131 98 +74 65 57 +246 255 255 +230 230 205 +156 213 213 +106 197 189 +65 156 148 +180 197 98 +98 189 106 +65 139 65 +255 197 164 +205 164 131 +172 131 98 +156 148 139 +189 189 164 +106 98 90 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/balls/balls_2.pal b/res/graphics/pokemon_summary_screen/balls/balls_2.pal new file mode 100644 index 0000000000..90a2049c28 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/balls/balls_2.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +106 131 98 +74 65 57 +246 255 255 +230 230 205 +255 164 156 +255 106 98 +213 65 57 +180 189 213 +123 131 255 +90 98 205 +255 238 148 +255 205 74 +255 172 41 +139 131 123 +189 189 164 +106 98 90 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/balls/balls_3.pal b/res/graphics/pokemon_summary_screen/balls/balls_3.pal new file mode 100644 index 0000000000..8127c84bf0 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/balls/balls_3.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +90 180 213 +74 65 57 +255 255 255 +255 246 172 +246 197 213 +238 148 189 +131 115 164 +213 255 156 +139 213 106 +65 156 65 +255 222 246 +246 156 90 +255 90 8 +156 131 255 +213 205 156 +98 98 90 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/balls/cherish_ball.png b/res/graphics/pokemon_summary_screen/balls/cherish_ball.png new file mode 100644 index 0000000000..516785b816 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/cherish_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/dive_ball.png b/res/graphics/pokemon_summary_screen/balls/dive_ball.png new file mode 100644 index 0000000000..7a38483fac Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/dive_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/dusk_ball.png b/res/graphics/pokemon_summary_screen/balls/dusk_ball.png new file mode 100644 index 0000000000..167c5a6a9a Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/dusk_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/great_ball.png b/res/graphics/pokemon_summary_screen/balls/great_ball.png new file mode 100644 index 0000000000..3cb32a3e5b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/great_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/heal_ball.png b/res/graphics/pokemon_summary_screen/balls/heal_ball.png new file mode 100644 index 0000000000..1557fe55b9 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/heal_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/luxury_ball.png b/res/graphics/pokemon_summary_screen/balls/luxury_ball.png new file mode 100644 index 0000000000..b55a148bc6 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/luxury_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/master_ball.png b/res/graphics/pokemon_summary_screen/balls/master_ball.png new file mode 100644 index 0000000000..ab2b9704cf Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/master_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/nest_ball.png b/res/graphics/pokemon_summary_screen/balls/nest_ball.png new file mode 100644 index 0000000000..de986424a2 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/nest_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/net_ball.png b/res/graphics/pokemon_summary_screen/balls/net_ball.png new file mode 100644 index 0000000000..1064f6a47d Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/net_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/poke_ball.png b/res/graphics/pokemon_summary_screen/balls/poke_ball.png new file mode 100644 index 0000000000..1ef8b71772 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/poke_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/premier_ball.png b/res/graphics/pokemon_summary_screen/balls/premier_ball.png new file mode 100644 index 0000000000..97a27844a8 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/premier_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/quick_ball.png b/res/graphics/pokemon_summary_screen/balls/quick_ball.png new file mode 100644 index 0000000000..13f907a84e Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/quick_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/repeat_ball.png b/res/graphics/pokemon_summary_screen/balls/repeat_ball.png new file mode 100644 index 0000000000..b8666d028b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/repeat_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/safari_ball.png b/res/graphics/pokemon_summary_screen/balls/safari_ball.png new file mode 100644 index 0000000000..06255499a6 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/safari_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/timer_ball.png b/res/graphics/pokemon_summary_screen/balls/timer_ball.png new file mode 100644 index 0000000000..5feef7a9a0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/timer_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/balls/ultra_ball.png b/res/graphics/pokemon_summary_screen/balls/ultra_ball.png new file mode 100644 index 0000000000..2269447b18 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/balls/ultra_ball.png differ diff --git a/res/graphics/pokemon_summary_screen/condition_arrow.png b/res/graphics/pokemon_summary_screen/condition_arrow.png new file mode 100644 index 0000000000..f311797d1f Binary files /dev/null and b/res/graphics/pokemon_summary_screen/condition_arrow.png differ diff --git a/res/graphics/pokemon_summary_screen/condition_arrow_anim.json b/res/graphics/pokemon_summary_screen/condition_arrow_anim.json new file mode 100644 index 0000000000..db543ad2a9 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_arrow_anim.json @@ -0,0 +1,23 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 1, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }], + "resultCount": 1, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/condition_arrow_cell.json b/res/graphics/pokemon_summary_screen/condition_arrow_cell.json new file mode 100644 index 0000000000..0ee2120a39 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_arrow_cell.json @@ -0,0 +1,44 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 1, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 0 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/condition_dot.png b/res/graphics/pokemon_summary_screen/condition_dot.png new file mode 100644 index 0000000000..ea294611ee Binary files /dev/null and b/res/graphics/pokemon_summary_screen/condition_dot.png differ diff --git a/res/graphics/pokemon_summary_screen/condition_dot_anim.json b/res/graphics/pokemon_summary_screen/condition_dot_anim.json new file mode 100644 index 0000000000..d32e56aeea --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_dot_anim.json @@ -0,0 +1,75 @@ +{ + "labelEnabled": true, + "sequenceCount": 5, + "frameCount": 5, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 1 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 2 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 3 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 4 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 4 + }], + "resultCount": 5, + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime3", "CellAnime4"], + "labelCount": 5 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/condition_dot_cell.json b/res/graphics/pokemon_summary_screen/condition_dot_cell.json new file mode 100644 index 0000000000..3aa4fc3a70 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_dot_cell.json @@ -0,0 +1,180 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 5, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 1, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 2, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 3, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 0 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime3", "CellAnime4"], + "labelCount": 5 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/condition_dot_flash.png b/res/graphics/pokemon_summary_screen/condition_dot_flash.png new file mode 100644 index 0000000000..fc78e3b8e1 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/condition_dot_flash.png differ diff --git a/res/graphics/pokemon_summary_screen/condition_dot_flash_anim.json b/res/graphics/pokemon_summary_screen/condition_dot_flash_anim.json new file mode 100644 index 0000000000..dd058da6bf --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_dot_flash_anim.json @@ -0,0 +1,62 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 9, + "sequences": [{ + "frameCount": 9, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 8, + "resultId": 0 + }, { + "frameDelay": 2, + "resultId": 1 + }, { + "frameDelay": 2, + "resultId": 2 + }, { + "frameDelay": 2, + "resultId": 3 + }, { + "frameDelay": 2, + "resultId": 4 + }, { + "frameDelay": 2, + "resultId": 5 + }, { + "frameDelay": 2, + "resultId": 2 + }, { + "frameDelay": 2, + "resultId": 1 + }, { + "frameDelay": 64, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 4 + }, { + "resultType": 0, + "index": 5 + }], + "resultCount": 6, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/condition_dot_flash_cell.json b/res/graphics/pokemon_summary_screen/condition_dot_flash_cell.json new file mode 100644 index 0000000000..c2926947e5 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/condition_dot_flash_cell.json @@ -0,0 +1,214 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 6, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 12, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 16, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 20, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/dummy121.png b/res/graphics/pokemon_summary_screen/dummy121.png new file mode 100644 index 0000000000..6251b3dda3 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/dummy121.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_circle.png b/res/graphics/pokemon_summary_screen/marking_circle.png new file mode 100644 index 0000000000..bc7403d8ea Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_circle.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_diamond.png b/res/graphics/pokemon_summary_screen/marking_diamond.png new file mode 100644 index 0000000000..80e0c3cf00 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_diamond.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_heart.png b/res/graphics/pokemon_summary_screen/marking_heart.png new file mode 100644 index 0000000000..a704c8a28c Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_heart.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_square.png b/res/graphics/pokemon_summary_screen/marking_square.png new file mode 100644 index 0000000000..2e1758054c Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_square.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_star.png b/res/graphics/pokemon_summary_screen/marking_star.png new file mode 100644 index 0000000000..1ae4cf3fc0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_star.png differ diff --git a/res/graphics/pokemon_summary_screen/marking_triangle.png b/res/graphics/pokemon_summary_screen/marking_triangle.png new file mode 100644 index 0000000000..ca68c0161d Binary files /dev/null and b/res/graphics/pokemon_summary_screen/marking_triangle.png differ diff --git a/res/graphics/pokemon_summary_screen/markings_anim.json b/res/graphics/pokemon_summary_screen/markings_anim.json new file mode 100644 index 0000000000..f27cb62403 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/markings_anim.json @@ -0,0 +1,36 @@ +{ + "labelEnabled": true, + "sequenceCount": 2, + "frameCount": 2, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 1 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }], + "resultCount": 2, + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/markings_cell.json b/res/graphics/pokemon_summary_screen/markings_cell.json new file mode 100644 index 0000000000..381b26da48 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/markings_cell.json @@ -0,0 +1,78 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 2, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 3 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 3, + "minX": -4, + "minY": -4, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 252, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 1, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/meson.build b/res/graphics/pokemon_summary_screen/meson.build new file mode 100644 index 0000000000..be8a636db7 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/meson.build @@ -0,0 +1,239 @@ +# Tiles and tilemaps +tiles_ncgr = ncgr_gen.process(files('tiles_main.png','tiles_sub.png'), + extra_args: [ + '-sopc', + '-version101', + ], +) + +tilemaps_nscr = copy_gen.process(files( + 'tiles_sub.NSCR', + 'page_info.NSCR', + 'page_memo.NSCR', + 'page_skills.NSCR', + 'page_battle_moves.NSCR', + 'page_condition.NSCR', + 'page_contest_moves.NSCR', + 'page_ribbons.NSCR', + 'page_exit.NSCR', + 'move_info.NSCR', + 'page_battle_moves_select_mode.NSCR', + 'page_contest_moves_select_mode.NSCR', +)) + +# Sprite images +sprites_png_sopc = files( + 'sub_buttons.png', +) + +sprites_png_clobbersize = files( + 'condition_arrow.png', + 'a_button.png', + 'ribbon_arrow.png', + 'condition_dot.png', + 'condition_dot_flash.png', + 'marking_circle.png', + 'marking_star.png', + 'marking_diamond.png', + 'marking_square.png', + 'marking_triangle.png', + 'marking_heart.png', + 'shiny_and_pokerus_cured_icon.png', + 'tab_arrow.png', + 'status_icons.png', + 'sheen.png', + 'ribbon_cursor.png', + 'dummy121.png', + 'ribbon_flash.png', + 'tabs.png', + 'move_cursor.png', + 'pokerus_icon.png', +) + +balls_dir = 'balls/' + +balls_png = files( + balls_dir / 'master_ball.png', + balls_dir / 'ultra_ball.png', + balls_dir / 'great_ball.png', + balls_dir / 'poke_ball.png', + balls_dir / 'safari_ball.png', + balls_dir / 'net_ball.png', + balls_dir / 'dive_ball.png', + balls_dir / 'nest_ball.png', + balls_dir / 'repeat_ball.png', + balls_dir / 'timer_ball.png', + balls_dir / 'luxury_ball.png', + balls_dir / 'premier_ball.png', + balls_dir / 'dusk_ball.png', + balls_dir / 'heal_ball.png', + balls_dir / 'quick_ball.png', + balls_dir / 'cherish_ball.png', +) + +ribbons_dir = 'ribbons/' + +ribbons_png = files( + ribbons_dir / 'hoenn_champion.png', + ribbons_dir / 'hoenn_contest.png', + ribbons_dir / 'hoenn_contest_super.png', + ribbons_dir / 'hoenn_contest_hyper.png', + ribbons_dir / 'hoenn_contest_master.png', + ribbons_dir / 'hoenn_victory.png', + ribbons_dir / 'hoenn_winning.png', + ribbons_dir / 'hoenn_artist.png', + ribbons_dir / 'hoenn_effort.png', + ribbons_dir / 'hoenn_marine_land_sky.png', + ribbons_dir / 'hoenn_country_national.png', + ribbons_dir / 'hoenn_earth_world.png', + ribbons_dir / 'dummy_12.png', + ribbons_dir / 'dummy_13.png', + ribbons_dir / 'dummy_14.png', + ribbons_dir / 'dummy_15.png', + ribbons_dir / 'sinnoh_champion.png', + ribbons_dir / 'sinnoh_contest.png', + ribbons_dir / 'sinnoh_contest_great.png', + ribbons_dir / 'sinnoh_contest_ultra.png', + ribbons_dir / 'sinnoh_contest_master.png', + ribbons_dir / 'ability.png', + ribbons_dir / 'great_ability.png', + ribbons_dir / 'double_ability.png', + ribbons_dir / 'multi_ability.png', + ribbons_dir / 'pair_ability.png', + ribbons_dir / 'world_ability.png', + ribbons_dir / 'alert.png', + ribbons_dir / 'shock.png', + ribbons_dir / 'downcast.png', + ribbons_dir / 'careless.png', + ribbons_dir / 'relax.png', + ribbons_dir / 'snooze.png', + ribbons_dir / 'smile.png', + ribbons_dir / 'gorgeous.png', + ribbons_dir / 'royal.png', + ribbons_dir / 'gorgeous_royal.png', + ribbons_dir / 'footprint.png', + ribbons_dir / 'record.png', + ribbons_dir / 'history.png', + ribbons_dir / 'legend.png', + ribbons_dir / 'red.png', + ribbons_dir / 'green.png', + ribbons_dir / 'blue.png', + ribbons_dir / 'festival.png', + ribbons_dir / 'carnival.png', + ribbons_dir / 'classic.png', + ribbons_dir / 'premier.png', +) + +sprites_ncgr_sopc = ncgr_gen.process(sprites_png_sopc, + extra_args: [ + '-version101', + '-sopc', + ], +) + +sprites_ncgr_clobbersize = ncgr_gen.process( + sprites_png_clobbersize, + balls_png, + ribbons_png, + extra_args: [ + '-version101', + '-clobbersize', + ], +) + +# Sprite cells +sprites_cell_json = files( + 'condition_arrow_cell.json', + 'ribbon_arrow_cell.json', + 'condition_dot_cell.json', + 'condition_dot_flash_cell.json', + 'markings_cell.json', + 'tab_arrow_cell.json', + 'status_icons_cell.json', + 'sheen_cell.json', + ribbons_dir / 'ribbons_cell.json', + 'ribbon_flash_cell.json', + 'ribbon_cursor_cell.json', + 'tabs_cell.json', + 'move_cursor_cell.json', + 'pokerus_icon_cell.json', +) + +sprites_ncer = ncer_gen.process(sprites_cell_json) + +# Sprite anims +sprites_anim_json = files( + 'condition_arrow_anim.json', + 'ribbon_arrow_anim.json', + 'condition_dot_anim.json', + 'condition_dot_flash_anim.json', + 'markings_anim.json', + 'tab_arrow_anim.json', + 'status_icons_anim.json', + 'sheen_anim.json', + ribbons_dir / 'ribbons_anim.json', + 'ribbon_flash_anim.json', + 'ribbon_cursor_anim.json', + 'tabs_anim.json', + 'move_cursor_anim.json', + 'pokerus_icon_anim.json', +) + +sprites_nanr = nanr_gen.process(sprites_anim_json) + +# Palettes +palettes_pal_4bpp = files( + 'tiles_main.pal', + 'tiles_sub.pal', + balls_dir / 'balls_0.pal', + balls_dir / 'balls_1.pal', + balls_dir / 'balls_2.pal', + balls_dir / 'balls_3.pal', + 'status_icons.pal', + 'sprites.pal', +) + +palettes_nclr_4bpp = nclr_gen.process(palettes_pal_4bpp, + extra_args: [ + '-bitdepth', '4', + ], +) + +palettes_pal_8bpp = files( + ribbons_dir / 'ribbons.pal', +) + +palettes_nclr_8bpp = nclr_gen.process(palettes_pal_8bpp, + extra_args: [ + '-bitdepth', '8', + ], +) + +pokemon_summary_screen_order = files('pokemon_summary_screen.order') +pokemon_summary_screen_narc = custom_target('pl_pst_gra.narc', + output: [ + 'pl_pst_gra.narc', + 'pl_pst_gra.naix', + ], + input: [ + tiles_ncgr, + tilemaps_nscr, + sprites_ncgr_sopc, + sprites_ncgr_clobbersize, + sprites_ncer, + sprites_nanr, + palettes_nclr_4bpp, + palettes_nclr_8bpp, + pokemon_summary_screen_order, + ], + command: [ + knarc_exe, + '-d', '@PRIVATE_DIR@', + '-p', '@OUTPUT0@', + '--order', pokemon_summary_screen_order, + '--naix', + ] +) + +nitrofs_files += pokemon_summary_screen_narc[0] +naix_headers += pokemon_summary_screen_narc[1] diff --git a/res/graphics/pokemon_summary_screen/move_cursor.png b/res/graphics/pokemon_summary_screen/move_cursor.png new file mode 100644 index 0000000000..fa5fe76c2c Binary files /dev/null and b/res/graphics/pokemon_summary_screen/move_cursor.png differ diff --git a/res/graphics/pokemon_summary_screen/move_cursor_anim.json b/res/graphics/pokemon_summary_screen/move_cursor_anim.json new file mode 100644 index 0000000000..12d316fc30 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/move_cursor_anim.json @@ -0,0 +1,36 @@ +{ + "labelEnabled": true, + "sequenceCount": 2, + "frameCount": 2, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 0 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 1 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }], + "resultCount": 2, + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/move_cursor_cell.json b/res/graphics/pokemon_summary_screen/move_cursor_cell.json new file mode 100644 index 0000000000..e49717ba02 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/move_cursor_cell.json @@ -0,0 +1,118 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 2, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": true, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 17 + }, + "maxX": 63, + "maxY": 15, + "minX": -64, + "minY": -16, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 240, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 448, + "RotationScaling": 0, + "Size": 3 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 240, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 8, + "Size": 3 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": true, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 17 + }, + "maxX": 63, + "maxY": 15, + "minX": -64, + "minY": -16, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 240, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 8, + "Size": 3 + }, + "Attr2": { + "CharName": 32, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 240, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 448, + "RotationScaling": 0, + "Size": 3 + }, + "Attr2": { + "CharName": 32, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/move_info.NSCR b/res/graphics/pokemon_summary_screen/move_info.NSCR new file mode 100644 index 0000000000..e6d0f0344a Binary files /dev/null and b/res/graphics/pokemon_summary_screen/move_info.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_battle_moves.NSCR b/res/graphics/pokemon_summary_screen/page_battle_moves.NSCR new file mode 100644 index 0000000000..dc1e95914b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_battle_moves.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_battle_moves_select_mode.NSCR b/res/graphics/pokemon_summary_screen/page_battle_moves_select_mode.NSCR new file mode 100644 index 0000000000..3f0f12c4e5 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_battle_moves_select_mode.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_condition.NSCR b/res/graphics/pokemon_summary_screen/page_condition.NSCR new file mode 100644 index 0000000000..8bff6bf2f6 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_condition.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_contest_moves.NSCR b/res/graphics/pokemon_summary_screen/page_contest_moves.NSCR new file mode 100644 index 0000000000..a1db061761 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_contest_moves.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_contest_moves_select_mode.NSCR b/res/graphics/pokemon_summary_screen/page_contest_moves_select_mode.NSCR new file mode 100644 index 0000000000..423c8f3ae7 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_contest_moves_select_mode.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_exit.NSCR b/res/graphics/pokemon_summary_screen/page_exit.NSCR new file mode 100644 index 0000000000..dd4d1422bb Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_exit.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_info.NSCR b/res/graphics/pokemon_summary_screen/page_info.NSCR new file mode 100644 index 0000000000..c81b9f5e34 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_info.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_memo.NSCR b/res/graphics/pokemon_summary_screen/page_memo.NSCR new file mode 100644 index 0000000000..ef67d0c228 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_memo.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_ribbons.NSCR b/res/graphics/pokemon_summary_screen/page_ribbons.NSCR new file mode 100644 index 0000000000..622f523387 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_ribbons.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/page_skills.NSCR b/res/graphics/pokemon_summary_screen/page_skills.NSCR new file mode 100644 index 0000000000..17e16ebacb Binary files /dev/null and b/res/graphics/pokemon_summary_screen/page_skills.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/pokemon_summary_screen.order b/res/graphics/pokemon_summary_screen/pokemon_summary_screen.order new file mode 100644 index 0000000000..9c144d8eee --- /dev/null +++ b/res/graphics/pokemon_summary_screen/pokemon_summary_screen.order @@ -0,0 +1,137 @@ +tiles_main.NCGR +tiles_main.NCLR +sub_buttons.NCGR +page_info.NSCR +page_memo.NSCR +page_skills.NSCR +page_battle_moves.NSCR +page_condition.NSCR +page_contest_moves.NSCR +page_ribbons.NSCR +page_exit.NSCR +move_info.NSCR +page_battle_moves_select_mode.NSCR +page_contest_moves_select_mode.NSCR +tiles_sub.NCLR +tiles_sub.NSCR +tiles_sub.NCGR +condition_arrow_anim.NANR +condition_arrow_cell.NCER +condition_arrow.NCGR +a_button.NCGR +master_ball.NCGR +ultra_ball.NCGR +great_ball.NCGR +poke_ball.NCGR +safari_ball.NCGR +net_ball.NCGR +dive_ball.NCGR +nest_ball.NCGR +repeat_ball.NCGR +timer_ball.NCGR +luxury_ball.NCGR +premier_ball.NCGR +dusk_ball.NCGR +heal_ball.NCGR +quick_ball.NCGR +cherish_ball.NCGR +balls_0.NCLR +balls_1.NCLR +balls_2.NCLR +balls_3.NCLR +ribbon_arrow_anim.NANR +ribbon_arrow_cell.NCER +ribbon_arrow.NCGR +condition_dot_anim.NANR +condition_dot_cell.NCER +condition_dot.NCGR +condition_dot_flash_anim.NANR +condition_dot_flash_cell.NCER +condition_dot_flash.NCGR +markings_anim.NANR +markings_cell.NCER +marking_circle.NCGR +marking_star.NCGR +marking_diamond.NCGR +marking_square.NCGR +marking_triangle.NCGR +marking_heart.NCGR +shiny_and_pokerus_cured_icon.NCGR +tab_arrow_anim.NANR +tab_arrow_cell.NCER +tab_arrow.NCGR +status_icons_anim.NANR +status_icons_cell.NCER +status_icons.NCGR +status_icons.NCLR +sheen_anim.NANR +sheen_cell.NCER +sheen.NCGR +sprites.NCLR +ribbons_anim.NANR +ribbons_cell.NCER +hoenn_champion.NCGR +hoenn_contest.NCGR +hoenn_contest_super.NCGR +hoenn_contest_hyper.NCGR +hoenn_contest_master.NCGR +hoenn_victory.NCGR +hoenn_winning.NCGR +hoenn_artist.NCGR +hoenn_effort.NCGR +hoenn_marine_land_sky.NCGR +hoenn_country_national.NCGR +hoenn_earth_world.NCGR +dummy_12.NCGR +dummy_13.NCGR +dummy_14.NCGR +dummy_15.NCGR +sinnoh_champion.NCGR +sinnoh_contest.NCGR +sinnoh_contest_great.NCGR +sinnoh_contest_ultra.NCGR +sinnoh_contest_master.NCGR +ability.NCGR +great_ability.NCGR +double_ability.NCGR +multi_ability.NCGR +pair_ability.NCGR +world_ability.NCGR +alert.NCGR +shock.NCGR +downcast.NCGR +careless.NCGR +relax.NCGR +snooze.NCGR +smile.NCGR +gorgeous.NCGR +royal.NCGR +gorgeous_royal.NCGR +footprint.NCGR +record.NCGR +history.NCGR +legend.NCGR +red.NCGR +green.NCGR +blue.NCGR +festival.NCGR +carnival.NCGR +classic.NCGR +premier.NCGR +ribbon_cursor.NCGR +dummy121.NCGR +ribbon_flash_anim.NANR +ribbon_flash_cell.NCER +ribbon_flash.NCGR +ribbon_cursor_cell.NCER +ribbon_cursor_anim.NANR +tabs_anim.NANR +tabs_cell.NCER +tabs.NCGR +move_cursor_anim.NANR +move_cursor_cell.NCER +move_cursor.NCGR +pokerus_icon_anim.NANR +pokerus_icon_cell.NCER +pokerus_icon.NCGR +ribbons.NCLR diff --git a/res/graphics/pokemon_summary_screen/pokerus_icon.png b/res/graphics/pokemon_summary_screen/pokerus_icon.png new file mode 100644 index 0000000000..1cd2e5cb38 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/pokerus_icon.png differ diff --git a/res/graphics/pokemon_summary_screen/pokerus_icon_anim.json b/res/graphics/pokemon_summary_screen/pokerus_icon_anim.json new file mode 100644 index 0000000000..a3c7c4f00f --- /dev/null +++ b/res/graphics/pokemon_summary_screen/pokerus_icon_anim.json @@ -0,0 +1,23 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 1, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }], + "resultCount": 1, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/pokerus_icon_cell.json b/res/graphics/pokemon_summary_screen/pokerus_icon_cell.json new file mode 100644 index 0000000000..bb9b0b8505 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/pokerus_icon_cell.json @@ -0,0 +1,64 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 1, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 6 + }, + "maxX": 19, + "maxY": 7, + "minX": -20, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 492, + "RotationScaling": 0, + "Size": 2 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 1 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 12, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 1 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_arrow.png b/res/graphics/pokemon_summary_screen/ribbon_arrow.png new file mode 100644 index 0000000000..b10c7374c4 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbon_arrow.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbon_arrow_anim.json b/res/graphics/pokemon_summary_screen/ribbon_arrow_anim.json new file mode 100644 index 0000000000..d0178878c5 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_arrow_anim.json @@ -0,0 +1,100 @@ +{ + "labelEnabled": true, + "sequenceCount": 2, + "frameCount": 12, + "sequences": [{ + "frameCount": 6, + "loopStartFrame": 0, + "animationElement": 2, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }, { + "frameDelay": 4, + "resultId": 1 + }, { + "frameDelay": 4, + "resultId": 2 + }, { + "frameDelay": 4, + "resultId": 3 + }, { + "frameDelay": 4, + "resultId": 2 + }, { + "frameDelay": 4, + "resultId": 1 + }] + }, { + "frameCount": 6, + "loopStartFrame": 0, + "animationElement": 2, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 4 + }, { + "frameDelay": 4, + "resultId": 5 + }, { + "frameDelay": 4, + "resultId": 6 + }, { + "frameDelay": 4, + "resultId": 7 + }, { + "frameDelay": 4, + "resultId": 6 + }, { + "frameDelay": 4, + "resultId": 5 + }] + }], + "animationResults": [{ + "resultType": 2, + "index": 0, + "positionX": 0, + "positionY": 0 + }, { + "resultType": 2, + "index": 0, + "positionX": 0, + "positionY": 1 + }, { + "resultType": 2, + "index": 0, + "positionX": 0, + "positionY": 2 + }, { + "resultType": 2, + "index": 0, + "positionX": 0, + "positionY": 3 + }, { + "resultType": 2, + "index": 1, + "positionX": 0, + "positionY": 0 + }, { + "resultType": 2, + "index": 1, + "positionX": 0, + "positionY": -1 + }, { + "resultType": 2, + "index": 1, + "positionX": 0, + "positionY": -2 + }, { + "resultType": 2, + "index": 1, + "positionX": 0, + "positionY": -3 + }], + "resultCount": 8, + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_arrow_cell.json b/res/graphics/pokemon_summary_screen/ribbon_arrow_cell.json new file mode 100644 index 0000000000..132f797107 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_arrow_cell.json @@ -0,0 +1,78 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 2, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 1 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_cursor.png b/res/graphics/pokemon_summary_screen/ribbon_cursor.png new file mode 100644 index 0000000000..6458532612 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbon_cursor.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbon_cursor_anim.json b/res/graphics/pokemon_summary_screen/ribbon_cursor_anim.json new file mode 100644 index 0000000000..2cd09ec5dd --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_cursor_anim.json @@ -0,0 +1,23 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 1, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }], + "resultCount": 1, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_cursor_cell.json b/res/graphics/pokemon_summary_screen/ribbon_cursor_cell.json new file mode 100644 index 0000000000..4bdc6b48be --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_cursor_cell.json @@ -0,0 +1,104 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 1, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 9 + }, + "maxX": 23, + "maxY": 23, + "minX": -24, + "minY": -24, + "oamCount": 4, + "OAM": [{ + "Attr0": { + "YCoordinate": 232, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 488, + "RotationScaling": 0, + "Size": 2 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 232, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 2 + }, + "Attr2": { + "CharName": 16, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 8, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 488, + "RotationScaling": 0, + "Size": 2 + }, + "Attr2": { + "CharName": 24, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 8, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 32, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_flash.png b/res/graphics/pokemon_summary_screen/ribbon_flash.png new file mode 100644 index 0000000000..b274a04883 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbon_flash.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbon_flash_anim.json b/res/graphics/pokemon_summary_screen/ribbon_flash_anim.json new file mode 100644 index 0000000000..7deaf3834e --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_flash_anim.json @@ -0,0 +1,80 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 11, + "sequences": [{ + "frameCount": 11, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 2, + "resultId": 0 + }, { + "frameDelay": 2, + "resultId": 1 + }, { + "frameDelay": 2, + "resultId": 2 + }, { + "frameDelay": 2, + "resultId": 3 + }, { + "frameDelay": 2, + "resultId": 4 + }, { + "frameDelay": 2, + "resultId": 5 + }, { + "frameDelay": 2, + "resultId": 6 + }, { + "frameDelay": 2, + "resultId": 7 + }, { + "frameDelay": 2, + "resultId": 8 + }, { + "frameDelay": 2, + "resultId": 9 + }, { + "frameDelay": 32, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 4 + }, { + "resultType": 0, + "index": 5 + }, { + "resultType": 0, + "index": 6 + }, { + "resultType": 0, + "index": 7 + }, { + "resultType": 0, + "index": 8 + }, { + "resultType": 0, + "index": 9 + }], + "resultCount": 10, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbon_flash_cell.json b/res/graphics/pokemon_summary_screen/ribbon_flash_cell.json new file mode 100644 index 0000000000..6e02a536b3 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbon_flash_cell.json @@ -0,0 +1,350 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 10, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 12, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 16, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 20, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 24, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 28, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 32, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 36, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbons/ability.png b/res/graphics/pokemon_summary_screen/ribbons/ability.png new file mode 100644 index 0000000000..4372328508 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/ability.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/alert.png b/res/graphics/pokemon_summary_screen/ribbons/alert.png new file mode 100644 index 0000000000..bd9a931b44 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/alert.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/blue.png b/res/graphics/pokemon_summary_screen/ribbons/blue.png new file mode 100644 index 0000000000..dde3c32367 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/blue.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/careless.png b/res/graphics/pokemon_summary_screen/ribbons/careless.png new file mode 100644 index 0000000000..6e944cdfcb Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/careless.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/carnival.png b/res/graphics/pokemon_summary_screen/ribbons/carnival.png new file mode 100644 index 0000000000..fd3acdc0d4 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/carnival.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/classic.png b/res/graphics/pokemon_summary_screen/ribbons/classic.png new file mode 100644 index 0000000000..ee3edc99b0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/classic.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/double_ability.png b/res/graphics/pokemon_summary_screen/ribbons/double_ability.png new file mode 100644 index 0000000000..13d6e365b6 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/double_ability.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/downcast.png b/res/graphics/pokemon_summary_screen/ribbons/downcast.png new file mode 100644 index 0000000000..e2d3b487b3 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/downcast.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/dummy_12.png b/res/graphics/pokemon_summary_screen/ribbons/dummy_12.png new file mode 100644 index 0000000000..15eb9866a9 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/dummy_12.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/dummy_13.png b/res/graphics/pokemon_summary_screen/ribbons/dummy_13.png new file mode 100644 index 0000000000..d35844bff1 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/dummy_13.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/dummy_14.png b/res/graphics/pokemon_summary_screen/ribbons/dummy_14.png new file mode 100644 index 0000000000..b8dd809dd4 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/dummy_14.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/dummy_15.png b/res/graphics/pokemon_summary_screen/ribbons/dummy_15.png new file mode 100644 index 0000000000..c7dc8a9f62 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/dummy_15.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/festival.png b/res/graphics/pokemon_summary_screen/ribbons/festival.png new file mode 100644 index 0000000000..221da890d5 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/festival.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/footprint.png b/res/graphics/pokemon_summary_screen/ribbons/footprint.png new file mode 100644 index 0000000000..98a812f54f Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/footprint.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/gorgeous.png b/res/graphics/pokemon_summary_screen/ribbons/gorgeous.png new file mode 100644 index 0000000000..becf6a6a1f Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/gorgeous.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/gorgeous_royal.png b/res/graphics/pokemon_summary_screen/ribbons/gorgeous_royal.png new file mode 100644 index 0000000000..a27f5919b0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/gorgeous_royal.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/great_ability.png b/res/graphics/pokemon_summary_screen/ribbons/great_ability.png new file mode 100644 index 0000000000..c69a81c7a0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/great_ability.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/green.png b/res/graphics/pokemon_summary_screen/ribbons/green.png new file mode 100644 index 0000000000..dde3c32367 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/green.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/history.png b/res/graphics/pokemon_summary_screen/ribbons/history.png new file mode 100644 index 0000000000..69493504ee Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/history.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_artist.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_artist.png new file mode 100644 index 0000000000..32be50ca82 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_artist.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_champion.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_champion.png new file mode 100644 index 0000000000..7aa33c3d56 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_champion.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest.png new file mode 100644 index 0000000000..ff1a18e374 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_hyper.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_hyper.png new file mode 100644 index 0000000000..a0687feef0 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_hyper.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_master.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_master.png new file mode 100644 index 0000000000..33acea019c Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_master.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_super.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_super.png new file mode 100644 index 0000000000..f6baff5cb7 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_contest_super.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_country_national.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_country_national.png new file mode 100644 index 0000000000..af9b1c2644 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_country_national.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_earth_world.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_earth_world.png new file mode 100644 index 0000000000..15eb9866a9 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_earth_world.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_effort.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_effort.png new file mode 100644 index 0000000000..3a4b6c0a68 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_effort.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_marine_land_sky.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_marine_land_sky.png new file mode 100644 index 0000000000..e22b94ea3e Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_marine_land_sky.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_victory.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_victory.png new file mode 100644 index 0000000000..03e992884d Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_victory.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/hoenn_winning.png b/res/graphics/pokemon_summary_screen/ribbons/hoenn_winning.png new file mode 100644 index 0000000000..da06f269d4 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/hoenn_winning.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/legend.png b/res/graphics/pokemon_summary_screen/ribbons/legend.png new file mode 100644 index 0000000000..669b69004d Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/legend.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/multi_ability.png b/res/graphics/pokemon_summary_screen/ribbons/multi_ability.png new file mode 100644 index 0000000000..5483eaafb9 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/multi_ability.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/pair_ability.png b/res/graphics/pokemon_summary_screen/ribbons/pair_ability.png new file mode 100644 index 0000000000..6dbf6514dd Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/pair_ability.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/premier.png b/res/graphics/pokemon_summary_screen/ribbons/premier.png new file mode 100644 index 0000000000..53d8df1630 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/premier.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/record.png b/res/graphics/pokemon_summary_screen/ribbons/record.png new file mode 100644 index 0000000000..72b637303a Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/record.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/red.png b/res/graphics/pokemon_summary_screen/ribbons/red.png new file mode 100644 index 0000000000..dde3c32367 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/red.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/relax.png b/res/graphics/pokemon_summary_screen/ribbons/relax.png new file mode 100644 index 0000000000..e2d3b487b3 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/relax.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/ribbons.pal b/res/graphics/pokemon_summary_screen/ribbons/ribbons.pal new file mode 100644 index 0000000000..fb70af945e --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbons/ribbons.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +197 197 246 +74 74 82 +139 139 156 +222 222 230 +255 255 255 +246 246 98 +197 197 98 +156 156 32 +197 65 65 +238 90 65 +164 98 205 +197 106 255 +0 0 0 +0 197 255 +0 0 0 +0 0 0 +197 197 246 +74 74 82 +139 139 156 +222 222 230 +255 255 255 +246 246 98 +197 197 98 +156 156 32 +98 123 197 +98 156 255 +0 0 0 +0 0 0 +0 0 0 +98 238 0 +74 90 180 +90 115 238 +197 197 246 +74 74 82 +139 139 156 +222 222 230 +255 255 255 +246 246 98 +197 197 98 +156 156 32 +205 115 131 +246 156 172 +197 98 82 +238 139 65 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +197 197 246 +74 74 82 +139 139 156 +222 222 230 +255 255 255 +246 246 98 +197 197 98 +156 156 32 +106 213 82 +180 246 115 +156 156 172 +222 222 205 +0 0 0 +139 139 213 +148 106 82 +205 172 98 +197 197 246 +74 74 82 +139 139 156 +222 222 230 +255 255 255 +246 246 98 +197 197 98 +156 156 32 +197 164 65 +255 222 65 +189 189 57 +238 238 65 +0 0 0 +238 90 65 +90 139 230 +90 172 255 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/ribbons/ribbons_anim.json b/res/graphics/pokemon_summary_screen/ribbons/ribbons_anim.json new file mode 100644 index 0000000000..2cd09ec5dd --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbons/ribbons_anim.json @@ -0,0 +1,23 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 1, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }], + "resultCount": 1, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbons/ribbons_cell.json b/res/graphics/pokemon_summary_screen/ribbons/ribbons_cell.json new file mode 100644 index 0000000000..e34bedb986 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/ribbons/ribbons_cell.json @@ -0,0 +1,44 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 1, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 6 + }, + "maxX": 15, + "maxY": 15, + "minX": -16, + "minY": -16, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 240, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 2 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 0 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/ribbons/royal.png b/res/graphics/pokemon_summary_screen/ribbons/royal.png new file mode 100644 index 0000000000..b24ffd6f04 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/royal.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/shock.png b/res/graphics/pokemon_summary_screen/ribbons/shock.png new file mode 100644 index 0000000000..e2d3b487b3 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/shock.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/sinnoh_champion.png b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_champion.png new file mode 100644 index 0000000000..cf5585c5b7 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_champion.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest.png b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest.png new file mode 100644 index 0000000000..23a02e9697 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_great.png b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_great.png new file mode 100644 index 0000000000..e2a0dd6654 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_great.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_master.png b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_master.png new file mode 100644 index 0000000000..1b2f5aad89 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_master.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_ultra.png b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_ultra.png new file mode 100644 index 0000000000..c23da36d10 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/sinnoh_contest_ultra.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/smile.png b/res/graphics/pokemon_summary_screen/ribbons/smile.png new file mode 100644 index 0000000000..e2d3b487b3 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/smile.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/snooze.png b/res/graphics/pokemon_summary_screen/ribbons/snooze.png new file mode 100644 index 0000000000..bd9a931b44 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/snooze.png differ diff --git a/res/graphics/pokemon_summary_screen/ribbons/world_ability.png b/res/graphics/pokemon_summary_screen/ribbons/world_ability.png new file mode 100644 index 0000000000..6edda9ec2a Binary files /dev/null and b/res/graphics/pokemon_summary_screen/ribbons/world_ability.png differ diff --git a/res/graphics/pokemon_summary_screen/sheen.png b/res/graphics/pokemon_summary_screen/sheen.png new file mode 100644 index 0000000000..8832aba72b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/sheen.png differ diff --git a/res/graphics/pokemon_summary_screen/sheen_anim.json b/res/graphics/pokemon_summary_screen/sheen_anim.json new file mode 100644 index 0000000000..1644d7f266 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/sheen_anim.json @@ -0,0 +1,56 @@ +{ + "labelEnabled": true, + "sequenceCount": 1, + "frameCount": 7, + "sequences": [{ + "frameCount": 7, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 3, + "resultId": 0 + }, { + "frameDelay": 3, + "resultId": 1 + }, { + "frameDelay": 3, + "resultId": 2 + }, { + "frameDelay": 3, + "resultId": 3 + }, { + "frameDelay": 3, + "resultId": 4 + }, { + "frameDelay": 3, + "resultId": 5 + }, { + "frameDelay": 3, + "resultId": 0 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 4 + }, { + "resultType": 0, + "index": 5 + }], + "resultCount": 6, + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/sheen_cell.json b/res/graphics/pokemon_summary_screen/sheen_cell.json new file mode 100644 index 0000000000..d6b4522b07 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/sheen_cell.json @@ -0,0 +1,214 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 6, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 2, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 6, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": 0, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 10, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0"], + "labelCount": 1 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/shiny_and_pokerus_cured_icon.png b/res/graphics/pokemon_summary_screen/shiny_and_pokerus_cured_icon.png new file mode 100644 index 0000000000..233b9dcd0b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/shiny_and_pokerus_cured_icon.png differ diff --git a/res/graphics/pokemon_summary_screen/sprites.pal b/res/graphics/pokemon_summary_screen/sprites.pal new file mode 100644 index 0000000000..1bdd5b208c --- /dev/null +++ b/res/graphics/pokemon_summary_screen/sprites.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +205 213 197 +74 65 57 +246 255 255 +230 230 205 +255 164 156 +255 106 98 +213 65 57 +238 164 238 +197 106 238 +164 74 205 +255 238 148 +255 205 74 +255 172 41 +139 131 123 +189 189 164 +106 98 90 +205 213 197 +74 65 57 +246 255 255 +246 74 41 +213 230 131 +131 222 139 +115 189 115 +164 238 205 +148 230 230 +131 213 213 +180 189 213 +139 148 255 +106 115 222 +238 164 238 +213 123 255 +164 74 205 +205 213 197 +74 65 57 +246 255 255 +255 0 0 +255 205 197 +246 172 164 +255 131 123 +255 255 156 +246 246 98 +222 205 0 +230 230 180 +197 197 148 +180 180 131 +255 246 246 +255 222 255 +255 189 197 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/status_icons.pal b/res/graphics/pokemon_summary_screen/status_icons.pal new file mode 100644 index 0000000000..885256f55c --- /dev/null +++ b/res/graphics/pokemon_summary_screen/status_icons.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +156 180 238 +156 164 139 +106 115 98 +82 90 74 +49 205 205 +0 156 156 +0 106 106 +255 213 41 +238 172 0 +189 123 0 +255 156 139 +230 90 74 +180 0 0 +115 0 0 +197 65 205 +255 255 255 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/res/graphics/pokemon_summary_screen/status_icons.png b/res/graphics/pokemon_summary_screen/status_icons.png new file mode 100644 index 0000000000..d4dc40880b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/status_icons.png differ diff --git a/res/graphics/pokemon_summary_screen/status_icons_anim.json b/res/graphics/pokemon_summary_screen/status_icons_anim.json new file mode 100644 index 0000000000..09177de80f --- /dev/null +++ b/res/graphics/pokemon_summary_screen/status_icons_anim.json @@ -0,0 +1,101 @@ +{ + "labelEnabled": true, + "sequenceCount": 7, + "frameCount": 7, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 1 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 2 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 3 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 4 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 5 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 6 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 4 + }, { + "resultType": 0, + "index": 5 + }, { + "resultType": 0, + "index": 6 + }], + "resultCount": 7, + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime3", "CellAnime4", "CellAnime5", "CellAnime6"], + "labelCount": 7 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/status_icons_cell.json b/res/graphics/pokemon_summary_screen/status_icons_cell.json new file mode 100644 index 0000000000..364bf63b15 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/status_icons_cell.json @@ -0,0 +1,388 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 7, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 2, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 3, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 5, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 6, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 9, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 11, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 12, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 14, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 15, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 17, + "Priority": 0, + "Palette": 0 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 7, + "maxY": -1, + "minX": -16, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 1 + }, + "Attr1": { + "XCoordinate": 496, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 18, + "Priority": 0, + "Palette": 0 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 0, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 20, + "Priority": 0, + "Palette": 0 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime3", "CellAnime4", "CellAnime5", "CellAnime6"], + "labelCount": 7 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/sub_buttons.png b/res/graphics/pokemon_summary_screen/sub_buttons.png new file mode 100644 index 0000000000..b5d69bd388 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/sub_buttons.png differ diff --git a/res/graphics/pokemon_summary_screen/tab_arrow.png b/res/graphics/pokemon_summary_screen/tab_arrow.png new file mode 100644 index 0000000000..6b81c3a10b Binary files /dev/null and b/res/graphics/pokemon_summary_screen/tab_arrow.png differ diff --git a/res/graphics/pokemon_summary_screen/tab_arrow_anim.json b/res/graphics/pokemon_summary_screen/tab_arrow_anim.json new file mode 100644 index 0000000000..10b0547a9c --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tab_arrow_anim.json @@ -0,0 +1,100 @@ +{ + "labelEnabled": true, + "sequenceCount": 2, + "frameCount": 12, + "sequences": [{ + "frameCount": 6, + "loopStartFrame": 0, + "animationElement": 2, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 0 + }, { + "frameDelay": 4, + "resultId": 1 + }, { + "frameDelay": 4, + "resultId": 2 + }, { + "frameDelay": 4, + "resultId": 3 + }, { + "frameDelay": 4, + "resultId": 2 + }, { + "frameDelay": 4, + "resultId": 1 + }] + }, { + "frameCount": 6, + "loopStartFrame": 0, + "animationElement": 2, + "animationType": 1, + "playbackMode": 2, + "frameData": [{ + "frameDelay": 4, + "resultId": 4 + }, { + "frameDelay": 4, + "resultId": 5 + }, { + "frameDelay": 4, + "resultId": 6 + }, { + "frameDelay": 4, + "resultId": 7 + }, { + "frameDelay": 4, + "resultId": 6 + }, { + "frameDelay": 4, + "resultId": 5 + }] + }], + "animationResults": [{ + "resultType": 2, + "index": 0, + "positionX": 0, + "positionY": 0 + }, { + "resultType": 2, + "index": 0, + "positionX": -1, + "positionY": 0 + }, { + "resultType": 2, + "index": 0, + "positionX": -2, + "positionY": 0 + }, { + "resultType": 2, + "index": 0, + "positionX": -3, + "positionY": 0 + }, { + "resultType": 2, + "index": 1, + "positionX": 0, + "positionY": 0 + }, { + "resultType": 2, + "index": 1, + "positionX": 1, + "positionY": 0 + }, { + "resultType": 2, + "index": 1, + "positionX": 2, + "positionY": 0 + }, { + "resultType": 2, + "index": 1, + "positionX": 3, + "positionY": 0 + }], + "resultCount": 8, + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/tab_arrow_cell.json b/res/graphics/pokemon_summary_screen/tab_arrow_cell.json new file mode 100644 index 0000000000..98f8f2efca --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tab_arrow_cell.json @@ -0,0 +1,78 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 2, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 7, + "minX": -4, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": true, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 2 + }, + "maxX": 3, + "maxY": 7, + "minX": -4, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 508, + "RotationScaling": 8, + "Size": 0 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 1 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1"], + "labelCount": 2 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/tabs.png b/res/graphics/pokemon_summary_screen/tabs.png new file mode 100644 index 0000000000..839756a47e Binary files /dev/null and b/res/graphics/pokemon_summary_screen/tabs.png differ diff --git a/res/graphics/pokemon_summary_screen/tabs_anim.json b/res/graphics/pokemon_summary_screen/tabs_anim.json new file mode 100644 index 0000000000..451a31d920 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tabs_anim.json @@ -0,0 +1,218 @@ +{ + "labelEnabled": true, + "sequenceCount": 16, + "frameCount": 16, + "sequences": [{ + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 0 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 1 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 2 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 3 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 4 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 5 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 6 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 7 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 8 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 9 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 10 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 11 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 12 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 13 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 14 + }] + }, { + "frameCount": 1, + "loopStartFrame": 0, + "animationElement": 0, + "animationType": 1, + "playbackMode": 1, + "frameData": [{ + "frameDelay": 1, + "resultId": 15 + }] + }], + "animationResults": [{ + "resultType": 0, + "index": 0 + }, { + "resultType": 0, + "index": 1 + }, { + "resultType": 0, + "index": 2 + }, { + "resultType": 0, + "index": 4 + }, { + "resultType": 0, + "index": 3 + }, { + "resultType": 0, + "index": 5 + }, { + "resultType": 0, + "index": 6 + }, { + "resultType": 0, + "index": 7 + }, { + "resultType": 0, + "index": 8 + }, { + "resultType": 0, + "index": 9 + }, { + "resultType": 0, + "index": 10 + }, { + "resultType": 0, + "index": 12 + }, { + "resultType": 0, + "index": 11 + }, { + "resultType": 0, + "index": 13 + }, { + "resultType": 0, + "index": 14 + }, { + "resultType": 0, + "index": 15 + }], + "resultCount": 16, + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime4", "CellAnime3", "CellAnime5", "CellAnime6", "CellAnime14", "CellAnime7", "CellAnime8", "CellAnime9", "CellAnime11", "CellAnime10", "CellAnime12", "CellAnime13", "CellAnime15"], + "labelCount": 16 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/tabs_cell.json b/res/graphics/pokemon_summary_screen/tabs_cell.json new file mode 100644 index 0000000000..7c155880a8 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tabs_cell.json @@ -0,0 +1,714 @@ +{ + "labelEnabled": true, + "extended": true, + "vramTransferEnabled": false, + "cellCount": 16, + "mappingType": 0, + "cells": [{ + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 0, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 4, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 8, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 12, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 16, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 20, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 24, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 3 + }, + "maxX": 7, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 1, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 28, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 32, + "Priority": 0, + "Palette": 1 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 36, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 38, + "Priority": 0, + "Palette": 1 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 42, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 44, + "Priority": 0, + "Palette": 1 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 48, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 50, + "Priority": 0, + "Palette": 1 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 54, + "Priority": 0, + "Palette": 1 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 56, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 60, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 62, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 66, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 68, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 72, + "Priority": 0, + "Palette": 2 + } + }] + }, { + "cellAttrs": { + "hFlip": false, + "vFlip": false, + "hvFlip": false, + "boundingRect": true, + "boundingSphereRadius": 5 + }, + "maxX": 15, + "maxY": 7, + "minX": -8, + "minY": -8, + "oamCount": 2, + "OAM": [{ + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 0 + }, + "Attr1": { + "XCoordinate": 504, + "RotationScaling": 0, + "Size": 1 + }, + "Attr2": { + "CharName": 74, + "Priority": 0, + "Palette": 2 + } + }, { + "Attr0": { + "YCoordinate": 248, + "Rotation": false, + "SizeDisable": false, + "Mode": 0, + "Mosaic": false, + "Colours": 16, + "Shape": 2 + }, + "Attr1": { + "XCoordinate": 8, + "RotationScaling": 0, + "Size": 0 + }, + "Attr2": { + "CharName": 78, + "Priority": 0, + "Palette": 2 + } + }] + }], + "labels": ["CellAnime0", "CellAnime1", "CellAnime2", "CellAnime4", "CellAnime3", "CellAnime5", "CellAnime6", "CellAnime14", "CellAnime7", "CellAnime8", "CellAnime9", "CellAnime11", "CellAnime10", "CellAnime12", "CellAnime13", "CellAnime15"], + "labelCount": 16 +} \ No newline at end of file diff --git a/res/graphics/pokemon_summary_screen/tiles_main.pal b/res/graphics/pokemon_summary_screen/tiles_main.pal new file mode 100644 index 0000000000..d608088afd --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tiles_main.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +255 255 205 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +8 246 180 +213 230 131 +131 222 139 +115 189 115 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +164 238 205 +148 230 230 +131 213 213 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +180 189 213 +139 148 255 +106 115 222 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +255 98 82 +115 189 255 +255 205 82 +139 230 139 +255 98 205 +238 164 238 +213 123 255 +164 74 205 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +222 98 90 +255 205 197 +246 172 164 +255 131 123 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +230 222 148 +205 197 205 +180 172 255 +255 148 255 +255 98 205 +255 255 189 +246 246 98 +222 205 0 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +230 230 180 +197 197 148 +180 180 131 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +255 255 255 +0 0 0 +32 106 230 +74 148 255 +255 180 82 +255 205 82 +255 222 98 +213 230 123 +197 213 106 +189 189 82 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +255 255 255 +255 255 156 +246 246 98 +222 205 0 +148 189 238 +123 164 230 +82 123 189 +189 164 255 +172 123 213 +164 74 205 +205 213 197 +0 0 0 +74 65 57 +172 197 255 +222 230 246 +246 246 197 +246 255 255 +115 106 98 +0 0 0 +0 0 0 +255 180 230 +255 98 230 +255 222 98 +255 246 246 +255 222 255 +255 213 222 +205 213 197 +156 180 238 +205 213 197 +164 172 148 +106 115 98 +0 0 0 +98 255 98 +24 197 32 +255 222 0 +238 172 0 +255 156 156 +255 74 57 +41 238 230 +0 156 156 +255 255 255 +65 49 41 +106 115 222 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +246 246 98 +230 222 148 +205 197 205 +180 172 255 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +156 197 106 +16 24 32 +172 189 189 +0 115 255 +123 189 238 +238 32 16 +255 172 189 +255 148 189 +255 222 230 +41 213 24 +156 238 139 +0 0 0 +0 0 0 +0 0 0 +82 82 82 +255 255 255 diff --git a/res/graphics/pokemon_summary_screen/tiles_main.png b/res/graphics/pokemon_summary_screen/tiles_main.png new file mode 100644 index 0000000000..be8601c24f Binary files /dev/null and b/res/graphics/pokemon_summary_screen/tiles_main.png differ diff --git a/res/graphics/pokemon_summary_screen/tiles_sub.NSCR b/res/graphics/pokemon_summary_screen/tiles_sub.NSCR new file mode 100644 index 0000000000..45bcfa00c4 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/tiles_sub.NSCR differ diff --git a/res/graphics/pokemon_summary_screen/tiles_sub.pal b/res/graphics/pokemon_summary_screen/tiles_sub.pal new file mode 100644 index 0000000000..b0abeab630 --- /dev/null +++ b/res/graphics/pokemon_summary_screen/tiles_sub.pal @@ -0,0 +1,259 @@ +JASC-PAL +0100 +256 +205 197 189 +156 156 156 +148 148 148 +139 139 139 +255 230 197 +246 222 139 +230 205 123 +222 189 106 +213 172 98 +0 0 0 +0 0 0 +255 115 115 +106 164 197 +115 164 213 +98 148 189 +74 115 164 +205 197 189 +230 255 156 +205 255 131 +164 222 90 +131 189 57 +82 164 8 +180 255 255 +139 246 213 +98 213 172 +74 180 148 +32 148 106 +255 131 131 +255 172 123 +123 180 213 +115 164 205 +106 139 172 +205 197 189 +197 238 255 +180 213 255 +164 189 255 +139 164 246 +106 131 230 +255 222 255 +246 180 255 +205 139 222 +189 123 205 +180 90 180 +255 131 131 +255 172 123 +123 180 213 +115 164 205 +106 139 172 +205 197 189 +255 238 230 +255 205 197 +246 156 148 +230 115 106 +213 74 65 +255 255 172 +246 246 131 +255 213 82 +230 189 90 +197 164 49 +255 131 131 +255 172 123 +123 180 213 +115 164 205 +106 139 172 +205 197 189 +246 246 172 +222 222 148 +189 189 115 +164 164 90 +131 131 57 +255 238 255 +255 197 255 +246 156 222 +230 106 180 +222 65 98 +255 131 131 +255 172 123 +123 180 213 +115 164 205 +106 139 172 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +74 115 164 +82 131 172 +98 148 189 +106 164 205 +123 172 222 +255 115 115 +230 213 98 +246 230 139 +222 205 98 +238 197 123 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +74 115 164 +82 131 172 +98 148 189 +106 164 205 +123 172 222 +246 222 139 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +255 131 131 +255 172 123 +246 230 139 +230 172 106 +238 197 123 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +205 197 189 +197 255 123 +180 238 106 +164 222 90 +148 205 74 +139 197 65 +156 255 230 +139 246 213 +98 213 172 +74 180 148 +49 156 123 +255 131 131 +255 172 123 +246 230 139 +139 139 74 +189 148 74 +205 197 189 +197 222 255 +180 205 255 +164 189 255 +148 172 255 +131 156 255 +238 172 246 +222 156 238 +205 139 222 +197 131 213 +180 115 197 +255 115 115 +255 172 123 +246 230 139 +230 172 106 +238 197 123 +205 197 189 +255 180 172 +255 164 156 +255 148 139 +246 131 123 +238 123 115 +255 246 115 +255 230 98 +255 213 82 +255 197 65 +230 189 82 +255 115 115 +255 172 123 +246 230 139 +230 172 106 +238 197 123 +205 197 189 +222 222 148 +205 205 131 +189 189 115 +180 180 106 +172 172 98 +255 189 255 +255 172 246 +255 164 230 +255 148 222 +246 131 205 +255 115 115 +255 172 123 +246 230 139 +230 172 106 +238 197 123 diff --git a/res/graphics/pokemon_summary_screen/tiles_sub.png b/res/graphics/pokemon_summary_screen/tiles_sub.png new file mode 100644 index 0000000000..30371a6ec1 Binary files /dev/null and b/res/graphics/pokemon_summary_screen/tiles_sub.png differ diff --git a/res/prebuilt/graphic/meson.build b/res/prebuilt/graphic/meson.build index 16ce8f11fa..22295526b3 100644 --- a/res/prebuilt/graphic/meson.build +++ b/res/prebuilt/graphic/meson.build @@ -28,7 +28,6 @@ prebuilt_files = [ 'opening.narc', 'pl_bag_gra.narc', 'pl_plist_gra.narc', - 'pl_pst_gra.narc', 'pl_wifinote.narc', 'plist_gra.narc', 'pmsi.narc', diff --git a/res/prebuilt/graphic/pl_pst_gra.narc b/res/prebuilt/graphic/pl_pst_gra.narc deleted file mode 100644 index ca7872e9df..0000000000 Binary files a/res/prebuilt/graphic/pl_pst_gra.narc and /dev/null differ diff --git a/src/battle/battle_display.c b/src/battle/battle_display.c index ab077ad6c4..1877999348 100644 --- a/src/battle/battle_display.c +++ b/src/battle/battle_display.c @@ -23,6 +23,7 @@ #include "battle/battle_lib.h" #include "battle/battle_message.h" #include "battle/healthbar.h" +#include "battle/move_display_info.h" #include "battle/ov16_0223B140.h" #include "battle/ov16_0223DF00.h" #include "battle/ov16_02264798.h" @@ -97,7 +98,6 @@ #include "battle/struct_ov16_022674C4.h" #include "battle/struct_ov16_02268A14_decl.h" #include "battle/struct_ov16_02269668.h" -#include "battle/struct_ov16_0226AC98.h" #include "battle/struct_ov16_0226C378.h" #include "battle/struct_ov16_0226D160_decl.h" #include "battle/trainer_ai.h" @@ -389,7 +389,7 @@ void ov16_0225CE1C(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225CF70(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C17C *param2) { - int v0; + int i; int v1; UnkStruct_ov16_0225EA80 *v2; int v3; @@ -435,12 +435,12 @@ void ov16_0225CF70(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v2->unk_96 = 0; v2->unk_98 = param2->unk_4C; - for (v0 = 0; v0 < 4; v0++) { - v2->unk_28.unk_18[v0] = param2->unk_50[v0]; - v2->unk_28.unk_20[v0] = param2->unk_58[v0]; - v2->unk_28.unk_24[v0] = param2->unk_5C[v0]; - v2->unk_28.unk_28[v0] = param2->unk_60[v0]; - v2->unk_28.unk_2C[v0] = param2->unk_64[v0]; + for (i = 0; i < 4; i++) { + v2->unk_28.unk_18[i] = param2->unk_50[i]; + v2->unk_28.unk_20[i] = param2->unk_58[i]; + v2->unk_28.unk_24[i] = param2->unk_5C[i]; + v2->unk_28.unk_28[i] = param2->unk_60[i]; + v2->unk_28.unk_2C[i] = param2->unk_64[i]; } SysTask_Start(ov16_0225F0C0, v2, 0); @@ -448,7 +448,7 @@ void ov16_0225CF70(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225D118(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_02264EF8 *param2) { - int v0; + int i; UnkStruct_ov16_0225F764 *v1; v1 = (UnkStruct_ov16_0225F764 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225F764)); @@ -463,12 +463,12 @@ void ov16_0225D118(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v1->unk_6E = param2->unk_02; v1->unk_70 = param2->unk_04; - for (v0 = 0; v0 < 4; v0++) { - v1->unk_10.unk_18[v0] = param2->unk_08[v0]; - v1->unk_10.unk_20[v0] = param2->unk_10[v0]; - v1->unk_10.unk_24[v0] = param2->unk_14[v0]; - v1->unk_10.unk_28[v0] = param2->unk_18[v0]; - v1->unk_10.unk_2C[v0] = param2->unk_1C[v0]; + for (i = 0; i < 4; i++) { + v1->unk_10.unk_18[i] = param2->unk_08[i]; + v1->unk_10.unk_20[i] = param2->unk_10[i]; + v1->unk_10.unk_24[i] = param2->unk_14[i]; + v1->unk_10.unk_28[i] = param2->unk_18[i]; + v1->unk_10.unk_2C[i] = param2->unk_1C[i]; } SysTask_Start(ov16_0225F764, v1, 0); @@ -657,7 +657,7 @@ void BattleDisplay_SlideHealthbarOut(BattleSystem *battleSys, BattlerData *battl void ov16_0225D5B8(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C260 *param2) { UnkStruct_ov16_0225D5B8 *v0; - int v1, v2; + int i, j; v0 = (UnkStruct_ov16_0225D5B8 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225D5B8)); MI_CpuClearFast(v0, sizeof(UnkStruct_ov16_0225D5B8)); @@ -675,17 +675,17 @@ void ov16_0225D5B8(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_3A = param2->unk_28; v0->unk_3B = param2->unk_29; - for (v1 = 0; v1 < 2; v1++) { - for (v2 = 0; v2 < 6; v2++) { - v0->unk_10[v1][v2] = param2->unk_08[v1][v2]; + for (i = 0; i < 2; i++) { + for (j = 0; j < 6; j++) { + v0->unk_10[i][j] = param2->unk_08[i][j]; } } - for (v1 = 0; v1 < 6; v1++) { - if (param2->unk_08[0][v1] == 2) { - v0->unk_1C[v1] = 0; + for (i = 0; i < 6; i++) { + if (param2->unk_08[0][i] == 2) { + v0->unk_1C[i] = 0; } else { - v0->unk_1C[v1] = param2->unk_02[v1]; + v0->unk_1C[i] = param2->unk_02[i]; } } @@ -705,7 +705,7 @@ void ov16_0225D5B8(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225D698(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022656F0 *param2) { UnkStruct_ov16_0225D698 *v0; - int v1; + int i; v0 = (UnkStruct_ov16_0225D698 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225D698)); @@ -717,10 +717,10 @@ void ov16_0225D698(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_04 = ¶m1->healthbar; v0->unk_1F = param2->unk_01; - for (v1 = 0; v1 < 4; v1++) { - v0->unk_0C[v1] = param2->unk_04[v1]; - v0->unk_14[v1] = param2->unk_0C[v1]; - v0->unk_18[v1] = param2->unk_10[v1]; + for (i = 0; i < 4; i++) { + v0->unk_0C[i] = param2->unk_04[i]; + v0->unk_14[i] = param2->unk_0C[i]; + v0->unk_18[i] = param2->unk_10[i]; } v0->unk_22 = param2->unk_02; @@ -731,7 +731,7 @@ void ov16_0225D698(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225D708(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C29C *param2) { UnkStruct_ov16_0225D708 *v0; - int v1, v2; + int i, v2; u32 v3; u8 v4[6]; @@ -751,8 +751,8 @@ void ov16_0225D708(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v2 = BattleSystem_MaxBattlers(param0); v3 = BattleSystem_BattleType(param0); - for (v1 = 0; v1 < v2; v1++) { - v0->unk_10[v1] = param2->unk_04[v1]; + for (i = 0; i < v2; i++) { + v0->unk_10[i] = param2->unk_04[i]; } SysTask_Start(param1->unk_00.unk_08, v0, 0); @@ -761,7 +761,7 @@ void ov16_0225D708(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225D794(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C2B0 *param2) { UnkStruct_ov16_0225D794 *v0; - int v1, v2; + int i, j; v0 = (UnkStruct_ov16_0225D794 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225D794)); @@ -777,14 +777,14 @@ void ov16_0225D794(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_15 = param2->unk_02; v0->unk_16 = param2->unk_03; - for (v1 = 0; v1 < 4; v1++) { - v0->unk_08->unk_0C[v1] = param2->unk_04[v1]; + for (i = 0; i < 4; i++) { + v0->unk_08->unk_0C[i] = param2->unk_04[i]; - for (v2 = 0; v2 < 6; v2++) { - v0->unk_18[v1][v2] = param2->unk_08[v1][v2]; + for (j = 0; j < 6; j++) { + v0->unk_18[i][j] = param2->unk_08[i][j]; } - v0->unk_30[v1] = param2->unk_20[v1]; + v0->unk_30[i] = param2->unk_20[i]; } SysTask_Start(param1->unk_00.unk_0C, v0, 0); @@ -793,7 +793,7 @@ void ov16_0225D794(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225D840(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C2C4 *param2) { UnkStruct_ov16_0225D840 *v0; - int v1, v2; + int i, j; v0 = (UnkStruct_ov16_0225D840 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225D840)); @@ -807,11 +807,11 @@ void ov16_0225D840(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_14 = 0; v0->unk_18 = param2->unk_24; - for (v1 = 0; v1 < 4; v1++) { - v0->unk_0C[v1] = param2->unk_04[v1]; + for (i = 0; i < 4; i++) { + v0->unk_0C[i] = param2->unk_04[i]; - for (v2 = 0; v2 < 6; v2++) { - v0->unk_1C[v1][v2] = param2->unk_08[v1][v2]; + for (j = 0; j < 6; j++) { + v0->unk_1C[i][j] = param2->unk_08[i][j]; } } @@ -975,7 +975,7 @@ void ov16_0225DB00(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 void ov16_0225DB74(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C384 *param2) { UnkStruct_ov16_0225DB74 *v0; - int v1; + int i; v0 = (UnkStruct_ov16_0225DB74 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225DB74)); @@ -998,12 +998,12 @@ void ov16_0225DB74(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_70 = param2->unk_09; v0->unk_72 = param2->unk_0A; - for (v1 = 0; v1 < 4; v1++) { - v0->unk_0C.unk_18[v1] = param2->unk_0C[v1]; - v0->unk_0C.unk_20[v1] = param2->unk_14[v1]; - v0->unk_0C.unk_24[v1] = param2->unk_18[v1]; - v0->unk_0C.unk_28[v1] = param2->unk_1C[v1]; - v0->unk_0C.unk_2C[v1] = param2->unk_20[v1]; + for (i = 0; i < 4; i++) { + v0->unk_0C.unk_18[i] = param2->unk_0C[i]; + v0->unk_0C.unk_20[i] = param2->unk_14[i]; + v0->unk_0C.unk_24[i] = param2->unk_18[i]; + v0->unk_0C.unk_28[i] = param2->unk_1C[i]; + v0->unk_0C.unk_2C[i] = param2->unk_20[i]; } SysTask_Start(ov16_02262A9C, v0, 0); @@ -1040,7 +1040,7 @@ void ov16_0225DC7C(BattleSystem *param0, BattlerData *param1) void ov16_0225DCB0(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C3BC *param2) { UnkStruct_ov16_0225DCB0 *v0; - int v1; + int i; v0 = (UnkStruct_ov16_0225DCB0 *)Heap_AllocFromHeap(5, sizeof(UnkStruct_ov16_0225DCB0)); @@ -1052,12 +1052,12 @@ void ov16_0225DCB0(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_022 v0->unk_63 = param2->unk_01; v0->unk_64 = param2->unk_02; - for (v1 = 0; v1 < 4; v1++) { - v0->unk_08.unk_18[v1] = param2->unk_04[v1]; - v0->unk_08.unk_20[v1] = param2->unk_0C[v1]; - v0->unk_08.unk_24[v1] = param2->unk_10[v1]; - v0->unk_08.unk_28[v1] = param2->unk_14[v1]; - v0->unk_08.unk_2C[v1] = param2->unk_18[v1]; + for (i = 0; i < 4; i++) { + v0->unk_08.unk_18[i] = param2->unk_04[i]; + v0->unk_08.unk_20[i] = param2->unk_0C[i]; + v0->unk_08.unk_24[i] = param2->unk_10[i]; + v0->unk_08.unk_28[i] = param2->unk_14[i]; + v0->unk_08.unk_2C[i] = param2->unk_18[i]; } SysTask_Start(ov16_02262DC4, v0, 0); @@ -2895,13 +2895,13 @@ static void ov16_022604C8(SysTask *param0, void *param1) case 0: { - UnkStruct_ov16_0226AC98 v7; - int v8; + MoveDisplayInfo v7; + int i; - for (v8 = 0; v8 < 4; v8++) { - v7.unk_00[v8] = v0->unk_24[v8]; - v7.unk_08[v8] = v0->unk_2C[v8]; - v7.unk_10[v8] = v0->unk_30[v8]; + for (i = 0; i < LEARNED_MOVES_MAX; i++) { + v7.move[i] = v0->unk_24[i]; + v7.curPP[i] = v0->unk_2C[i]; + v7.maxPP[i] = v0->unk_30[i]; } ov16_0226AC98(ov16_0223E02C(v0->unk_00), v0->unk_34, &v7); @@ -3027,10 +3027,10 @@ static void ov16_022604C8(SysTask *param0, void *param1) case 5: if (gCoreSys.pressedKeys & PAD_BUTTON_START) { BattlerData *v14; - int v15; + int i; - for (v15 = 0; v15 < BattleSystem_MaxBattlers(v0->unk_00); v15++) { - v14 = BattleSystem_BattlerData(v0->unk_00, v15); + for (i = 0; i < BattleSystem_MaxBattlers(v0->unk_00); i++) { + v14 = BattleSystem_BattlerData(v0->unk_00, i); ov16_0226737C(&v14->healthbar); } } @@ -3261,14 +3261,14 @@ static void ov16_02260C00(SysTask *param0, void *param1) { UnkStruct_ov16_02260C00 v8; - int v9; + int i; NARC *v10 = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_BG, 5); NARC *v11 = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_OBJ, 5); - for (v9 = 0; v9 < 4; v9++) { - v8.unk_00[v9] = v0->unk_0C[v9]; - v8.unk_08[v9] = v0->unk_14[v9]; - v8.unk_0C[v9] = v0->unk_18[v9]; + for (i = 0; i < 4; i++) { + v8.unk_00[i] = v0->unk_0C[i]; + v8.unk_08[i] = v0->unk_14[i]; + v8.unk_0C[i] = v0->unk_18[i]; } v8.unk_10 = v0->unk_1E; @@ -3338,15 +3338,15 @@ static void ov16_02260DB0(SysTask *param0, void *param1) } } else { { - int v4; + int i; int v5[4]; int v6; v6 = 0; - for (v4 = 0; v4 < 4; v4++) { - if ((v0->unk_22 & FlagIndex(v4)) == 0) { - v5[v6] = v4 + 1; + for (i = 0; i < 4; i++) { + if ((v0->unk_22 & FlagIndex(i)) == 0) { + v5[v6] = i + 1; v6++; } } @@ -3430,12 +3430,12 @@ static void ov16_02260F14(SysTask *param0, void *param1) { UnkStruct_ov16_02260F14 v6; - int v7; + int i; NARC *v8 = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_BG, 5); NARC *v9 = NARC_ctor(NARC_INDEX_BATTLE__GRAPHIC__PL_BATT_OBJ, 5); - for (v7 = 0; v7 < 4; v7++) { - v6.unk_00[v7] = v0->unk_10[v7]; + for (i = 0; i < 4; i++) { + v6.unk_00[i] = v0->unk_10[i]; } v6.unk_20 = v0->unk_0E; @@ -3646,7 +3646,7 @@ static void ov16_022611DC(SysTask *param0, void *param1) } break; case 4: { - int v2; + int i; int v3 = 0; int v4; Party *v5 = BattleSystem_Party(v0->unk_00, v0->unk_0D); @@ -3660,10 +3660,10 @@ static void ov16_022611DC(SysTask *param0, void *param1) Party_InitWithCapacity(v0->unk_08->unk_04->unk_00, 6); - for (v2 = 0; v2 < Party_GetCurrentCount(v5); v2++) { - v6 = BattleSystem_PartyPokemon(v0->unk_00, v4, v0->unk_18[v4][v2]); + for (i = 0; i < Party_GetCurrentCount(v5); i++) { + v6 = BattleSystem_PartyPokemon(v0->unk_00, v4, v0->unk_18[v4][i]); Party_AddPokemon(v0->unk_08->unk_04->unk_00, v6); - v0->unk_08->unk_04->unk_2C[v2] = v0->unk_18[v4][v2]; + v0->unk_08->unk_04->unk_2C[i] = v0->unk_18[v4][i]; } v0->unk_08->unk_04->unk_08 = v0->unk_00; @@ -4193,7 +4193,7 @@ static void ov16_02261E8C(SysTask *param0, void *param1) case 1: if (PaletteData_GetSelectedBuffersMask(v1) == 0) { { - int v3; + int i; int v4 = 0; int v5; int v6, v7; @@ -4216,24 +4216,24 @@ static void ov16_02261E8C(SysTask *param0, void *param1) v9 = Pokemon_New(5); - for (v3 = 0; v3 < 6; v3++) { + for (i = 0; i < 6; i++) { Party_AddPokemon(v0->unk_04->unk_00, v9); } Heap_FreeToHeap(v9); - for (v3 = 0; v3 < BattleSystem_PartyCount(v0->unk_00, v6); v3++) { - v9 = BattleSystem_PartyPokemon(v0->unk_00, v6, v0->unk_1C[v6][v3]); - v10 = Party_GetPokemonBySlotIndex(v0->unk_04->unk_00, v3 * 2); + for (i = 0; i < BattleSystem_PartyCount(v0->unk_00, v6); i++) { + v9 = BattleSystem_PartyPokemon(v0->unk_00, v6, v0->unk_1C[v6][i]); + v10 = Party_GetPokemonBySlotIndex(v0->unk_04->unk_00, i * 2); Pokemon_Copy(v9, v10); - v0->unk_04->unk_2C[v3 * 2] = v0->unk_1C[v6][v3]; + v0->unk_04->unk_2C[i * 2] = v0->unk_1C[v6][i]; } - for (v3 = 0; v3 < BattleSystem_PartyCount(v0->unk_00, v7); v3++) { - v9 = BattleSystem_PartyPokemon(v0->unk_00, v7, v0->unk_1C[v7][v3]); - v10 = Party_GetPokemonBySlotIndex(v0->unk_04->unk_00, v3 * 2 + 1); + for (i = 0; i < BattleSystem_PartyCount(v0->unk_00, v7); i++) { + v9 = BattleSystem_PartyPokemon(v0->unk_00, v7, v0->unk_1C[v7][i]); + v10 = Party_GetPokemonBySlotIndex(v0->unk_04->unk_00, i * 2 + 1); Pokemon_Copy(v9, v10); - v0->unk_04->unk_2C[v3 * 2 + 1] = v0->unk_1C[v7][v3]; + v0->unk_04->unk_2C[i * 2 + 1] = v0->unk_1C[v7][i]; } if (BattleSystem_BattlerSlot(v0->unk_00, v0->unk_09) == 4) { @@ -4256,10 +4256,10 @@ static void ov16_02261E8C(SysTask *param0, void *param1) v8 = BattleSystem_Party(v0->unk_00, v0->unk_09); - for (v3 = 0; v3 < Party_GetCurrentCount(v8); v3++) { - v9 = BattleSystem_PartyPokemon(v0->unk_00, v5, v0->unk_1C[v5][v3]); + for (i = 0; i < Party_GetCurrentCount(v8); i++) { + v9 = BattleSystem_PartyPokemon(v0->unk_00, v5, v0->unk_1C[v5][i]); Party_AddPokemon(v0->unk_04->unk_00, v9); - v0->unk_04->unk_2C[v3] = v0->unk_1C[v5][v3]; + v0->unk_04->unk_2C[i] = v0->unk_1C[v5][i]; } } @@ -5148,7 +5148,7 @@ static void ov16_02263014(SysTask *param0, void *param1) } if ((v0->unk_15 >= 10) && (v0->unk_16 < 16)) { - u16 v6, v7; + u16 i, v7; u16 *v8; v0->unk_16++; @@ -5159,9 +5159,9 @@ static void ov16_02263014(SysTask *param0, void *param1) v8 = PaletteData_GetFadedBuffer(v2, 1); - for (v6 = 0; v6 < 256; v6++) { + for (i = 0; i < 256; i++) { v7 = (0 + ((0x1f - 0) * v0->unk_16 >> 4)); - v8[v6] = v7 | (v7 << 5) | (v7 << 10); + v8[i] = v7 | (v7 << 5) | (v7 << 10); } } @@ -6071,13 +6071,13 @@ static void ov16_022641B4(BattleSystem *param0, BattlerData *param1, BattleMessa static void ov16_02264270(BattleSystem *param0, BattlerData *param1, UnkStruct_ov16_0225C9F0 *param2, BattleMessage *param3) { - int v0; + int i; int v1 = 0; int v2 = 0; - for (v0 = 0; v0 < BattleSystem_MaxBattlers(param0); v0++) { - if (param2->unk_01 & FlagIndex(v0)) { - if (Battler_Side(param0, v0)) { + for (i = 0; i < BattleSystem_MaxBattlers(param0); i++) { + if (param2->unk_01 & FlagIndex(i)) { + if (Battler_Side(param0, i)) { v2++; } else { v1++; @@ -6157,7 +6157,7 @@ static CellActorData *ov16_022643B8(BattleSystem *param0, int param1, int param2 static void ov16_02264408(BattleSystem *param0, BattlerData *param1, UnkStruct_ov12_0221FCDC *param2, UnkStruct_ov16_02265BBC *param3) { UnkStruct_ov16_02264408 v0; - int v1; + int i; int v2; if (param3->unk_4C == 0) { @@ -6172,14 +6172,14 @@ static void ov16_02264408(BattleSystem *param0, BattlerData *param1, UnkStruct_o v0.unk_08 = BattleSystem_PaletteSys(param0); v0.unk_00 = ov16_0223E010(param0); - for (v1 = 0; v1 < 4; v1++) { - v0.unk_0C[v1] = ov16_0223F2AC(param0, v1); - v0.unk_34[v1] = param3->unk_18[v1]; - v0.unk_3C[v1] = param3->unk_20[v1]; - v0.unk_40[v1] = param3->unk_24[v1]; - v0.unk_44[v1] = param3->unk_28[v1]; - v0.unk_48[v1] = param3->unk_2C[v1]; - v0.unk_4C[v1] = param3->unk_3C[v1]; + for (i = 0; i < 4; i++) { + v0.unk_0C[i] = ov16_0223F2AC(param0, i); + v0.unk_34[i] = param3->unk_18[i]; + v0.unk_3C[i] = param3->unk_20[i]; + v0.unk_40[i] = param3->unk_24[i]; + v0.unk_44[i] = param3->unk_28[i]; + v0.unk_48[i] = param3->unk_2C[i]; + v0.unk_4C[i] = param3->unk_3C[i]; } ov16_0223F87C(param0, &(v0.unk_1C[0])); @@ -6201,18 +6201,18 @@ static void ov16_02264408(BattleSystem *param0, BattlerData *param1, UnkStruct_o static void ov16_02264530(BattleSystem *param0, UnkStruct_ov16_02265BBC *param1, UnkStruct_ov12_022380DC *param2, int param3) { - int v0; + int i; param2->unk_00 = param3; param2->unk_04 = param3; - for (v0 = 0; v0 < 4; v0++) { - param2->unk_08[v0] = ov16_0223F2AC(param0, v0); - param2->unk_28[v0] = param1->unk_18[v0]; - param2->unk_30[v0] = param1->unk_20[v0]; - param2->unk_34[v0] = param1->unk_24[v0]; - param2->unk_38[v0] = param1->unk_28[v0]; - param2->unk_3C[v0] = param1->unk_2C[v0]; + for (i = 0; i < 4; i++) { + param2->unk_08[i] = ov16_0223F2AC(param0, i); + param2->unk_28[i] = param1->unk_18[i]; + param2->unk_30[i] = param1->unk_20[i]; + param2->unk_34[i] = param1->unk_24[i]; + param2->unk_38[i] = param1->unk_28[i]; + param2->unk_3C[i] = param1->unk_2C[i]; } ov16_0223F87C(param0, &(param2->unk_4C[0])); diff --git a/src/battle/ov16_0226871C.c b/src/battle/ov16_0226871C.c index 347b596a18..315c855a46 100644 --- a/src/battle/ov16_0226871C.c +++ b/src/battle/ov16_0226871C.c @@ -15,6 +15,7 @@ #include "struct_defs/struct_020127E8.h" #include "battle/battle_display.h" +#include "battle/move_display_info.h" #include "battle/ov16_0223DF00.h" #include "battle/ov16_0226DB7C.h" #include "battle/ov16_0226DE44.h" @@ -22,7 +23,6 @@ #include "battle/struct_ov16_02260F14.h" #include "battle/struct_ov16_022623F0.h" #include "battle/struct_ov16_02269668.h" -#include "battle/struct_ov16_0226AC98.h" #include "battle/struct_ov16_0226C378.h" #include "battle/struct_ov16_0226DC24_decl.h" #include "battle/struct_ov16_0226DEEC_decl.h" @@ -187,7 +187,7 @@ typedef struct { } UnkStruct_ov16_0226AEA0; typedef struct { - UnkStruct_ov16_0226AC98 unk_00; + MoveDisplayInfo unk_00; u16 *unk_18[4]; UnkStruct_ov16_0226AEA0 unk_28[4]; UnkStruct_ov16_0226AEA0 unk_78[4]; @@ -1029,23 +1029,23 @@ static void *ov16_0226871C(void) void ov16_02268744(BgConfig *param0) { - int v0; + int i; - for (v0 = 0; v0 < NELEMS(Unk_ov16_02270540); v0++) { - Bg_InitFromTemplate(param0, 4 + v0, &Unk_ov16_02270540[v0], 0); - Bg_FillTilemap(param0, 4 + v0, (0x6000 / 0x20 - 1)); - Bg_SetOffset(param0, 4 + v0, 0, 0); - Bg_SetOffset(param0, 4 + v0, 3, 0); + for (i = 0; i < NELEMS(Unk_ov16_02270540); i++) { + Bg_InitFromTemplate(param0, 4 + i, &Unk_ov16_02270540[i], 0); + Bg_FillTilemap(param0, 4 + i, (0x6000 / 0x20 - 1)); + Bg_SetOffset(param0, 4 + i, 0, 0); + Bg_SetOffset(param0, 4 + i, 3, 0); } } void ov16_022687A0(BgConfig *param0) { - int v0; + int i; - for (v0 = 0; v0 < NELEMS(Unk_ov16_02270540); v0++) { - Bg_ToggleLayer(4 + v0, 0); - Bg_FreeTilemapBuffer(param0, 4 + v0); + for (i = 0; i < NELEMS(Unk_ov16_02270540); i++) { + Bg_ToggleLayer(4 + i, 0); + Bg_FreeTilemapBuffer(param0, 4 + i); } } @@ -1080,21 +1080,21 @@ void *ov16_022687C8(NARC *param0, NARC *param1, BattleSystem *param2, int param3 { NNSG2dScreenData *v3; void *v4; - int v5; + int i; int v6; - for (v5 = 0; v5 < 7; v5++) { - v0->unk_3C[v5] = Heap_AllocFromHeap(5, 0x800); + for (i = 0; i < 7; i++) { + v0->unk_3C[i] = Heap_AllocFromHeap(5, 0x800); - if ((BattleSystem_BattleType(param2) & 0x80) && (Unk_ov16_02270264[v5] == 49)) { + if ((BattleSystem_BattleType(param2) & 0x80) && (Unk_ov16_02270264[i] == 49)) { v6 = 170; } else { - v6 = Unk_ov16_02270264[v5]; + v6 = Unk_ov16_02270264[i]; } v4 = Graphics_GetScrnData(7, v6, 1, &v3, 5); - MI_CpuCopy32(v3->rawData, v0->unk_3C[v5], 0x800); + MI_CpuCopy32(v3->rawData, v0->unk_3C[i], 0x800); Heap_FreeToHeap(v4); } } @@ -1117,19 +1117,19 @@ void *ov16_022687C8(NARC *param0, NARC *param1, BattleSystem *param2, int param3 } { - int v9, v10; + int i; - for (v10 = 0; v10 < 4; v10++) { - MI_CpuFill8(&v0->unk_68[v10].unk_00, 0xff, sizeof(UnkStruct_ov16_0226AC98)); + for (i = 0; i < 4; i++) { + MI_CpuFill8(&v0->unk_68[i].unk_00, 0xff, sizeof(MoveDisplayInfo)); } } { - int v11, v12; + int i, j; - for (v12 = 0; v12 < 4; v12++) { - for (v11 = 0; v11 < 4; v11++) { - v0->unk_68[v12].unk_18[v11] = Heap_AllocFromHeap(5, sub_0208C098(6)); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + v0->unk_68[i].unk_18[j] = Heap_AllocFromHeap(5, sub_0208C098(6)); } } } @@ -1173,7 +1173,7 @@ void *ov16_022687C8(NARC *param0, NARC *param1, BattleSystem *param2, int param3 void ov16_02268A14(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; if (param0->unk_04 != NULL) { *param0->unk_04 = param0->unk_6C0; @@ -1186,8 +1186,8 @@ void ov16_02268A14(UnkStruct_ov16_02268A14 *param0) sub_020127BC(param0->unk_4C8); SysTask_Done(param0->unk_678); - for (v0 = 0; v0 < 7; v0++) { - Heap_FreeToHeap(param0->unk_3C[v0]); + for (i = 0; i < 7; i++) { + Heap_FreeToHeap(param0->unk_3C[i]); } Heap_FreeToHeap(param0->unk_58); @@ -1204,7 +1204,7 @@ void ov16_02268A88(UnkStruct_ov16_02268A14 *param0) SpriteRenderer *v1; SpriteGfxHandler *v2; PaletteData *v3; - int v4; + int i; v1 = ov16_0223E010(param0->unk_00); v2 = ov16_0223E018(param0->unk_00); @@ -1226,8 +1226,8 @@ void ov16_02268A88(UnkStruct_ov16_02268A14 *param0) sub_0207C9EC(v1, v2, 20017, 20017); sub_0207C9B0(BattleSystem_PaletteSys(param0->unk_00), 3, v1, v2, NNS_G2D_VRAM_TYPE_2DSUB, 20020); - for (v4 = 0; v4 < 4; v4++) { - sub_0207C948(v1, v2, NNS_G2D_VRAM_TYPE_2DSUB, 0, 20025 + v4); + for (i = 0; i < 4; i++) { + sub_0207C948(v1, v2, NNS_G2D_VRAM_TYPE_2DSUB, 0, 20025 + i); } if (BattleSystem_BattleType(param0->unk_00) & 0x400) { @@ -1238,15 +1238,15 @@ void ov16_02268A88(UnkStruct_ov16_02268A14 *param0) void ov16_02268B8C(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; v1 = ov16_0223E010(param0->unk_00); v2 = ov16_0223E018(param0->unk_00); - for (v0 = 0; v0 < 4; v0++) { - sub_0207CA34(v2, 20025 + v0); + for (i = 0; i < 4; i++) { + sub_0207CA34(v2, 20025 + i); } sub_0207CA3C(v2, 20020); @@ -1261,7 +1261,7 @@ void ov16_02268B8C(UnkStruct_ov16_02268A14 *param0) void ov16_02268C04(NARC *param0, NARC *param1, UnkStruct_ov16_02268A14 *param2, int param3, int param4, void *param5) { const UnkStruct_ov16_02270670 *v0, *v1; - int v2; + int i; BgConfig *v3; SpriteRenderer *v4; SpriteGfxHandler *v5; @@ -1307,10 +1307,10 @@ void ov16_02268C04(NARC *param0, NARC *param1, UnkStruct_ov16_02268A14 *param2, PaletteData_LoadBuffer(BattleSystem_PaletteSys(param2->unk_00), param2->unk_58, 1, 0, 0x200); } - for (v2 = 0; v2 < 4; v2++) { - if ((v0->unk_04_val2[v2] != 0xffff) && ((param4 == 1) || (v0->unk_04_val2[v2] != v1->unk_04_val2[v2]))) { - Bg_LoadTilemapBuffer(v3, 4 + v2, param2->unk_3C[v0->unk_04_val2[v2]], 0x800); - Bg_ScheduleTilemapTransfer(v3, 4 + v2); + for (i = 0; i < 4; i++) { + if ((v0->unk_04_val2[i] != 0xffff) && ((param4 == 1) || (v0->unk_04_val2[i] != v1->unk_04_val2[i]))) { + Bg_LoadTilemapBuffer(v3, 4 + i, param2->unk_3C[v0->unk_04_val2[i]], 0x800); + Bg_ScheduleTilemapTransfer(v3, 4 + i); } } @@ -1329,7 +1329,7 @@ void ov16_02268C04(NARC *param0, NARC *param1, UnkStruct_ov16_02268A14 *param2, void ov16_02268D40(NARC *param0, UnkStruct_ov16_02268A14 *param1) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; @@ -1346,13 +1346,13 @@ void ov16_02268D40(NARC *param0, UnkStruct_ov16_02268A14 *param1) SpriteRenderer_LoadCellResObjFromOpenNarc(v1, v2, param0, 204, 1, 20016); SpriteRenderer_LoadAnimResObjFromOpenNarc(v1, v2, param0, 206, 1, 20016); - for (v0 = 0; v0 < 6; v0++) { - param1->unk_5BC[v0] = SpriteActor_LoadResources(v1, v2, &Unk_ov16_02270414); - sub_0200D4D0(param1->unk_5BC[v0]->unk_00, 12 + 19 * v0, 13, ((192 + 80) << FX32_SHIFT)); - sub_0200D6A4(param1->unk_5BC[v0], 1); + for (i = 0; i < 6; i++) { + param1->unk_5BC[i] = SpriteActor_LoadResources(v1, v2, &Unk_ov16_02270414); + sub_0200D4D0(param1->unk_5BC[i]->unk_00, 12 + 19 * i, 13, ((192 + 80) << FX32_SHIFT)); + sub_0200D6A4(param1->unk_5BC[i], 1); - param1->unk_5D4[v0] = SpriteActor_LoadResources(v1, v2, &Unk_ov16_02270448); - sub_0200D4D0(param1->unk_5D4[v0]->unk_00, 246 + -12 * v0, 9, ((192 + 80) << FX32_SHIFT)); + param1->unk_5D4[i] = SpriteActor_LoadResources(v1, v2, &Unk_ov16_02270448); + sub_0200D4D0(param1->unk_5D4[i]->unk_00, 246 + -12 * i, 9, ((192 + 80) << FX32_SHIFT)); } ov16_02269218(param1); @@ -1371,7 +1371,7 @@ void ov16_02268D40(NARC *param0, UnkStruct_ov16_02268A14 *param1) static void ov16_02268F00(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; @@ -1388,12 +1388,12 @@ static void ov16_02268F00(UnkStruct_ov16_02268A14 *param0) SpriteGfxHandler_UnloadAnimObjById(v2, 20016); SpriteGfxHandler_UnloadPlttObjById(v2, 20023); - for (v0 = 0; v0 < 6; v0++) { - sub_0200D0F4(param0->unk_5BC[v0]); - param0->unk_5BC[v0] = NULL; + for (i = 0; i < 6; i++) { + sub_0200D0F4(param0->unk_5BC[i]); + param0->unk_5BC[i] = NULL; - sub_0200D0F4(param0->unk_5D4[v0]); - param0->unk_5D4[v0] = NULL; + sub_0200D0F4(param0->unk_5D4[i]); + param0->unk_5D4[i] = NULL; } SysTask_Done(param0->unk_08); @@ -1406,16 +1406,16 @@ static void ov16_02268F00(UnkStruct_ov16_02268A14 *param0) static void ov16_02268FCC(SysTask *param0, void *param1) { UnkStruct_ov16_02268A14 *v0 = param1; - int v1; + int i; UnkStruct_ov16_02268FCC *v2; - for (v1 = 0; v1 < 6; v1++) { - v2 = &v0->unk_62C[v1]; + for (i = 0; i < 6; i++) { + v2 = &v0->unk_62C[i]; switch (v2->unk_03) { case 0: default: - if (sub_0200D400(v0->unk_5BC[v1]->unk_00) == 0) { + if (sub_0200D400(v0->unk_5BC[i]->unk_00) == 0) { break; } @@ -1440,10 +1440,10 @@ static void ov16_02268FCC(SysTask *param0, void *param1) break; case 2: case 4: - sub_0200D7C0(v0->unk_5BC[v1], 0x800); + sub_0200D7C0(v0->unk_5BC[i], 0x800); v2->unk_00 += 0x180; - sub_0200D500(v0->unk_5BC[v1], 12 + 19 * v1 + v2->unk_00 / 0x100, 13, ((192 + 80) << FX32_SHIFT)); + sub_0200D500(v0->unk_5BC[i], 12 + 19 * i + v2->unk_00 / 0x100, 13, ((192 + 80) << FX32_SHIFT)); v2->unk_06++; if (v2->unk_06 >= v2->unk_07) { @@ -1452,8 +1452,8 @@ static void ov16_02268FCC(SysTask *param0, void *param1) if (v2->unk_03 == 2) { v2->unk_03++; } else { - sub_0200D79C(v0->unk_5BC[v1], 0); - sub_0200D500(v0->unk_5BC[v1], 12 + 19 * v1, 13, ((192 + 80) << FX32_SHIFT)); + sub_0200D79C(v0->unk_5BC[i], 0); + sub_0200D500(v0->unk_5BC[i], 12 + 19 * i, 13, ((192 + 80) << FX32_SHIFT)); v2->unk_00 = 0; @@ -1474,10 +1474,10 @@ static void ov16_02268FCC(SysTask *param0, void *param1) break; case 3: - sub_0200D7C0(v0->unk_5BC[v1], -0x800); + sub_0200D7C0(v0->unk_5BC[i], -0x800); v2->unk_00 -= 0x180; - sub_0200D500(v0->unk_5BC[v1], 12 + 19 * v1 + v2->unk_00 / 0x100, 13, ((192 + 80) << FX32_SHIFT)); + sub_0200D500(v0->unk_5BC[i], 12 + 19 * i + v2->unk_00 / 0x100, 13, ((192 + 80) << FX32_SHIFT)); v2->unk_06++; if (v2->unk_06 >= v2->unk_07 * 2) { @@ -1491,56 +1491,56 @@ static void ov16_02268FCC(SysTask *param0, void *param1) void ov16_0226914C(UnkStruct_ov16_02268A14 *param0, const u8 *param1) { - int v0; + int i; - for (v0 = 0; v0 < 6; v0++) { - param0->unk_62C[v0].unk_02 = param1[v0]; + for (i = 0; i < 6; i++) { + param0->unk_62C[i].unk_02 = param1[i]; } } void ov16_02269168(UnkStruct_ov16_02268A14 *param0, u8 param1[], u8 param2[]) { - int v0, v1; + int i, v1; - for (v0 = 0; v0 < 6; v0++) { - v1 = ov16_0226A934(param1[v0]); + for (i = 0; i < 6; i++) { + v1 = ov16_0226A934(param1[i]); - CellActor_SetAnim(param0->unk_5BC[v0]->unk_00, v1); - SpriteActor_UpdateObject(param0->unk_5BC[v0]->unk_00); + CellActor_SetAnim(param0->unk_5BC[i]->unk_00, v1); + SpriteActor_UpdateObject(param0->unk_5BC[i]->unk_00); - v1 = ov16_0226A934(param2[v0]); + v1 = ov16_0226A934(param2[i]); - CellActor_SetAnim(param0->unk_5D4[v0]->unk_00, v1); - SpriteActor_UpdateObject(param0->unk_5D4[v0]->unk_00); + CellActor_SetAnim(param0->unk_5D4[i]->unk_00, v1); + SpriteActor_UpdateObject(param0->unk_5D4[i]->unk_00); } } void ov16_022691BC(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; GF_ASSERT(param0->unk_5BC[0] != NULL && param0->unk_5D4[0] != NULL); - for (v0 = 0; v0 < 6; v0++) { - SpriteActor_DrawSprite(param0->unk_5BC[v0]->unk_00, 1); + for (i = 0; i < 6; i++) { + SpriteActor_DrawSprite(param0->unk_5BC[i]->unk_00, 1); } if (BattleSystem_BattleType(param0->unk_00) & 0x1) { - for (v0 = 0; v0 < 6; v0++) { - SpriteActor_DrawSprite(param0->unk_5D4[v0]->unk_00, 1); + for (i = 0; i < 6; i++) { + SpriteActor_DrawSprite(param0->unk_5D4[i]->unk_00, 1); } } } void ov16_02269218(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; GF_ASSERT(param0->unk_5BC[0] != NULL && param0->unk_5D4[0] != NULL); - for (v0 = 0; v0 < 6; v0++) { - SpriteActor_DrawSprite(param0->unk_5BC[v0]->unk_00, 0); - SpriteActor_DrawSprite(param0->unk_5D4[v0]->unk_00, 0); + for (i = 0; i < 6; i++) { + SpriteActor_DrawSprite(param0->unk_5BC[i]->unk_00, 0); + SpriteActor_DrawSprite(param0->unk_5D4[i]->unk_00, 0); } } @@ -1875,7 +1875,7 @@ static void ov16_02269938(UnkStruct_ov16_02268A14 *param0, int param1, int param static void ov16_022699AC(UnkStruct_ov16_02268A14 *param0, int param1, int param2) { UnkStruct_ov16_02260C00 *v0; - int v1; + int i; MessageLoader *v2; UnkStruct_ov16_0226ABD4 *v3; TextColor v4; @@ -1898,10 +1898,10 @@ static void ov16_022699AC(UnkStruct_ov16_02268A14 *param0, int param1, int param } { - for (v1 = 0; v1 < 4; v1++) { - v4 = ov16_0226B924(v0->unk_08[v1], v0->unk_0C[v1]); - ov16_0226A98C(param0, ¶m0->unk_4CC[9 + v1], NULL, FONT_SYSTEM, v4, 4, 20023, Unk_ov16_022702D4[v1][0], Unk_ov16_022702D4[v1][1], 0, &v3->unk_78[v1]); - ov16_0226A98C(param0, ¶m0->unk_4CC[5 + v1], NULL, FONT_SYSTEM, v4, 4, 20023, Unk_ov16_02270284[v1][0], Unk_ov16_02270284[v1][1], 0, &v3->unk_C8[v1]); + for (i = 0; i < LEARNED_MOVES_MAX; i++) { + v4 = ov16_0226B924(v0->unk_08[i], v0->unk_0C[i]); + ov16_0226A98C(param0, ¶m0->unk_4CC[9 + i], NULL, FONT_SYSTEM, v4, 4, 20023, Unk_ov16_022702D4[i][0], Unk_ov16_022702D4[i][1], 0, &v3->unk_78[i]); + ov16_0226A98C(param0, ¶m0->unk_4CC[5 + i], NULL, FONT_SYSTEM, v4, 4, 20023, Unk_ov16_02270284[i][0], Unk_ov16_02270284[i][1], 0, &v3->unk_C8[i]); } } @@ -1916,12 +1916,12 @@ static void ov16_022699AC(UnkStruct_ov16_02268A14 *param0, int param1, int param { int v6; - for (v1 = 0; v1 < 4; v1++) { - if (v0->unk_00[v1] != 0) { - v6 = MoveTable_LoadParam(v0->unk_00[v1], MOVEATTRIBUTE_TYPE); - ov16_0226B06C(param0, v6, v1); + for (i = 0; i < LEARNED_MOVES_MAX; i++) { + if (v0->unk_00[i] != 0) { + v6 = MoveTable_LoadParam(v0->unk_00[i], MOVEATTRIBUTE_TYPE); + ov16_0226B06C(param0, v6, i); } else { - ov16_0226B088(param0, v1); + ov16_0226B088(param0, i); break; } } @@ -2113,7 +2113,7 @@ static void ov16_0226A04C(UnkStruct_ov16_02268A14 *param0, int param1, int param static void ov16_0226A12C(UnkStruct_ov16_02268A14 *param0, int param1, int param2) { UnkStruct_ov16_02260F14 *v0; - int v1; + int i; MessageLoader *v2; u8 v3[4]; Strbuf *v4, *v5; @@ -2141,10 +2141,10 @@ static void ov16_0226A12C(UnkStruct_ov16_02268A14 *param0, int param1, int param v4 = Strbuf_Init((12 + 2 + (5 * 2)), 5); - for (v1 = 0; v1 < 4; v1++) { - v12 = v11[2 + v1]; + for (i = 0; i < 4; i++) { + v12 = v11[2 + i]; - if ((v0->unk_00[v12].unk_01_2 == 1) && (v3[v1] == 1)) { + if ((v0->unk_00[v12].unk_01_2 == 1) && (v3[i] == 1)) { if (v0->unk_00[v12].unk_01_0 == 0) { v5 = MessageLoader_GetNewStrbuf(v2, 962); } else if (v0->unk_00[v12].unk_01_0 == 1) { @@ -2159,17 +2159,17 @@ static void ov16_0226A12C(UnkStruct_ov16_02268A14 *param0, int param1, int param StringTemplate_SetNickname(v8, 0, v7); StringTemplate_Format(v8, v4, v5); - if (v1 & 1) { + if (i & 1) { v9 = TEXT_COLOR(1, 2, 3); } else { v9 = TEXT_COLOR(4, 5, 6); } - ov16_0226A98C(param0, ¶m0->unk_4CC[0 + v1], v4, FONT_SUBSCREEN, v9, 6, 20023, Unk_ov16_02270328[v1][0], Unk_ov16_02270328[v1][1], 1, NULL); + ov16_0226A98C(param0, ¶m0->unk_4CC[0 + i], v4, FONT_SUBSCREEN, v9, 6, 20023, Unk_ov16_02270328[i][0], Unk_ov16_02270328[i][1], 1, NULL); Strbuf_Free(v5); { - switch (v1) { + switch (i) { case 1: ov16_0226A7A4(param0, v6, 3, v0->unk_00[v12].unk_04, v0->unk_00[v12].unk_06, v0->unk_00[v12].unk_02); break; @@ -2179,8 +2179,8 @@ static void ov16_0226A12C(UnkStruct_ov16_02268A14 *param0, int param1, int param } } } else { - if (v3[v1] == 0) { - ov16_0226B0DC(param0, v1); + if (v3[i] == 0) { + ov16_0226B0DC(param0, i); } } } @@ -2458,17 +2458,17 @@ static void ov16_0226A718(UnkStruct_ov16_02268A14 *param0) static void ov16_0226A768(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; - for (v0 = 0; v0 < 4; v0++) { - if (param0->unk_60C[v0] != NULL) { - sub_0200D0F4(param0->unk_60C[v0]); - param0->unk_60C[v0] = NULL; + for (i = 0; i < 4; i++) { + if (param0->unk_60C[i] != NULL) { + sub_0200D0F4(param0->unk_60C[i]); + param0->unk_60C[i] = NULL; } - if (param0->unk_61C[v0] != NULL) { - SysTask_Done(param0->unk_61C[v0]); - param0->unk_61C[v0] = NULL; + if (param0->unk_61C[i] != NULL) { + SysTask_Done(param0->unk_61C[i]); + param0->unk_61C[i] = NULL; } } } @@ -2670,13 +2670,13 @@ static void ov16_0226A98C(UnkStruct_ov16_02268A14 *param0, UnkStruct_ov16_0226A9 static void ov16_0226AAC0(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; - for (v0 = 0; v0 < 13; v0++) { - if (param0->unk_4CC[v0].unk_00 != NULL) { - sub_02012870(param0->unk_4CC[v0].unk_00); - sub_0201EE28(¶m0->unk_4CC[v0].unk_04); - param0->unk_4CC[v0].unk_00 = NULL; + for (i = 0; i < 13; i++) { + if (param0->unk_4CC[i].unk_00 != NULL) { + sub_02012870(param0->unk_4CC[i].unk_00); + sub_0201EE28(¶m0->unk_4CC[i].unk_04); + param0->unk_4CC[i].unk_00 = NULL; } } } @@ -2684,7 +2684,7 @@ static void ov16_0226AAC0(UnkStruct_ov16_02268A14 *param0) static void ov16_0226AAF8(UnkStruct_ov16_02268A14 *param0) { u8 v0[4], v1[4]; - int v2, v3; + int j, i; u16 *v4, *v5; BgConfig *v6; @@ -2697,21 +2697,21 @@ static void ov16_0226AAF8(UnkStruct_ov16_02268A14 *param0) ov16_0226B264(param0, 1, v1, 0); if (v1[3 - 1] == 1) { - for (v3 = 12; v3 <= 16; v3++) { - v5 = &v4[v3 * 32]; + for (i = 12; i <= 16; i++) { + v5 = &v4[i * 32]; - for (v2 = 0xf; v2 <= 0x10; v2++) { - v5[v2] = 0x2a4; + for (j = 0xf; j <= 0x10; j++) { + v5[j] = 0x2a4; } } } if (v1[4 - 1] == 1) { - for (v3 = 10; v3 <= 10; v3++) { - v5 = &v4[v3 * 32]; + for (i = 10; i <= 10; i++) { + v5 = &v4[i * 32]; - for (v2 = 2; v2 <= 12; v2++) { - v5[v2] = 0x2a4; + for (j = 2; j <= 12; j++) { + v5[j] = 0x2a4; } } } @@ -2721,21 +2721,21 @@ static void ov16_0226AAF8(UnkStruct_ov16_02268A14 *param0) ov16_0226B264(param0, 2, v1, 0); if (v1[3 - 1] == 1) { - for (v3 = 10; v3 <= 10; v3++) { - v5 = &v4[v3 * 32]; + for (i = 10; i <= 10; i++) { + v5 = &v4[i * 32]; - for (v2 = 0x13; v2 <= 0x1d; v2++) { - v5[v2] = 0x2a4; + for (j = 0x13; j <= 0x1d; j++) { + v5[j] = 0x2a4; } } } if (v1[4 - 1] == 1) { - for (v3 = 3; v3 <= 7; v3++) { - v5 = &v4[v3 * 32]; + for (i = 3; i <= 7; i++) { + v5 = &v4[i * 32]; - for (v2 = 0xf; v2 <= 0x10; v2++) { - v5[v2] = 0x2a4; + for (j = 0xf; j <= 0x10; j++) { + v5[j] = 0x2a4; } } } @@ -2753,33 +2753,33 @@ static UnkStruct_ov16_0226ABD4 *ov16_0226ABD4(UnkStruct_ov16_02268A14 *param0, i static void ov16_0226ABE8(UnkStruct_ov16_02268A14 *param0) { - int v0, v1; + int j, i; - for (v1 = 0; v1 < 4; v1++) { - for (v0 = 0; v0 < 4; v0++) { - Heap_FreeToHeap(param0->unk_68[v1].unk_18[v0]); + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + Heap_FreeToHeap(param0->unk_68[i].unk_18[j]); - if (param0->unk_68[v1].unk_28[v0].unk_00.pixels != NULL) { - Window_Remove(¶m0->unk_68[v1].unk_28[v0].unk_00); + if (param0->unk_68[i].unk_28[j].unk_00.pixels != NULL) { + Window_Remove(¶m0->unk_68[i].unk_28[j].unk_00); } - if (param0->unk_68[v1].unk_78[v0].unk_00.pixels != NULL) { - Window_Remove(¶m0->unk_68[v1].unk_78[v0].unk_00); + if (param0->unk_68[i].unk_78[j].unk_00.pixels != NULL) { + Window_Remove(¶m0->unk_68[i].unk_78[j].unk_00); } - if (param0->unk_68[v1].unk_C8[v0].unk_00.pixels != NULL) { - Window_Remove(¶m0->unk_68[v1].unk_C8[v0].unk_00); + if (param0->unk_68[i].unk_C8[j].unk_00.pixels != NULL) { + Window_Remove(¶m0->unk_68[i].unk_C8[j].unk_00); } } } } -void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const UnkStruct_ov16_0226AC98 *param2) +void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const MoveDisplayInfo *param2) { UnkStruct_ov16_0226ABD4 *v0; void *v1; NNSG2dCharacterData *v2; - int v3, v4, v5; + int i, v3, v5; Strbuf *v6; Strbuf *v7; Strbuf *v8; @@ -2796,33 +2796,33 @@ void ov16_0226AC98(UnkStruct_ov16_02268A14 *param0, int param1, const UnkStruct_ v7 = Strbuf_Init(((2 + 2 + 1 + 2) * 2 + 2), 5); v8 = MessageLoader_GetNewStrbuf(v12, 937); - for (v4 = 0; v4 < 4; v4++) { - if ((param2->unk_00[v4] != v0->unk_00.unk_00[v4]) && (param2->unk_00[v4] != 0)) { - v5 = MoveTable_LoadParam(param2->unk_00[v4], MOVEATTRIBUTE_TYPE); + for (i = 0; i < LEARNED_MOVES_MAX; i++) { + if ((param2->move[i] != v0->unk_00.move[i]) && (param2->move[i] != 0)) { + v5 = MoveTable_LoadParam(param2->move[i], MOVEATTRIBUTE_TYPE); v1 = Graphics_GetCharData(sub_0207C944(), sub_0207C908(v5), 1, &v2, 5); - MI_CpuCopy32(v2->pRawData, v0->unk_18[v4], v3); + MI_CpuCopy32(v2->pRawData, v0->unk_18[i], v3); Heap_FreeToHeap(v1); } - if ((v0->unk_28[v4].unk_00.pixels == NULL) || ((param2->unk_00[v4] != v0->unk_00.unk_00[v4]) && (param2->unk_00[v4] != 0))) { - v6 = MessageUtil_MoveName(param2->unk_00[v4], 5); - ov16_0226AEA0(param0, v6, FONT_SUBSCREEN, &v0->unk_28[v4], TEXT_COLOR(7, 8, 9)); + if ((v0->unk_28[i].unk_00.pixels == NULL) || ((param2->move[i] != v0->unk_00.move[i]) && (param2->move[i] != 0))) { + v6 = MessageUtil_MoveName(param2->move[i], 5); + ov16_0226AEA0(param0, v6, FONT_SUBSCREEN, &v0->unk_28[i], TEXT_COLOR(7, 8, 9)); Strbuf_Free(v6); } - if ((v0->unk_78[v4].unk_00.pixels == NULL) || (v0->unk_C8[v4].unk_00.pixels == NULL) || (param2->unk_00[v4] != 0) || (param2->unk_00[v4] != v0->unk_00.unk_00[v4]) || (param2->unk_08[v4] != v0->unk_00.unk_08[v4]) || (param2->unk_10[v4] != v0->unk_00.unk_10[v4])) { - StringTemplate_SetNumber(v10, 0, param2->unk_08[v4], 2, 1, 0); - StringTemplate_SetNumber(v10, 1, param2->unk_10[v4], 2, 1, 0); + if ((v0->unk_78[i].unk_00.pixels == NULL) || (v0->unk_C8[i].unk_00.pixels == NULL) || (param2->move[i] != 0) || (param2->move[i] != v0->unk_00.move[i]) || (param2->curPP[i] != v0->unk_00.curPP[i]) || (param2->maxPP[i] != v0->unk_00.maxPP[i])) { + StringTemplate_SetNumber(v10, 0, param2->curPP[i], 2, 1, 0); + StringTemplate_SetNumber(v10, 1, param2->maxPP[i], 2, 1, 0); StringTemplate_Format(v10, v7, v8); - v11 = ov16_0226B924(param2->unk_08[v4], param2->unk_10[v4]); + v11 = ov16_0226B924(param2->curPP[i], param2->maxPP[i]); - if ((v0->unk_78[v4].unk_00.pixels == NULL) || (param2->unk_00[v4] != v0->unk_00.unk_00[v4]) || (param2->unk_08[v4] != v0->unk_00.unk_08[v4])) { - ov16_0226AEA0(param0, v7, FONT_SYSTEM, &v0->unk_78[v4], v11); + if ((v0->unk_78[i].unk_00.pixels == NULL) || (param2->move[i] != v0->unk_00.move[i]) || (param2->curPP[i] != v0->unk_00.curPP[i])) { + ov16_0226AEA0(param0, v7, FONT_SYSTEM, &v0->unk_78[i], v11); } - if ((v0->unk_C8[v4].unk_00.pixels == NULL) || (param2->unk_00[v4] != v0->unk_00.unk_00[v4]) || (param2->unk_08[v4] != v0->unk_00.unk_08[v4])) { - ov16_0226AEA0(param0, v9, FONT_SYSTEM, &v0->unk_C8[v4], v11); + if ((v0->unk_C8[i].unk_00.pixels == NULL) || (param2->move[i] != v0->unk_00.move[i]) || (param2->curPP[i] != v0->unk_00.curPP[i])) { + ov16_0226AEA0(param0, v9, FONT_SYSTEM, &v0->unk_C8[i], v11); } } } @@ -2854,7 +2854,7 @@ static void ov16_0226AEA0(UnkStruct_ov16_02268A14 *param0, const Strbuf *param1, static void ov16_0226AF0C(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; SpriteTemplate v3; @@ -2869,27 +2869,27 @@ static void ov16_0226AF0C(UnkStruct_ov16_02268A14 *param0) v7 = ov16_0226ABD4(param0, param0->unk_66A); v3 = Unk_ov16_0227047C; - for (v0 = 0; v0 < 4; v0++) { - GF_ASSERT(param0->unk_5EC[v0] == NULL); + for (i = 0; i < LEARNED_MOVES_MAX; i++) { + GF_ASSERT(param0->unk_5EC[i] == NULL); - if (v4->unk_00[v0] != 0) { - v5 = MoveTable_LoadParam(v4->unk_00[v0], MOVEATTRIBUTE_TYPE); - v3.resources[0] = 20025 + v0; - v3.x = Unk_ov16_022702B4[v0][0]; - v3.y = Unk_ov16_022702B4[v0][1]; + if (v4->unk_00[i] != 0) { + v5 = MoveTable_LoadParam(v4->unk_00[i], MOVEATTRIBUTE_TYPE); + v3.resources[0] = 20025 + i; + v3.x = Unk_ov16_022702B4[i][0]; + v3.y = Unk_ov16_022702B4[i][1]; - param0->unk_5EC[v0] = sub_0207CA58(v1, v2, v5, &v3); + param0->unk_5EC[i] = sub_0207CA58(v1, v2, v5, &v3); - sub_0200D500(param0->unk_5EC[v0], v3.x, v3.y, ((192 + 80) << FX32_SHIFT)); + sub_0200D500(param0->unk_5EC[i], v3.x, v3.y, ((192 + 80) << FX32_SHIFT)); { void *v8; NNSG2dImageProxy *v9; v8 = G2S_GetOBJCharPtr(); - v9 = SpriteActor_ImageProxy(param0->unk_5EC[v0]->unk_00); + v9 = SpriteActor_ImageProxy(param0->unk_5EC[i]->unk_00); - MI_CpuCopy16(v7->unk_18[v0], (void *)((u32)v8 + v9->vramLocation.baseAddrOfVram[NNS_G2D_VRAM_TYPE_2DSUB]), sub_0208C098(6)); + MI_CpuCopy16(v7->unk_18[i], (void *)((u32)v8 + v9->vramLocation.baseAddrOfVram[NNS_G2D_VRAM_TYPE_2DSUB]), sub_0208C098(6)); } } } @@ -2897,35 +2897,35 @@ static void ov16_0226AF0C(UnkStruct_ov16_02268A14 *param0) static void ov16_0226AFF4(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; v1 = ov16_0223E010(param0->unk_00); v2 = ov16_0223E018(param0->unk_00); - for (v0 = 0; v0 < 4; v0++) { - if (param0->unk_5EC[v0] != NULL) { - sub_0207CA88(param0->unk_5EC[v0]); - param0->unk_5EC[v0] = NULL; + for (i = 0; i < 4; i++) { + if (param0->unk_5EC[i] != NULL) { + sub_0207CA88(param0->unk_5EC[i]); + param0->unk_5EC[i] = NULL; } } } static void ov16_0226B028(UnkStruct_ov16_02268A14 *param0) { - int v0; + int i; SpriteRenderer *v1; SpriteGfxHandler *v2; v1 = ov16_0223E010(param0->unk_00); v2 = ov16_0223E018(param0->unk_00); - for (v0 = 0; v0 < 4; v0++) { - if (param0->unk_5FC[v0] != NULL) { - sub_0207CB00(param0->unk_5FC[v0]); - sub_0207CAF8(v2, 20029 + v0); - param0->unk_5FC[v0] = NULL; + for (i = 0; i < 4; i++) { + if (param0->unk_5FC[i] != NULL) { + sub_0207CB00(param0->unk_5FC[i]); + sub_0207CAF8(v2, 20029 + i); + param0->unk_5FC[i] = NULL; } } } @@ -2938,13 +2938,13 @@ static void ov16_0226B06C(UnkStruct_ov16_02268A14 *param0, int param1, int param static void ov16_0226B088(UnkStruct_ov16_02268A14 *param0, int param1) { PaletteData *v0; - int v1; + int i; v0 = BattleSystem_PaletteSys(param0->unk_00); - for (v1 = param1; v1 < 4; v1++) { - ov16_0226B31C(param0, &Unk_ov16_0227022C[v1], &Unk_ov16_02270274[v1], 3, 0); - PaletteData_LoadBuffer(v0, ¶m0->unk_58[0xe * 16], 1, (8 + v1) * 16, 0x20); + for (i = param1; i < 4; i++) { + ov16_0226B31C(param0, &Unk_ov16_0227022C[i], &Unk_ov16_02270274[i], 3, 0); + PaletteData_LoadBuffer(v0, ¶m0->unk_58[0xe * 16], 1, (8 + i) * 16, 0x20); } } @@ -3002,20 +3002,20 @@ static void ov16_0226B1E8(UnkStruct_ov16_02268A14 *param0) static void ov16_0226B20C(UnkStruct_ov16_02268A14 *param0, u8 *param1, int param2) { UnkStruct_ov16_02260F14 *v0; - int v1; + int i; u8 v2[6]; int v3; v0 = ¶m0->unk_1A.val3; ov16_0223F858(param0->unk_00, v2); - for (v1 = 0; v1 < 4; v1++) { - v3 = v2[2 + v1]; + for (i = 0; i < 4; i++) { + v3 = v2[2 + i]; if ((param2 == 1) && (v0->unk_00[v3].unk_01_2 == 0)) { - param1[v1] = 0; + param1[i] = 0; } else { - param1[v1] = Unk_ov16_022705B0[param0->unk_66C][v1]; + param1[i] = Unk_ov16_022705B0[param0->unk_66C][i]; } } } @@ -3023,7 +3023,7 @@ static void ov16_0226B20C(UnkStruct_ov16_02268A14 *param0, u8 *param1, int param static void ov16_0226B264(UnkStruct_ov16_02268A14 *param0, int param1, u8 *param2, int param3) { UnkStruct_ov16_02260F14 *v0; - int v1; + int i; v0 = ¶m0->unk_1A.val3; @@ -3033,11 +3033,11 @@ static void ov16_0226B264(UnkStruct_ov16_02268A14 *param0, int param1, u8 *param case 9: case 10: case 11: - for (v1 = 0; v1 < 4; v1++) { - if (v1 == param1 - 1) { - param2[v1] = 1; + for (i = 0; i < 4; i++) { + if (i == param1 - 1) { + param2[i] = 1; } else { - param2[v1] = 0; + param2[i] = 0; } } break; @@ -3149,7 +3149,7 @@ static void inline_ov16_0226B314_1(SysTask *param0, void *param1) UnkStruct_ov16_02268A14_sub4 *v1; BgConfig *v2; PaletteData *v3; - int v4, v5; + int i, v5; u8 v6[4]; v1 = &v0->unk_6A0; @@ -3175,11 +3175,11 @@ static void inline_ov16_0226B314_1(SysTask *param0, void *param1) ov16_0226B264(v0, v1->unk_00, v6, 1); - for (v4 = 0; v4 < 4; v4++) { - if (v6[v4] == 1) { - PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[v4] * 16, 16, (v1->unk_04 >> 8) / 2, 0x7fff); - PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[v4] * 16 + 1, 1, v1->unk_04 >> 8, 0x7b1a); - PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[v4] * 16 + 0xa, 1, v1->unk_04 >> 8, 0x4634); + for (i = 0; i < 4; i++) { + if (v6[i] == 1) { + PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[i] * 16, 16, (v1->unk_04 >> 8) / 2, 0x7fff); + PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[i] * 16 + 1, 1, v1->unk_04 >> 8, 0x7b1a); + PaletteData_Blend(v3, 1, Unk_ov16_02270A0C[i] * 16 + 0xa, 1, v1->unk_04 >> 8, 0x4634); } } @@ -3193,7 +3193,7 @@ static void inline_ov16_0226B314_1(SysTask *param0, void *param1) static void ov16_0226B31C(UnkStruct_ov16_02268A14 *param0, const s16 *param1, const UnkStruct_ov16_022702F4 *param2, int param3, int param4) { - int v0, v1; + int j, i; BgConfig *v2; u16 *v3, *v4; u16 *v5, *v6; @@ -3204,12 +3204,12 @@ static void ov16_0226B31C(UnkStruct_ov16_02268A14 *param0, const s16 *param1, co v5 = param0->unk_3C[param3]; v7 = param1[param4]; - for (v1 = param2->unk_00; v1 <= param2->unk_01; v1++) { - v4 = &v3[v1 * 32]; - v6 = &v5[v1 * 32]; + for (i = param2->unk_00; i <= param2->unk_01; i++) { + v4 = &v3[i * 32]; + v6 = &v5[i * 32]; - for (v0 = param2->unk_02; v0 <= param2->unk_03; v0++) { - v4[v0] = v6[v0] + v7; + for (j = param2->unk_02; j <= param2->unk_03; j++) { + v4[j] = v6[j] + v7; } } @@ -3400,9 +3400,8 @@ static void ov16_0226B780(SysTask *param0, void *param1) { UnkStruct_ov16_02268A14 *v0 = param1; BgConfig *v1; - int v2, v3; + int i, v2, v3; u8 v4[4]; - int v5; v1 = BattleSystem_BGL(v0->unk_00); @@ -3410,17 +3409,17 @@ static void ov16_0226B780(SysTask *param0, void *param1) case 0: ov16_0226B264(v0, v0->unk_67C.unk_04_val4.unk_1C, v4, 1); - for (v5 = 0; v5 < 4; v5++) { - if (v4[v5] == 1) { - ov16_0226B31C(v0, Unk_ov16_022703D4[v5], &Unk_ov16_0227033C[v5], 4, 2); + for (i = 0; i < 4; i++) { + if (v4[i] == 1) { + ov16_0226B31C(v0, Unk_ov16_022703D4[i], &Unk_ov16_0227033C[i], 4, 2); - if (v0->unk_4CC[0 + v5].unk_00 != NULL) { - sub_020129A4(v0->unk_4CC[0 + v5].unk_00, &v2, &v3); - sub_020128C4(v0->unk_4CC[0 + v5].unk_00, v2, v3 + -2); + if (v0->unk_4CC[0 + i].unk_00 != NULL) { + sub_020129A4(v0->unk_4CC[0 + i].unk_00, &v2, &v3); + sub_020128C4(v0->unk_4CC[0 + i].unk_00, v2, v3 + -2); } - if (v0->unk_60C[v5] != NULL) { - sub_0200D5DC(v0->unk_60C[v5], 0, -2); + if (v0->unk_60C[i] != NULL) { + sub_0200D5DC(v0->unk_60C[i], 0, -2); } } } @@ -3439,17 +3438,17 @@ static void ov16_0226B780(SysTask *param0, void *param1) case 2: ov16_0226B264(v0, v0->unk_67C.unk_04_val4.unk_1C, v4, 1); - for (v5 = 0; v5 < 4; v5++) { - if (v4[v5] == 1) { - ov16_0226B31C(v0, Unk_ov16_022703D4[v5], &Unk_ov16_0227033C[v5], 4, 1); + for (i = 0; i < 4; i++) { + if (v4[i] == 1) { + ov16_0226B31C(v0, Unk_ov16_022703D4[i], &Unk_ov16_0227033C[i], 4, 1); - if (v0->unk_4CC[0 + v5].unk_00 != NULL) { - sub_020129A4(v0->unk_4CC[0 + v5].unk_00, &v2, &v3); - sub_020128C4(v0->unk_4CC[0 + v5].unk_00, v2, v3 + 1); + if (v0->unk_4CC[0 + i].unk_00 != NULL) { + sub_020129A4(v0->unk_4CC[0 + i].unk_00, &v2, &v3); + sub_020128C4(v0->unk_4CC[0 + i].unk_00, v2, v3 + 1); } - if (v0->unk_60C[v5] != NULL) { - sub_0200D5DC(v0->unk_60C[v5], 0, 1); + if (v0->unk_60C[i] != NULL) { + sub_0200D5DC(v0->unk_60C[i], 0, 1); } } } @@ -3660,20 +3659,20 @@ static void ov16_0226BC50(SysTask *param0, void *param1) { UnkStruct_ov16_02268A14 *v0 = param1; const UnkStruct_ov16_02270670 *v1; - int v2; + int i; v1 = &Unk_ov16_02270670[v0->unk_66B]; - for (v2 = 0; v2 < 4; v2++) { - if (v1->unk_04_val2[v2] == 0xffff) { - Bg_ToggleLayer(4 + v2, 0); + for (i = 0; i < 4; i++) { + if (v1->unk_04_val2[i] == 0xffff) { + Bg_ToggleLayer(4 + i, 0); } else { - Bg_ToggleLayer(4 + v2, 1); + Bg_ToggleLayer(4 + i, 1); } } - for (v2 = 0; v2 < 4; v2++) { - Bg_SetPriority(4 + v2, v1->unk_0C_val2[v2]); + for (i = 0; i < 4; i++) { + Bg_SetPriority(4 + i, v1->unk_0C_val2[i]); } SysTask_Done(param0); @@ -3812,7 +3811,7 @@ static int ov16_0226BEC0(UnkStruct_ov16_02268A14 *param0, int param1) UnkStruct_ov16_0226CB10 *v0; u32 v1; const UnkStruct_ov16_02270670 *v2; - int v3, v4, v5; + int i, v4, v5; UnkStruct_ov16_0226C378 *v6; v0 = ¶m0->unk_6BC; @@ -3870,9 +3869,9 @@ static int ov16_0226BEC0(UnkStruct_ov16_02268A14 *param0, int param1) return Unk_ov16_022701EC[v0->unk_01][v0->unk_02]; case PAD_BUTTON_B: if (param0->unk_66F == 1) { - for (v3 = 0; v3 < v2->unk_14[v3].rect.top != 0xff; v3++) { - if (4 == v2->unk_18[v3]) { - return v3; + for (i = 0; i < v2->unk_14[i].rect.top != 0xff; i++) { + if (4 == v2->unk_18[i]) { + return i; } } } @@ -3885,18 +3884,18 @@ static int ov16_0226BEC0(UnkStruct_ov16_02268A14 *param0, int param1) static void ov16_0226C0A0(UnkStruct_ov16_02268A14 *param0, int param1) { UnkStruct_ov16_0226C378 *v0; - int v1, v2, v3; + int v1, j, i; v1 = BattleSystem_BattlerOfType(param0->unk_00, param0->unk_66A); if ((param1 != 3) || (param0->unk_6C1 == 0)) { v0 = ov16_02263B0C(BattleSystem_BattlerData(param0->unk_00, v1)); - for (v3 = 0; v3 < 2; v3++) { - for (v2 = 0; v2 < 3; v2++) { - if (param1 == Unk_ov16_022701EC[v3][v2]) { - v0->unk_00 = v2; - v0->unk_01 = v3; + for (i = 0; i < 2; i++) { + for (j = 0; j < 3; j++) { + if (param1 == Unk_ov16_022701EC[i][j]) { + v0->unk_00 = j; + v0->unk_01 = i; return; } @@ -3947,7 +3946,7 @@ static int ov16_0226C1F8(UnkStruct_ov16_02268A14 *param0, int param1) UnkStruct_ov16_0226CB10 *v0; u32 v1; const UnkStruct_ov16_02270670 *v2; - int v3, v4; + int v3, i; u8 v5[3][2]; UnkStruct_ov16_02260C00 *v6; UnkStruct_ov16_0226C378 *v7; @@ -3988,9 +3987,9 @@ static int ov16_0226C1F8(UnkStruct_ov16_02268A14 *param0, int param1) case PAD_BUTTON_A: return Unk_ov16_022701E4[v0->unk_01][v0->unk_02]; case PAD_BUTTON_B: - for (v4 = 0; v4 < v2->unk_14[v4].rect.top != 0xff; v4++) { - if (0xff == v2->unk_18[v4]) { - return v4; + for (i = 0; i < v2->unk_14[i].rect.top != 0xff; i++) { + if (0xff == v2->unk_18[i]) { + return i; } } @@ -4003,7 +4002,7 @@ static int ov16_0226C1F8(UnkStruct_ov16_02268A14 *param0, int param1) static void ov16_0226C378(UnkStruct_ov16_02268A14 *param0, int param1) { UnkStruct_ov16_0226C378 *v0; - int v1, v2, v3; + int v1, j, i; if (param1 == 0) { return; @@ -4012,11 +4011,11 @@ static void ov16_0226C378(UnkStruct_ov16_02268A14 *param0, int param1) v1 = BattleSystem_BattlerOfType(param0->unk_00, param0->unk_66A); v0 = ov16_02263B0C(BattleSystem_BattlerData(param0->unk_00, v1)); - for (v3 = 0; v3 < 3; v3++) { - for (v2 = 0; v2 < 2; v2++) { - if (param1 == Unk_ov16_022701E4[v3][v2]) { - v0->unk_02 = v2; - v0->unk_03 = v3; + for (i = 0; i < 3; i++) { + for (j = 0; j < 2; j++) { + if (param1 == Unk_ov16_022701E4[i][j]) { + v0->unk_02 = j; + v0->unk_03 = i; return; } } @@ -4032,7 +4031,7 @@ static int ov16_0226C3C8(UnkStruct_ov16_02268A14 *param0, int param1) int v5 = 0; u8 v6[4], v7[4]; u8 v8[3][2]; - int v9, v10, v11, v12; + int i, j, v11, v12; int v13, v14, v15, v16, v17, v18; int v19, v20, v21, v22; int v23, v24, v25, v26; @@ -4049,10 +4048,10 @@ static int ov16_0226C3C8(UnkStruct_ov16_02268A14 *param0, int param1) ov16_0226B20C(param0, v6, 1); ov16_0226B20C(param0, v7, 0); - for (v9 = 0; v9 < 2; v9++) { - for (v10 = 0; v10 < 2; v10++) { - if (v7[v8[v9][v10]] == 0) { - v8[v9][v10] = 0xff; + for (i = 0; i < 2; i++) { + for (j = 0; j < 2; j++) { + if (v7[v8[i][j]] == 0) { + v8[i][j] = 0xff; } } } @@ -4283,7 +4282,7 @@ static int ov16_0226C3C8(UnkStruct_ov16_02268A14 *param0, int param1) static void ov16_0226C9B8(UnkStruct_ov16_02268A14 *param0, int param1) { UnkStruct_ov16_0226C378 *v0; - int v1, v2, v3; + int v1, j, i; if (param1 == 4) { return; @@ -4294,11 +4293,11 @@ static void ov16_0226C9B8(UnkStruct_ov16_02268A14 *param0, int param1) v0->unk_06 = param0->unk_66C; - for (v3 = 0; v3 < 3; v3++) { - for (v2 = 0; v2 < 2; v2++) { - if (param1 == Unk_ov16_022701DC[v3][v2]) { - v0->unk_04 = v2; - v0->unk_05 = v3; + for (i = 0; i < 3; i++) { + for (j = 0; j < 2; j++) { + if (param1 == Unk_ov16_022701DC[i][j]) { + v0->unk_04 = j; + v0->unk_05 = i; return; } @@ -4608,22 +4607,22 @@ void ov16_0226CEB0(UnkStruct_ov16_02268A14 *param0, int param1) { Strbuf *v8; MessageLoader *v9 = BattleSystem_MessageLoader(param0->unk_00); - int v10; + int i; const u16 v11[][2] = { { 1261, 1262 }, { 1263, 1264 }, { 1265, 1266 }, }; - for (v10 = 0; v10 < 2; v10++) { - if (param0->unk_4CC[1 + v10].unk_00 != NULL) { + for (i = 0; i < 2; i++) { + if (param0->unk_4CC[1 + i].unk_00 != NULL) { GF_ASSERT(0); return; } - v8 = MessageLoader_GetNewStrbuf(v9, v11[param1][v10]); + v8 = MessageLoader_GetNewStrbuf(v9, v11[param1][i]); - ov16_0226A98C(param0, ¶m0->unk_4CC[1 + v10], v8, FONT_SYSTEM, TEXT_COLOR(1, 2, 0), 4, 20023, 1 * 8 + 8, 6 * 8 + 16 + 16 * v10, 0, NULL); + ov16_0226A98C(param0, ¶m0->unk_4CC[1 + i], v8, FONT_SYSTEM, TEXT_COLOR(1, 2, 0), 4, 20023, 1 * 8 + 8, 6 * 8 + 16 + 16 * i, 0, NULL); Strbuf_Free(v8); } } diff --git a/subprojects/NitroDWC.wrap b/subprojects/NitroDWC.wrap index 168e3f98b6..699f8430fd 100644 --- a/subprojects/NitroDWC.wrap +++ b/subprojects/NitroDWC.wrap @@ -1,8 +1,9 @@ [wrap-git] url = https://github.com/Nomura-RH/NitroDWC.git -revision = main +revision = 8220c8bdec2e8b5252ee710cf3cc0c148228a03a depth = 1 directory = NitroDWC-2.2.30008 [provide] dependency_names = NitroDWC + diff --git a/subprojects/NitroSDK.wrap b/subprojects/NitroSDK.wrap index 423aa29945..0755f4569a 100644 --- a/subprojects/NitroSDK.wrap +++ b/subprojects/NitroSDK.wrap @@ -1,9 +1,10 @@ [wrap-git] url = https://github.com/Nomura-RH/NitroSDK.git -revision = main +revision = 0082ec3dd5e951a7ee7c2067595a4fa0e9496d36 depth = 1 directory = NitroSDK-4.2.30001 [provide] dependency_names = NitroSDK program_names = makelcf + diff --git a/subprojects/NitroSystem.wrap b/subprojects/NitroSystem.wrap index ccbf1c505f..7e5b4bb6f4 100644 --- a/subprojects/NitroSystem.wrap +++ b/subprojects/NitroSystem.wrap @@ -1,8 +1,9 @@ [wrap-git] url = https://github.com/Nomura-RH/NitroSystem.git -revision = main +revision = 507acff1585505bdac3f996551ca5123f8408073 depth = 1 directory = NitroSystem-071126.1 [provide] dependency_names = NitroSystem + diff --git a/subprojects/NitroWiFi.wrap b/subprojects/NitroWiFi.wrap index b3a65b35ec..da0ba7bb78 100644 --- a/subprojects/NitroWiFi.wrap +++ b/subprojects/NitroWiFi.wrap @@ -1,8 +1,9 @@ [wrap-git] url = https://github.com/Nomura-RH/NitroWiFi.git -revision = main +revision = 0d74e5de275952680962237da9d592e80815679a depth = 1 directory = NitroWiFi-2.1.30003 [provide] dependency_names = NitroWiFi + diff --git a/subprojects/libvct.wrap b/subprojects/libvct.wrap index 2daeca835c..3d382a46b8 100644 --- a/subprojects/libvct.wrap +++ b/subprojects/libvct.wrap @@ -1,8 +1,9 @@ [wrap-git] url = https://github.com/Nomura-RH/libvct.git -revision = main +revision = dd9f89d7c0a52e74a3c4b25552ea05cdc127a011 depth = 1 directory = libvct-1.3.1 [provide] dependency_names = libvct + diff --git a/subprojects/update.ini b/subprojects/update.ini new file mode 100644 index 0000000000..c5b62c864b --- /dev/null +++ b/subprojects/update.ini @@ -0,0 +1,14 @@ +[NitroDWC] +revision = main + +[NitroSDK] +revision = main + +[NitroSystem] +revision = main + +[NitroWiFi] +revision = main + +[libvct] +revision = main diff --git a/subprojects/update.py b/subprojects/update.py new file mode 100755 index 0000000000..592a07e8d4 --- /dev/null +++ b/subprojects/update.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 + +from configparser import ConfigParser +from subprocess import run +from os.path import dirname, realpath, join + +def update_wrap(wrap, revision): + cfg = ConfigParser() + cfg.read(wrap) + git = cfg["wrap-git"] + url = git["url"] + cmd = run(["git", "ls-remote", url, revision], + check=True, capture_output=True) + rev = cmd.stdout.decode().split()[0] + print(" - Revision:", rev) + git["revision"] = rev + with open(wrap, "w") as f: + cfg.write(f) + +if __name__ == "__main__": + subprojects = dirname(realpath(__file__)) + cfg = ConfigParser() + cfg.read(join(subprojects, "update.ini")) + for wrap in cfg.sections(): + print("Updating:", wrap) + revision = cfg[wrap]["revision"] + update_wrap(join(subprojects, wrap + ".wrap"), revision) diff --git a/tools/json2bin/convert.py b/tools/json2bin/convert.py new file mode 100644 index 0000000000..980a32c2e7 --- /dev/null +++ b/tools/json2bin/convert.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 + +def pad(len: int) -> bytes: + return (0).to_bytes(len, 'little') + +def u8(i: int) -> bytes: + return i.to_bytes(1, 'little') + +def u16(i: int) -> bytes: + return i.to_bytes(2, 'little') + +def u32(i: int) -> bytes: + return i.to_bytes(4, 'little') diff --git a/tools/json2bin/encounter.py b/tools/json2bin/encounter.py index 704b5f2309..bcd0f30a0c 100644 --- a/tools/json2bin/encounter.py +++ b/tools/json2bin/encounter.py @@ -5,15 +5,15 @@ import pathlib import sys from consts import species - +from convert import pad, u8, u32 def as_species(s: str) -> bytes: - return species.PokemonSpecies[s].value.to_bytes(4, 'little') + return u32(species.PokemonSpecies[s].value) def convert_land(encs: list) -> bytes: return b''.join(itertools.chain.from_iterable([ ( - int(encs[i]['level']).to_bytes(4, 'little'), + u32(encs[i]['level']), as_species(encs[i]['species']), ) for i in range(12) @@ -22,9 +22,9 @@ def convert_land(encs: list) -> bytes: def convert_water(encs: list) -> bytes: return b''.join(itertools.chain.from_iterable([ ( - int(encs[i]['level_max']).to_bytes(1, 'little'), - int(encs[i]['level_min']).to_bytes(1, 'little'), - (0).to_bytes(2, 'little'), + u8(encs[i]['level_max']), + u8(encs[i]['level_min']), + pad(2), as_species(encs[i]['species']), ) for i in range(5) @@ -39,7 +39,7 @@ with open(input_path, 'r', encoding='utf-8') as input_file: data = json.load(input_file) packables = bytearray([]) -packables.extend(int(data['land_rate']).to_bytes(4, 'little')) +packables.extend(u32(data['land_rate'])) packables.extend(convert_land(data['land_encounters'])) for enc_type, i in itertools.product(['swarms', 'morning', 'night'], range(2)): @@ -49,17 +49,17 @@ for i in range(4): packables.extend(as_species(data['radar'][i])) for key in ['rate_form0', 'rate_form1', 'rate_form2', 'rate_form3', 'rate_form4', 'unown_table']: - packables.extend(int(data[key]).to_bytes(4, 'little')) + packables.extend(u32(data[key])) for version, i in itertools.product(['ruby', 'sapphire', 'emerald', 'firered', 'leafgreen'], range(2)): packables.extend(as_species(data[version][i])) -packables.extend(data['surf_rate'].to_bytes(4, 'little')) +packables.extend(u32(data['surf_rate'])) packables.extend(convert_water(data['surf_encounters'])) -packables.extend((0).to_bytes(44, 'little')) +packables.extend(pad(44)) for rod in ['old', 'good', 'super']: - packables.extend(data[f'{rod}_rod_rate'].to_bytes(4, 'little')) + packables.extend(u32(data[f'{rod}_rod_rate'])) packables.extend(convert_water(data[f'{rod}_rod_encounters'])) with open(output_path, 'wb') as output_file: diff --git a/tools/json2bin/event.py b/tools/json2bin/event.py new file mode 100644 index 0000000000..ac88571a23 --- /dev/null +++ b/tools/json2bin/event.py @@ -0,0 +1,130 @@ +#!/usr/bin/env python3 +import json +import pathlib +import sys + +from convert import pad, u16, u32 + + +def parse_bg_events(bg_events: list[dict]) -> bytes: + parsed = [ + b"".join( + [ + u16(bg["script"]), + u16(bg["type"]), + u32(bg["x"]), + u32(bg["z"]), + u32(bg["y"]), + u16(bg["player_facing_dir"]), + pad(2), + ] + ) + for bg in bg_events + ] + + return b"".join( + [ + u32(len(bg_events)), + *parsed, + ] + ) + + +# separate function to enable throwing value errors in a list comprehension +def parse_object_event(obj: dict, i: int) -> bytes: + obj_data = obj["data"] + [0] * (3 - len(obj["data"])) # pad up to length 3 + if len(obj_data) > 3: + raise ValueError(f"more than 3 values found in object event data ({obj_data})") + + return b"".join( + [ + u16(obj.get("local_id", i)), + u16(obj["graphics_id"]), + u16(obj["movement_type"]), + u16(obj["trainer_type"]), + u16(obj["flag"]), + u16(obj["script"]), + u16(obj["initial_dir"]), + u16(obj_data[0]), + u16(obj_data[1]), + u16(obj_data[2]), + u16(obj["movement_range_x"]), + u16(obj["movement_range_z"]), + u16(obj["x"]), + u16(obj["z"]), + u32(obj["y"] * 0x10000), + ] + ) + + +def parse_object_events(obj_events: list[dict]) -> bytes: + return b"".join( + [ + u32(len(obj_events)), + *[parse_object_event(obj, i) for i, obj in enumerate(obj_events)], + ] + ) + + +def parse_warp_events(warp_events: list[dict]) -> bytes: + parsed = [ + b"".join( + [ + u16(warp["x"]), + u16(warp["z"]), + u16(warp["dest_header_id"]), + u16(warp["dest_warp_id"]), + pad(4), + ] + ) + for warp in warp_events + ] + + return b"".join( + [ + u32(len(warp_events)), + *parsed, + ] + ) + + +def parse_coord_events(coord_events: list[dict]) -> bytes: + parsed = [ + b"".join( + [ + u16(coord["script"]), + u16(coord["x"]), + u16(coord["z"]), + u16(coord["width"]), + u16(coord["length"]), + u16(coord["y"]), + u16(coord["value"]), + u16(coord["var"]), + ] + ) + for coord in coord_events + ] + + return b"".join( + [ + u32(len(coord_events)), + *parsed, + ] + ) + + +input_path = pathlib.Path(sys.argv[1]) +output_path = pathlib.Path(sys.argv[2]) + +data = {} +with open(input_path, "r", encoding="utf-8") as input_file: + data = json.load(input_file) + +packable = bytearray([]) +packable.extend(parse_bg_events(data["bg_events"])) +packable.extend(parse_object_events(data["object_events"])) +packable.extend(parse_warp_events(data["warp_events"])) +packable.extend(parse_coord_events(data["coord_events"])) + +with open(output_path, "wb") as output_file: + output_file.write(packable) diff --git a/tools/json2bin/events.py b/tools/json2bin/events.py deleted file mode 100644 index 895ea534af..0000000000 --- a/tools/json2bin/events.py +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/env python3 -from collections.abc import Mapping, Sequence -import pathlib -import json2bin as j2b - -SCHEMA = j2b.Parser() - -def parse_bg_events(bg_events: Sequence[Mapping], *args) -> bytes: - bg_bytes = bytearray([]) - bg_bytes.extend(j2b.parse_int(len(bg_events), 4)) - for bg in bg_events: - bg_bytes.extend(j2b.parse_int(bg['script'], 2)) - bg_bytes.extend(j2b.parse_int(bg['type'], 2)) - bg_bytes.extend(j2b.parse_int(bg['x'], 4)) - bg_bytes.extend(j2b.parse_int(bg['z'], 4)) - bg_bytes.extend(j2b.parse_int(bg['y'], 4)) - bg_bytes.extend(j2b.parse_int(bg['player_facing_dir'], 2)) - bg_bytes.extend(j2b.parse_int(0, 2)) - return bg_bytes - -def parse_object_events(obj_events: Sequence[Mapping], *args) -> bytes: - obj_bytes = bytearray([]) - obj_bytes.extend(j2b.parse_int(len(obj_events), 4)) - for i, obj in enumerate(obj_events): - local_id = obj['local_id'] if 'local_id' in obj else i - obj_bytes.extend(j2b.parse_int(local_id, 2)) - obj_bytes.extend(j2b.parse_int(obj['graphics_id'], 2)) - obj_bytes.extend(j2b.parse_int(obj['movement_type'], 2)) - obj_bytes.extend(j2b.parse_int(obj['trainer_type'], 2)) - obj_bytes.extend(j2b.parse_int(obj['flag'], 2)) - obj_bytes.extend(j2b.parse_int(obj['script'], 2)) - obj_bytes.extend(j2b.parse_int(obj['initial_dir'], 2)) - obj_data = obj['data'] - if len(obj_data) > 3: - raise ValueError(f'more than 3 values found in object event data ({obj_data})') - obj_bytes.extend(j2b.parse_int(obj_data[0] if len(obj_data) > 0 else 0, 2)) - obj_bytes.extend(j2b.parse_int(obj_data[1] if len(obj_data) > 1 else 0, 2)) - obj_bytes.extend(j2b.parse_int(obj_data[2] if len(obj_data) > 2 else 0, 2)) - obj_bytes.extend(j2b.parse_int(obj['movement_range_x'], 2)) - obj_bytes.extend(j2b.parse_int(obj['movement_range_z'], 2)) - obj_bytes.extend(j2b.parse_int(obj['x'], 2)) - obj_bytes.extend(j2b.parse_int(obj['z'], 2)) - obj_bytes.extend(j2b.parse_int(obj['y'] * 0x10000, 4)) - return obj_bytes - -def parse_warp_events(warp_events: Sequence[Mapping], *args) -> bytes: - warp_bytes = bytearray([]) - warp_bytes.extend(j2b.parse_int(len(warp_events), 4)) - for warp in warp_events: - warp_bytes.extend(j2b.parse_int(warp['x'], 2)) - warp_bytes.extend(j2b.parse_int(warp['z'], 2)) - warp_bytes.extend(j2b.parse_int(warp['dest_header_id'], 2)) - warp_bytes.extend(j2b.parse_int(warp['dest_warp_id'], 2)) - warp_bytes.extend(j2b.parse_int(0, 4)) - return warp_bytes - -def parse_coord_events(coord_events: Sequence[Mapping], *args) -> bytes: - coords_bytes = bytearray([]) - coords_bytes.extend(j2b.parse_int(len(coord_events), 4)) - for coord in coord_events: - coords_bytes.extend(j2b.parse_int(coord['script'], 2)) - coords_bytes.extend(j2b.parse_int(coord['x'], 2)) - coords_bytes.extend(j2b.parse_int(coord['z'], 2)) - coords_bytes.extend(j2b.parse_int(coord['width'], 2)) - coords_bytes.extend(j2b.parse_int(coord['length'], 2)) - coords_bytes.extend(j2b.parse_int(coord['y'], 2)) - coords_bytes.extend(j2b.parse_int(coord['value'], 2)) - coords_bytes.extend(j2b.parse_int(coord['var'], 2)) - return coords_bytes - -SCHEMA = (SCHEMA - .register('bg_events', -1, parse_bg_events) - .register('object_events', -1, parse_object_events) - .register('warp_events', -1, parse_warp_events) - .register('coord_events', -1, parse_coord_events) -) - -def indexer(file_path: pathlib.Path) -> int: - return int(file_path.stem.removeprefix('events_')) - -args = j2b.ARGPARSER.parse_args() -j2b.json2bin(args.source_dir, - SCHEMA, - args.private_dir, - args.output_dir, - index_func=indexer, - narc_name='zone_event', - narc_packer=args.knarc) diff --git a/tools/json2bin/meson.build b/tools/json2bin/meson.build index e113e394dc..49e09b7673 100644 --- a/tools/json2bin/meson.build +++ b/tools/json2bin/meson.build @@ -1,7 +1,7 @@ json2bin_env = environment() json2bin_env.set('PYTHONPATH', meson.project_build_root()) # access to constants geneated by constgen -events_py = find_program('events.py', native: true) +# Old combined parser + packer scripts movedata_py = find_program('movedata.py', native: true) pokemon_personal_data_py = find_program('pokemon_personal_data.py', native: true) pokemon_wotbl_data_py = find_program('pokemon_wotbl_data.py', native: true) @@ -9,4 +9,6 @@ trainer_data_py = find_program('trainer_data.py', native: true) evo_py = find_program('evo.py', native: true) pl_poke_data_py = find_program('pl_poke_data.py', native: true) -encounters_new_py = find_program('encounter.py', native: true) +# New single-file-parser scripts +encounter_py = find_program('encounter.py', native: true) +event_py = find_program('event.py', native: true)