sys flag rearrange

This commit is contained in:
PikalaxALT 2019-10-17 21:24:47 -04:00
parent 97dc0a6903
commit 2435bcc09d
32 changed files with 192 additions and 208 deletions

View File

@ -6,7 +6,7 @@ CeladonCity_Condominiums_1F_EventScript_16C321:: @ 816C321
faceplayer
checkflag FLAG_0x2F8
goto_if_eq EventScript_16C36A
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_16C374
checkflag FLAG_0x2A6
goto_if_eq EventScript_16C36A

View File

@ -21,7 +21,7 @@ EventScript_16D0A0:: @ 816D0A0
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x09E
setflag FLAG_0x4B3
setflag FLAG_0x823
setflag FLAG_BADGE04_GET
setvar VAR_0x8008, 4
call EventScript_1A6B18
goto EventScript_16D0C6
@ -91,7 +91,7 @@ CeladonCity_Gym_EventScript_16D1B5:: @ 816D1B5
CeladonCity_Gym_EventScript_16D1CC:: @ 816D1CC
lockall
checkflag FLAG_0x823
checkflag FLAG_BADGE04_GET
goto_if_eq EventScript_16D1E0
msgbox gUnknown_8197874
releaseall

View File

@ -17,7 +17,7 @@ EventScript_16AAD3:: @ 816AAD3
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B1
setflag FLAG_0x821
setflag FLAG_BADGE02_GET
setrespawn SPAWN_CERULEAN_CITY
setvar VAR_0x8008, 2
call EventScript_1A6B18
@ -70,7 +70,7 @@ EventScript_16AB94:: @ 816AB94
CeruleanCity_Gym_EventScript_16AB9E:: @ 816AB9E
lockall
checkflag FLAG_0x821
checkflag FLAG_BADGE02_GET
goto_if_eq EventScript_16ABB2
msgbox gUnknown_81926E1
releaseall

View File

@ -68,7 +68,7 @@ EventScript_16DA06:: @ 816DA06
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B6
setflag FLAG_0x826
setflag FLAG_BADGE07_GET
setrespawn SPAWN_CINNABAR_ISLAND
setvar VAR_0x4071, 1
clearflag FLAG_0x062
@ -208,7 +208,7 @@ EventScript_16DBC0:: @ 816DBC0
CinnabarIsland_Gym_EventScript_16DBCA:: @ 816DBCA
lockall
checkflag FLAG_0x826
checkflag FLAG_BADGE07_GET
goto_if_eq EventScript_16DBDE
msgbox gUnknown_8199C29
releaseall

View File

@ -18,7 +18,7 @@ EventScript_16D580:: @ 816D580
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x09F
setflag FLAG_0x4B4
setflag FLAG_0x824
setflag FLAG_BADGE05_GET
setvar VAR_0x8008, 5
call EventScript_1A6B18
goto EventScript_16D5A6
@ -90,7 +90,7 @@ EventScript_16D69D:: @ 816D69D
FuchsiaCity_Gym_EventScript_16D6A7:: @ 816D6A7
lockall
checkflag FLAG_0x824
checkflag FLAG_BADGE05_GET
goto_if_eq EventScript_16D6BB
msgbox gUnknown_8198B4B
releaseall

View File

@ -84,9 +84,9 @@ EventScript_170CB1:: @ 8170CB1
waitmovement 0
applymovement 255, Movement_1A75EB
waitmovement 0
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_170E34
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_170E3D
applymovement 3, Movement_1A75ED
waitmovement 0

View File

@ -50,7 +50,7 @@ EventScript_1654D8:: @ 81654D8
addobject 3
applymovement 3, Movement_1655AF
waitmovement 0
checkflag FLAG_0x89B
checkflag FLAG_WORLD_MAP_ONE_ISLAND
goto_if 0, EventScript_1655A1
msgbox gUnknown_817D8BF
setvar VAR_0x8004, 0

View File

@ -24,7 +24,7 @@ PalletTown_GarysHouse_EventScript_168D56:: @ 8168D56
setvar VAR_0x8004, 1
setvar VAR_0x8005, 2
special UpdatePickStateFromSpecialVar8005
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_168DB9
compare_var_to_value VAR_0x4001, 1
goto_if_eq EventScript_168EEC

View File

@ -601,7 +601,7 @@ PalletTown_ProfessorOaksLab_EventScript_169595:: @ 8169595
goto_if_eq EventScript_169903
compare_var_to_value VAR_MAP_SCENE_PALLET_TOWN_PROFESSOR_OAKS_LAB, 8
goto_if_eq EventScript_169A6E
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_1699CE
compare_var_to_value VAR_0x4052, 1
goto_if_eq EventScript_169903
@ -706,7 +706,7 @@ EventScript_16961E:: @ 816961E
waitmessage
waitfanfare
call EventScript_1A6675
setflag FLAG_0x829
setflag FLAG_SYS_POKEDEX_GET
special sub_810B810
setvar VAR_0x407C, 1
msgbox gUnknown_818E612
@ -974,7 +974,7 @@ EventScript_1699CE:: @ 81699CE
closemessage
compare_var_to_value VAR_0x8009, 60
goto_if 0, EventScript_1699F9
checkflag FLAG_0x89B
checkflag FLAG_WORLD_MAP_ONE_ISLAND
goto_if 0, EventScript_1699F9
delay 30
msgbox gUnknown_818EDF5
@ -1205,7 +1205,7 @@ EventScript_169C74:: @ 8169C74
removeobject VAR_LAST_TALKED
msgbox gUnknown_818E2E5
call EventScript_1A6675
setflag FLAG_0x828
setflag FLAG_SYS_POKEMON_GET
setflag FLAG_0x291
givemon VAR_0x4002, 5, ITEM_NONE, 0, 0, 0
copyvar VAR_STARTER_MON, VAR_0x4001
@ -1341,7 +1341,7 @@ EventScript_169DE4:: @ 8169DE4
PalletTown_ProfessorOaksLab_EventScript_169DEE:: @ 8169DEE
lock
faceplayer
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_169E03
msgbox gUnknown_818EBE6
release
@ -1358,7 +1358,7 @@ EventScript_169E03:: @ 8169E03
PalletTown_ProfessorOaksLab_EventScript_169E1A:: @ 8169E1A
lock
faceplayer
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_169E2F
msgbox gUnknown_818EBE6
release

View File

@ -17,7 +17,7 @@ EventScript_16A5C5:: @ 816A5C5
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B0
setflag FLAG_0x820
setflag FLAG_BADGE01_GET
setvar VAR_0x406C, 1
setflag FLAG_0x02E
clearflag FLAG_0x092
@ -82,7 +82,7 @@ EventScript_16A6A5:: @ 816A6A5
PewterCity_Gym_EventScript_16A6AF:: @ 816A6AF
lockall
checkflag FLAG_0x820
checkflag FLAG_BADGE01_GET
goto_if_eq EventScript_16A6C3
msgbox gUnknown_819146E
releaseall

View File

@ -61,9 +61,9 @@ PokemonLeague_AgathasRoom_EventScript_162877:: @ 8162877
setvar VAR_0x8004, 0
setvar VAR_0x8005, 4
special SetFlavorTextFlagFromSpecialVars
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_1628E9
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_1628F2
setflag FLAG_0x003
setflag FLAG_0x005

View File

@ -58,9 +58,9 @@ PokemonLeague_BrunosRoom_EventScript_1626EC:: @ 81626EC
setvar VAR_0x8004, 10
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162751
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_16275A
setflag FLAG_0x003
setflag FLAG_0x005

View File

@ -59,9 +59,9 @@ EventScript_162B76:: @ 8162B76
applymovement 255, Movement_162D07
waitmovement 0
delay 20
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162CB3
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_162CBC
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2

View File

@ -112,9 +112,9 @@ PokemonLeague_LancesRoom_EventScript_162A14:: @ 8162A14
setvar VAR_0x8004, 12
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162A79
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_162A82
setflag FLAG_0x003
setflag FLAG_0x005

View File

@ -21,7 +21,7 @@ EventScript_16EE0A:: @ 816EE0A
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x0AE
setflag FLAG_0x4B5
setflag FLAG_0x825
setflag FLAG_BADGE06_GET
setvar VAR_0x8008, 6
call EventScript_1A6B18
goto EventScript_16EE3D
@ -98,7 +98,7 @@ EventScript_16EF4B:: @ 816EF4B
SaffronCity_Gym_EventScript_16EF55:: @ 816EF55
lockall
checkflag FLAG_0x825
checkflag FLAG_BADGE06_GET
goto_if_eq EventScript_16EF69
msgbox gUnknown_819BDFE
releaseall

View File

@ -11,7 +11,7 @@ TwoIsland_MapScript1_16756A:: @ 816756A
EventScript_167576:: @ 8167576
checkflag FLAG_0x844
goto_if_eq EventScript_167597
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_1675B8
checkflag FLAG_0x2A3
goto_if_eq EventScript_1675D9

View File

@ -226,7 +226,7 @@ EventScript_16B97C:: @ 816B97C
call_if 0, EventScript_16B9AB
clearflag FLAG_0x0A0
setflag FLAG_0x4B2
setflag FLAG_0x822
setflag FLAG_BADGE03_GET
setvar VAR_0x8008, 3
call EventScript_1A6B18
goto EventScript_16B9AF
@ -297,7 +297,7 @@ EventScript_16BA81:: @ 816BA81
VermilionCity_Gym_EventScript_16BA8B:: @ 816BA8B
lockall
checkflag FLAG_0x822
checkflag FLAG_BADGE03_GET
goto_if_eq EventScript_16BA9F
msgbox gUnknown_819520B
releaseall

View File

@ -38,7 +38,7 @@ EventScript_16B4F2:: @ 816B4F2
VermilionCity_PokemonFanClub_EventScript_16B4FC:: @ 816B4FC
lock
faceplayer
checkflag FLAG_0x82C
checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_16B511
msgbox gUnknown_81948E6
release

View File

@ -31,17 +31,17 @@ EventScript_165920:: @ 8165920
return
EventScript_165931:: @ 8165931
checkflag FLAG_0x821
checkflag FLAG_BADGE02_GET
goto_if 0, EventScript_1A77A9
checkflag FLAG_0x822
checkflag FLAG_BADGE03_GET
goto_if 0, EventScript_1A77A9
checkflag FLAG_0x823
checkflag FLAG_BADGE04_GET
goto_if 0, EventScript_1A77A9
checkflag FLAG_0x824
checkflag FLAG_BADGE05_GET
goto_if 0, EventScript_1A77A9
checkflag FLAG_0x825
checkflag FLAG_BADGE06_GET
goto_if 0, EventScript_1A77A9
checkflag FLAG_0x826
checkflag FLAG_BADGE07_GET
goto_if 0, EventScript_1A77A9
setvar VAR_0x405A, 1
return
@ -107,7 +107,7 @@ EventScript_1659EC:: @ 81659EC
ViridianCity_EventScript_1659F6:: @ 81659F6
lock
faceplayer
checkflag FLAG_0x820
checkflag FLAG_BADGE01_GET
goto_if_eq EventScript_165A23
compare_var_to_value VAR_0x4051, 2
goto_if 4, EventScript_165A4A

View File

@ -22,7 +22,7 @@ EventScript_169F04:: @ 8169F04
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x0AD
setflag FLAG_0x4B7
setflag FLAG_0x827
setflag FLAG_BADGE08_GET
setvar VAR_0x4054, 3
setvar VAR_0x8008, 8
call EventScript_1A6B18
@ -105,7 +105,7 @@ EventScript_16A047:: @ 816A047
ViridianCity_Gym_EventScript_16A05E:: @ 816A05E
lockall
checkflag FLAG_0x827
checkflag FLAG_BADGE08_GET
goto_if_eq EventScript_16A072
msgbox gUnknown_818FB8D
releaseall

View File

@ -4,7 +4,7 @@ ViridianCity_Mart_MapScripts:: @ 816A1D3
.byte 0
ViridianCity_Mart_MapScript1_16A1DE:: @ 816A1DE
checkflag FLAG_0x829
checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_16A1E8
end

View File

@ -18,7 +18,7 @@ MysteryEventScript_StampCard:: @ 8488E2
@ specialvar VAR_0x8008, sub_813986C
@ setorcopyvar VAR_RESULT, 0
@ specialvar VAR_0x8009, sub_813986C
@ subvar VAR_0x8008, 32777
@ subvar VAR_0x8008, VAR_0x8009
@ getnumberstring 0, VAR_0x8008
@ lock
@ faceplayer

View File

@ -1,100 +1,6 @@
#ifndef GUARD_CONSTANTS_FLAGS_H
#define GUARD_CONSTANTS_FLAGS_H
#include "constants/trainers.h"
// Sys Flags Maybe
#define FLAG_SYS_SAFARI_MODE 0x800
#define FLAG_WHITE_FLUTE_ACTIVE 0x803
#define FLAG_BLACK_FLUTE_ACTIVE 0x804
#define FLAG_0x807 0x807
// TODO: These three are badge flags
#define FLAG_0x820 0x820
#define FLAG_0x821 0x821
#define FLAG_0x822 0x822
#define FLAG_0x823 0x823
#define FLAG_0x824 0x824
#define FLAG_0x825 0x825
#define FLAG_0x826 0x826
#define FLAG_0x827 0x827
#define FLAG_0x828 0x828
#define FLAG_0x829 0x829
#define FLAG_0x82C 0x82C
#define FLAG_0x82F 0x82F
#define FLAG_0x830 0x830
#define FLAG_SYS_NOT_SOMEONES_PC 0x834
#define FLAG_0x83C 0x83C
#define FLAG_0x83E 0x83E
#define FLAG_0x841 0x841
#define FLAG_0x843 0x843
#define FLAG_0x844 0x844
#define FLAG_0x845 0x845
#define FLAG_0x846 0x846
#define FLAG_0x847 0x847
#define FLAG_0x848 0x848
#define FLAG_0x849 0x849
#define FLAG_0x84A 0x84A
#define FLAG_0x84B 0x84B
// World Map Flags
#define FLAG_WORLD_MAP_PALLET_TOWN 0x890
#define FLAG_WORLD_MAP_VIRIDIAN_CITY 0x891
#define FLAG_WORLD_MAP_PEWTER_CITY 0x892
#define FLAG_WORLD_MAP_CERULEAN_CITY 0x893
#define FLAG_WORLD_MAP_LAVENDER_TOWN 0x894
#define FLAG_WORLD_MAP_VERMILION_CITY 0x895
#define FLAG_WORLD_MAP_CELADON_CITY 0x896
#define FLAG_WORLD_MAP_FUCHSIA_CITY 0x897
#define FLAG_WORLD_MAP_CINNABAR_ISLAND 0x898
#define FLAG_WORLD_MAP_INDIGO_PLATEAU_EXTERIOR 0x899
#define FLAG_WORLD_MAP_SAFFRON_CITY 0x89a
#define FLAG_WORLD_MAP_ONE_ISLAND 0x89b
#define FLAG_WORLD_MAP_TWO_ISLAND 0x89c
#define FLAG_WORLD_MAP_THREE_ISLAND 0x89d
#define FLAG_WORLD_MAP_FOUR_ISLAND 0x89e
#define FLAG_WORLD_MAP_FIVE_ISLAND 0x89f
#define FLAG_WORLD_MAP_SEVEN_ISLAND 0x8a0
#define FLAG_WORLD_MAP_SIX_ISLAND 0x8a1
#define FLAG_WORLD_MAP_ROUTE4_POKEMON_CENTER_1F 0x8a2
#define FLAG_WORLD_MAP_ROUTE10_POKEMON_CENTER_1F 0x8a3
#define FLAG_WORLD_MAP_VIRIDIAN_FOREST 0x8a4
#define FLAG_WORLD_MAP_MT_MOON_1F 0x8a5
#define FLAG_WORLD_MAP_SSANNE_EXTERIOR 0x8a6
#define FLAG_WORLD_MAP_UNDERGROUND_PATH_NORTH_SOUTH_TUNNEL 0x8a7
#define FLAG_WORLD_MAP_UNDERGROUND_PATH_EAST_WEST_TUNNEL 0x8a8
#define FLAG_WORLD_MAP_DIGLETTS_CAVE_B1F 0x8a9
#define FLAG_WORLD_MAP_VICTORY_ROAD_1F 0x8aa
#define FLAG_WORLD_MAP_ROCKET_HIDEOUT_B1F 0x8ab
#define FLAG_WORLD_MAP_SILPH_CO_1F 0x8ac
#define FLAG_WORLD_MAP_POKEMON_MANSION_1F 0x8ad
#define FLAG_WORLD_MAP_SAFARI_ZONE_CENTER 0x8ae
#define FLAG_WORLD_MAP_POKEMON_LEAGUE_LORELEIS_ROOM 0x8af
#define FLAG_WORLD_MAP_ROCK_TUNNEL_1F 0x8b0
#define FLAG_WORLD_MAP_SEAFOAM_ISLANDS_1F 0x8b1
#define FLAG_WORLD_MAP_POKEMON_TOWER_1F 0x8b2
#define FLAG_WORLD_MAP_CERULEAN_CAVE_1F 0x8b3
#define FLAG_WORLD_MAP_POWER_PLANT 0x8b4
#define FLAG_WORLD_MAP_NAVEL_ROCK_EXTERIOR 0x8b5
#define FLAG_WORLD_MAP_MT_EMBER_EXTERIOR 0x8b6
#define FLAG_WORLD_MAP_THREE_ISLAND_BERRY_FOREST 0x8b7
#define FLAG_WORLD_MAP_FOUR_ISLAND_ICEFALL_CAVE_ENTRANCE 0x8b8
#define FLAG_WORLD_MAP_FIVE_ISLAND_ROCKET_WAREHOUSE 0x8b9
#define FLAG_WORLD_MAP_SEVEN_ISLAND_TRAINER_TOWER_LOBBY 0x8ba
#define FLAG_WORLD_MAP_SIX_ISLAND_DOTTED_HOLE_1F 0x8bb
#define FLAG_WORLD_MAP_FIVE_ISLAND_LOST_CAVE_ENTRANCE 0x8bc
#define FLAG_WORLD_MAP_SIX_ISLAND_PATTERN_BUSH 0x8bd
#define FLAG_WORLD_MAP_SIX_ISLAND_ALTERING_CAVE 0x8be
#define FLAG_WORLD_MAP_SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER 0x8bf
#define FLAG_WORLD_MAP_THREE_ISLAND_DUNSPARCE_TUNNEL 0x8c0
#define FLAG_WORLD_MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY 0x8c1
#define FLAG_WORLD_MAP_BIRTH_ISLAND_EXTERIOR 0x8c2
// Unknown
// Emerald Flags
// TODO: Get correct names and numbers
#define FLAG_0x001 0x1
@ -1381,44 +1287,122 @@
#define FLAG_TRAINER_FLAG_START 0x500
#define TRAINER_FLAG(name) (FLAG_TRAINER_FLAG_START + TRAINER_##name)
#define TRAINERS_FLAG_NO ((NUM_TRAINERS) & 15 ? (NUM_TRAINERS) + 16 - ((NUM_TRAINERS) & 15) : NUM_TRAINERS)
#define CODE_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x800
#define TRAINERS_FLAG_NO 0x2E7
#define SYS_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + (TRAINERS_FLAG_NO & 31 ? 32 - (TRAINERS_FLAG_NO & 31) : 0)) // 0x800
// SYSTEM FLAGS
// 0x860
// 0x800
#define FLAG_0x87F 0x87F
#define FLAG_0x880 0x880
#define FLAG_0x881 0x881
#define FLAG_0x882 0x882
#define FLAG_0x883 0x883
#define FLAG_0x884 0x884
#define FLAG_0x885 0x885
#define FLAG_0x886 0x886
#define FLAG_0x887 0x887
#define FLAG_SYS_SAFARI_MODE (SYS_FLAGS + 0x0)
#define FLAG_0x801 (SYS_FLAGS + 0x1)
#define FLAG_WHITE_FLUTE_ACTIVE (SYS_FLAGS + 0x3)
#define FLAG_BLACK_FLUTE_ACTIVE (SYS_FLAGS + 0x4)
#define FLAG_0x805 (SYS_FLAGS + 0x5)
#define FLAG_0x806 (SYS_FLAGS + 0x6)
#define FLAG_0x807 (SYS_FLAGS + 0x7)
#define FLAG_0x88C 0x88C
#define FLAG_BADGE01_GET (SYS_FLAGS + 0x20)
#define FLAG_BADGE02_GET (SYS_FLAGS + 0x21)
#define FLAG_BADGE03_GET (SYS_FLAGS + 0x22)
#define FLAG_BADGE04_GET (SYS_FLAGS + 0x23)
#define FLAG_BADGE05_GET (SYS_FLAGS + 0x24)
#define FLAG_BADGE06_GET (SYS_FLAGS + 0x25)
#define FLAG_BADGE07_GET (SYS_FLAGS + 0x26)
#define FLAG_BADGE08_GET (SYS_FLAGS + 0x27)
#define FLAG_SYS_POKEMON_GET (SYS_FLAGS + 0x28)
#define FLAG_SYS_POKEDEX_GET (SYS_FLAGS + 0x29)
#define FLAG_SYS_GAME_CLEAR (SYS_FLAGS + 0x2C)
#define FLAG_0x82F (SYS_FLAGS + 0x2F)
#define FLAG_0x830 (SYS_FLAGS + 0x30)
#define FLAG_SYS_NOT_SOMEONES_PC (SYS_FLAGS + 0x34)
#define FLAG_SYS_RIBBON_GET (SYS_FLAGS + 0x3B)
#define FLAG_0x83C (SYS_FLAGS + 0x3C)
#define FLAG_0x83E (SYS_FLAGS + 0x3E)
#define FLAG_0x841 (SYS_FLAGS + 0x41)
#define FLAG_0x842 (SYS_FLAGS + 0x42)
#define FLAG_0x843 (SYS_FLAGS + 0x43)
#define FLAG_0x844 (SYS_FLAGS + 0x44)
#define FLAG_0x845 (SYS_FLAGS + 0x45)
#define FLAG_0x846 (SYS_FLAGS + 0x46)
#define FLAG_0x847 (SYS_FLAGS + 0x47)
#define FLAG_0x848 (SYS_FLAGS + 0x48)
#define FLAG_0x849 (SYS_FLAGS + 0x49)
#define FLAG_0x84A (SYS_FLAGS + 0x4A)
#define FLAG_0x84B (SYS_FLAGS + 0x4B)
#define FLAG_0x88E 0x88E
#define FLAG_0x88F 0x88F
#define FLAG_0x87F (SYS_FLAGS + 0x7F)
#define FLAG_0x880 (SYS_FLAGS + 0x80)
#define FLAG_0x881 (SYS_FLAGS + 0x81)
#define FLAG_0x882 (SYS_FLAGS + 0x82)
#define FLAG_0x883 (SYS_FLAGS + 0x83)
#define FLAG_0x884 (SYS_FLAGS + 0x84)
#define FLAG_0x885 (SYS_FLAGS + 0x85)
#define FLAG_0x886 (SYS_FLAGS + 0x86)
#define FLAG_0x887 (SYS_FLAGS + 0x87)
#define FLAG_0x896 0x896
#define FLAG_0x897 0x897
#define FLAG_0x89B 0x89B
#define FLAG_0x88C (SYS_FLAGS + 0x8C)
#define FLAG_0x8A4 0x8A4
#define FLAG_0x88E (SYS_FLAGS + 0x8E)
#define FLAG_0x88F (SYS_FLAGS + 0x8F)
#define FLAG_0x8D5 0x8D5
#define FLAG_0x8D6 0x8D6
// World Map Flags
#define FLAG_WORLD_MAP_PALLET_TOWN (SYS_FLAGS + 0x90)
#define FLAG_WORLD_MAP_VIRIDIAN_CITY (SYS_FLAGS + 0x91)
#define FLAG_WORLD_MAP_PEWTER_CITY (SYS_FLAGS + 0x92)
#define FLAG_WORLD_MAP_CERULEAN_CITY (SYS_FLAGS + 0x93)
#define FLAG_WORLD_MAP_LAVENDER_TOWN (SYS_FLAGS + 0x94)
#define FLAG_WORLD_MAP_VERMILION_CITY (SYS_FLAGS + 0x95)
#define FLAG_WORLD_MAP_CELADON_CITY (SYS_FLAGS + 0x96)
#define FLAG_WORLD_MAP_FUCHSIA_CITY (SYS_FLAGS + 0x97)
#define FLAG_WORLD_MAP_CINNABAR_ISLAND (SYS_FLAGS + 0x98)
#define FLAG_WORLD_MAP_INDIGO_PLATEAU_EXTERIOR (SYS_FLAGS + 0x99)
#define FLAG_WORLD_MAP_SAFFRON_CITY (SYS_FLAGS + 0x9A)
#define FLAG_WORLD_MAP_ONE_ISLAND (SYS_FLAGS + 0x9B)
#define FLAG_WORLD_MAP_TWO_ISLAND (SYS_FLAGS + 0x9C)
#define FLAG_WORLD_MAP_THREE_ISLAND (SYS_FLAGS + 0x9D)
#define FLAG_WORLD_MAP_FOUR_ISLAND (SYS_FLAGS + 0x9E)
#define FLAG_WORLD_MAP_FIVE_ISLAND (SYS_FLAGS + 0x9F)
#define FLAG_WORLD_MAP_SEVEN_ISLAND (SYS_FLAGS + 0xA0)
#define FLAG_WORLD_MAP_SIX_ISLAND (SYS_FLAGS + 0xA1)
#define FLAG_WORLD_MAP_ROUTE4_POKEMON_CENTER_1F (SYS_FLAGS + 0xA2)
#define FLAG_WORLD_MAP_ROUTE10_POKEMON_CENTER_1F (SYS_FLAGS + 0xA3)
#define FLAG_WORLD_MAP_VIRIDIAN_FOREST (SYS_FLAGS + 0xA4)
#define FLAG_WORLD_MAP_MT_MOON_1F (SYS_FLAGS + 0xA5)
#define FLAG_WORLD_MAP_SSANNE_EXTERIOR (SYS_FLAGS + 0xA6)
#define FLAG_WORLD_MAP_UNDERGROUND_PATH_NORTH_SOUTH_TUNNEL (SYS_FLAGS + 0xA7)
#define FLAG_WORLD_MAP_UNDERGROUND_PATH_EAST_WEST_TUNNEL (SYS_FLAGS + 0xA8)
#define FLAG_WORLD_MAP_DIGLETTS_CAVE_B1F (SYS_FLAGS + 0xA9)
#define FLAG_WORLD_MAP_VICTORY_ROAD_1F (SYS_FLAGS + 0xAA)
#define FLAG_WORLD_MAP_ROCKET_HIDEOUT_B1F (SYS_FLAGS + 0xAB)
#define FLAG_WORLD_MAP_SILPH_CO_1F (SYS_FLAGS + 0xAC)
#define FLAG_WORLD_MAP_POKEMON_MANSION_1F (SYS_FLAGS + 0xAD)
#define FLAG_WORLD_MAP_SAFARI_ZONE_CENTER (SYS_FLAGS + 0xAE)
#define FLAG_WORLD_MAP_POKEMON_LEAGUE_LORELEIS_ROOM (SYS_FLAGS + 0xAF)
#define FLAG_WORLD_MAP_ROCK_TUNNEL_1F (SYS_FLAGS + 0xB0)
#define FLAG_WORLD_MAP_SEAFOAM_ISLANDS_1F (SYS_FLAGS + 0xB1)
#define FLAG_WORLD_MAP_POKEMON_TOWER_1F (SYS_FLAGS + 0xB2)
#define FLAG_WORLD_MAP_CERULEAN_CAVE_1F (SYS_FLAGS + 0xB3)
#define FLAG_WORLD_MAP_POWER_PLANT (SYS_FLAGS + 0xB4)
#define FLAG_WORLD_MAP_NAVEL_ROCK_EXTERIOR (SYS_FLAGS + 0xB5)
#define FLAG_WORLD_MAP_MT_EMBER_EXTERIOR (SYS_FLAGS + 0xB6)
#define FLAG_WORLD_MAP_THREE_ISLAND_BERRY_FOREST (SYS_FLAGS + 0xB7)
#define FLAG_WORLD_MAP_FOUR_ISLAND_ICEFALL_CAVE_ENTRANCE (SYS_FLAGS + 0xB8)
#define FLAG_WORLD_MAP_FIVE_ISLAND_ROCKET_WAREHOUSE (SYS_FLAGS + 0xB9)
#define FLAG_WORLD_MAP_SEVEN_ISLAND_TRAINER_TOWER_LOBBY (SYS_FLAGS + 0xBA)
#define FLAG_WORLD_MAP_SIX_ISLAND_DOTTED_HOLE_1F (SYS_FLAGS + 0xBB)
#define FLAG_WORLD_MAP_FIVE_ISLAND_LOST_CAVE_ENTRANCE (SYS_FLAGS + 0xBC)
#define FLAG_WORLD_MAP_SIX_ISLAND_PATTERN_BUSH (SYS_FLAGS + 0xBD)
#define FLAG_WORLD_MAP_SIX_ISLAND_ALTERING_CAVE (SYS_FLAGS + 0xBE)
#define FLAG_WORLD_MAP_SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER (SYS_FLAGS + 0xBF)
#define FLAG_WORLD_MAP_THREE_ISLAND_DUNSPARCE_TUNNEL (SYS_FLAGS + 0xC0)
#define FLAG_WORLD_MAP_SEVEN_ISLAND_SEAVAULT_CANYON_TANOBY_KEY (SYS_FLAGS + 0xC1)
#define FLAG_WORLD_MAP_BIRTH_ISLAND_EXTERIOR (SYS_FLAGS + 0xC2)
#define FLAG_0x8D8 0x8D8
#define FLAG_0x8D9 0x8D9
#define FLAG_0x8DA 0x8DA
#define FLAG_0x8D5 (SYS_FLAGS + 0xD5)
#define FLAG_0x8D6 (SYS_FLAGS + 0xD6)
#define FLAG_0x8E0 0x8E0
#define FLAG_0x8E0 (SYS_FLAGS + 0xE0)
// SPECIAL FLAGS (unknown purpose)
#define FLAG_SPECIAL_FLAG_0x4000 0x4000

View File

@ -1,5 +1,5 @@
#ifndef GUARD_TRAINERS_H
#define GUARD_TRAINERS_H
#ifndef GUARD_CONSTANTS_TRAINERS_H
#define GUARD_CONSTANTS_TRAINERS_H
#define TRAINER_ENCOUNTER_MUSIC_MALE 0 // standard male encounter music
#define TRAINER_ENCOUNTER_MUSIC_FEMALE 1 // standard female encounter music
@ -918,4 +918,4 @@
#define F_TRAINER_PARTY_CUSTOM_MOVESET (1 << 0)
#define F_TRAINER_PARTY_HELD_ITEM (1 << 1)
#endif // GUARD_TRAINERS_H
#endif // GUARD_CONSTANTS_TRAINERS_H

View File

@ -3116,14 +3116,14 @@ u8 IsMonDisobedient(void)
return 0;
if (HasObedientBitSet(gBattlerAttacker)) // only if species is Mew or Deoxys
{
if (!IsOtherTrainer(gBattleMons[gBattlerAttacker].otId, gBattleMons[gBattlerAttacker].otName) || FlagGet(FLAG_0x827))
if (!IsOtherTrainer(gBattleMons[gBattlerAttacker].otId, gBattleMons[gBattlerAttacker].otName) || FlagGet(FLAG_BADGE08_GET))
return 0;
obedienceLevel = 10;
if (FlagGet(FLAG_0x821))
if (FlagGet(FLAG_BADGE02_GET))
obedienceLevel = 30;
if (FlagGet(FLAG_0x823))
if (FlagGet(FLAG_BADGE04_GET))
obedienceLevel = 50;
if (FlagGet(FLAG_0x825))
if (FlagGet(FLAG_BADGE06_GET))
obedienceLevel = 70;
}
if (gBattleMons[gBattlerAttacker].level <= obedienceLevel)

View File

@ -750,7 +750,7 @@ static void CB2_Credits(void)
sCreditsMgr->unk_1D++;
break;
case 2:
FlagClear(0x4000);
FlagClear(FLAG_SPECIAL_FLAG_0x4000);
gDisableMapMusicChangeOnMapLoad = MUSIC_DISABLE_OFF;
Free(sCreditsMgr);
SoftReset(RESET_ALL);
@ -797,7 +797,7 @@ static bool32 DoOverworldMapScrollScene(UNUSED u8 unused)
switch (sCreditsMgr->subseqno)
{
case 0:
FlagSet(0x4000);
FlagSet(FLAG_SPECIAL_FLAG_0x4000);
gDisableMapMusicChangeOnMapLoad = MUSIC_DISABLE_KEEP;
sCreditsMgr->ovwldseqno = 0;
sCreditsMgr->subseqno++;

View File

@ -1163,7 +1163,7 @@ static bool8 sub_812B780(u8 id)
return FlagGet(FLAG_WORLD_MAP_VERMILION_CITY);
case 11:
case 24:
return FlagGet(FLAG_0x8A4);
return FlagGet(FLAG_WORLD_MAP_VIRIDIAN_FOREST);
case 9:
case 13:
case 14:
@ -1175,17 +1175,17 @@ static bool8 sub_812B780(u8 id)
case 29:
case 31:
case 37:
return FlagGet(FLAG_0x828);
return FlagGet(FLAG_SYS_POKEMON_GET);
case 21:
case 23:
return FlagGet(FLAG_0x829);
return FlagGet(FLAG_SYS_POKEDEX_GET);
case 12:
case 25:
case 27:
case 30:
case 32:
case 33:
return FlagGet(FLAG_0x820);
return FlagGet(FLAG_BADGE01_GET);
case 28:
case 40:
return sub_812BB10();
@ -1229,7 +1229,7 @@ static bool8 sub_812B780(u8 id)
case 1:
case 30:
case 37:
return FlagGet(FLAG_0x829);
return FlagGet(FLAG_SYS_POKEDEX_GET);
case 14:
return CheckBagHasItem(ITEM_TOWN_MAP, 1);
case 2:
@ -1244,21 +1244,21 @@ static bool8 sub_812B780(u8 id)
case 35:
case 43:
case 44:
return FlagGet(FLAG_0x828);
return FlagGet(FLAG_SYS_POKEMON_GET);
case 4:
case 34:
if (GetKantoPokedexCount(1) > 1)
return TRUE;
return FALSE;
case 15:
return FlagGet(FLAG_0x820);
return FlagGet(FLAG_BADGE01_GET);
case 16:
case 17:
return sub_812BB10();
case 18:
return FlagGet(FLAG_0x271);
case 48:
return FlagGet(FLAG_0x82C);
return FlagGet(FLAG_SYS_GAME_CLEAR);
}
return FALSE;
}
@ -1308,7 +1308,7 @@ static bool8 sub_812B780(u8 id)
case 19:
case 20:
case 21:
return FlagGet(FLAG_0x828);
return FlagGet(FLAG_SYS_POKEMON_GET);
case 36:
case 37:
return sub_812BB10();
@ -1316,7 +1316,7 @@ static bool8 sub_812B780(u8 id)
case 15:
case 18:
case 39:
return FlagGet(FLAG_0x8A4);
return FlagGet(FLAG_WORLD_MAP_VIRIDIAN_FOREST);
}
return TRUE;
}
@ -1325,9 +1325,9 @@ static bool8 sub_812B780(u8 id)
switch (id)
{
case 5:
return FlagGet(FLAG_0x820);
return FlagGet(FLAG_BADGE01_GET);
case 6:
return FlagGet(FLAG_0x821);
return FlagGet(FLAG_BADGE02_GET);
}
return TRUE;
}

View File

@ -652,7 +652,7 @@ static void PrintDexCount(void)
u8 strbuf[30];
u8 *ptr;
u16 dexcount;
if (FlagGet(FLAG_0x829) == TRUE)
if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE)
{
if (IsNationalPokedexEnabled())
dexcount = GetNationalPokedexCount(FLAG_GET_CAUGHT);
@ -671,7 +671,7 @@ static void PrintBadgeCount(void)
u8 *ptr;
u32 flagId;
u8 nbadges = 0;
for (flagId = FLAG_0x820; flagId < FLAG_0x820 + 8; flagId++)
for (flagId = FLAG_BADGE01_GET; flagId < FLAG_BADGE01_GET + 8; flagId++)
{
if (FlagGet(flagId))
nbadges++;

View File

@ -2362,25 +2362,25 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
// In FRLG, the Battle Tower and opponent checks are stubbed here.
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | /*BATTLE_TYPE_BATTLE_TOWER |*/ BATTLE_TYPE_EREADER_TRAINER)))
{
if (FlagGet(FLAG_0x820)
if (FlagGet(FLAG_BADGE01_GET)
&& !GetBattlerSide(battlerIdAtk))
attack = (110 * attack) / 100;
}
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | /*BATTLE_TYPE_BATTLE_TOWER |*/ BATTLE_TYPE_EREADER_TRAINER)))
{
if (FlagGet(FLAG_0x824)
if (FlagGet(FLAG_BADGE05_GET)
&& !GetBattlerSide(battlerIdDef))
defense = (110 * defense) / 100;
}
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | /*BATTLE_TYPE_BATTLE_TOWER |*/ BATTLE_TYPE_EREADER_TRAINER)))
{
if (FlagGet(FLAG_0x826)
if (FlagGet(FLAG_BADGE07_GET)
&& !GetBattlerSide(battlerIdAtk))
spAttack = (110 * spAttack) / 100;
}
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | /*BATTLE_TYPE_BATTLE_TOWER |*/ BATTLE_TYPE_EREADER_TRAINER)))
{
if (FlagGet(FLAG_0x826)
if (FlagGet(FLAG_BADGE07_GET)
&& !GetBattlerSide(battlerIdDef))
spDefense = (110 * spDefense) / 100;
}

View File

@ -3125,13 +3125,13 @@ static bool8 sub_8113778(u16 a0, u16 * a1)
if (a0 == 36 || a0 == 11)
return TRUE;
if (!FlagGet(0x82C))
if (!FlagGet(FLAG_SYS_GAME_CLEAR))
{
if (a0 == 3 || a0 == 31 || sub_81137E4(a0, a1) == TRUE)
return TRUE;
}
if (!FlagGet(0x844))
if (!FlagGet(FLAG_0x844))
{
if (a0 == 4 || a0 == 5 || a0 == 6 || a0 == 7 || a0 == 8 || a0 == 9 || a0 == 10 || a0 == 22 || a0 == 25 || a0 == 26)
return TRUE;
@ -3220,7 +3220,7 @@ static bool8 sub_8113954(u16 a0, u16 * a1)
if (a0 != 34 && a0 != 30 && a0 != 32 && a0 != 33)
return FALSE;
sub_81138F8();
if (gUnknown_3005E88 || FlagGet(0x82C) || sub_81137E4(a0, a1) != TRUE)
if (gUnknown_3005E88 || FlagGet(FLAG_SYS_GAME_CLEAR) || sub_81137E4(a0, a1) != TRUE)
{
gUnknown_203B024.unk_00 = a0;
memcpy(gUnknown_203B024.unk_04, a1, 8);
@ -4715,7 +4715,7 @@ static const u16 * sub_81152BC(const u16 * a0)
{
if (r5_2[0] != gUnknown_8456C17[r4])
continue;
if (FlagGet(0x820 + r4) == TRUE)
if (FlagGet(FLAG_BADGE01_GET + r4) == TRUE)
StringExpandPlaceholders(gStringVar4, gUnknown_841AE8F);
else
StringExpandPlaceholders(gStringVar4, gUnknown_841AE48);

View File

@ -207,9 +207,9 @@ static void AppendToStartMenuItems(u8 newEntry)
static void SetUpStartMenu_NormalField(void)
{
if (FlagGet(FLAG_0x829) == TRUE)
if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE)
AppendToStartMenuItems(STARTMENU_POKEDEX);
if (FlagGet(FLAG_0x828) == TRUE)
if (FlagGet(FLAG_SYS_POKEMON_GET) == TRUE)
AppendToStartMenuItems(STARTMENU_POKEMON);
AppendToStartMenuItems(STARTMENU_BAG);
AppendToStartMenuItems(STARTMENU_PLAYER);
@ -973,7 +973,7 @@ static void PrintSaveStats(void)
SaveStatToString(SAVE_STAT_BADGES, gStringVar4, 2);
AddTextPrinterParameterized3(sSaveStatsWindowId, 0, 60, 28, sTextColor_StatValue, -1, gStringVar4);
y = 42;
if (FlagGet(FLAG_0x829) == TRUE)
if (FlagGet(FLAG_SYS_POKEDEX_GET) == TRUE)
{
AddTextPrinterParameterized3(sSaveStatsWindowId, 0, 2, 42, sTextColor_StatName, -1, gSaveStatName_Pokedex);
SaveStatToString(SAVE_STAT_POKEDEX, gStringVar4, 2);

View File

@ -641,7 +641,7 @@ bool8 sub_810C4EC(void)
gSaveBlock1Ptr->trainerRematchStepCounter++;
}
if (FlagGet(0x801) == TRUE)
if (FlagGet(FLAG_0x801) == TRUE)
{
u16 x;
do {
@ -657,7 +657,7 @@ bool8 sub_810C4EC(void)
} while (0);
if (x == 100)
{
FlagClear(0x801);
FlagClear(FLAG_0x801);
sub_810C640();
sub_810D0D0();
return TRUE;
@ -743,7 +743,7 @@ bool8 sub_810C4EC(void)
void sub_810C578(void)
{
FlagClear(0x801);
FlagClear(FLAG_0x801);
sub_810C640();
sub_810D0D0();
sub_810C594();
@ -972,7 +972,7 @@ static u8 GetVsSeekerResponseInArea(const VsSeekerData * a0)
if (sVsSeeker->trainerWantsRematch)
{
PlaySE(SE_PIN);
FlagSet(0x801); // TODO: make this an enum
FlagSet(FLAG_0x801);
sub_810C640();
return 2;
}
@ -1258,15 +1258,15 @@ static void TryGetRematchTrainerIdGivenGameState(const u16 * a0, u8 * a1)
*a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
break;
case 2:
if (!FlagGet(FLAG_0x896))
if (!FlagGet(FLAG_WORLD_MAP_CELADON_CITY))
*a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
break;
case 3:
if (!FlagGet(FLAG_0x897))
if (!FlagGet(FLAG_WORLD_MAP_FUCHSIA_CITY))
*a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
break;
case 4:
if (!FlagGet(FLAG_0x82C))
if (!FlagGet(FLAG_SYS_GAME_CLEAR))
*a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
break;
case 5: