undo revert

This commit is contained in:
DizzyEggg
2017-10-23 14:40:22 +02:00
parent 5b05811dd9
commit 356eb34e32
137 changed files with 11131 additions and 15649 deletions

View File

@@ -256,6 +256,25 @@
#define TYPE_MUL_NORMAL 10
#define TYPE_MUL_SUPER_EFFECTIVE 20
#define BS_GET_TARGET 0
#define BS_GET_ATTACKER 1
#define BS_GET_EFFECT_BANK 2
#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update
#define BS_GET_ATTACKER_SIDE 8 // for atk1E_jumpifability
#define BS_GET_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
#define BS_GET_SCRIPTING_BANK 10
#define BS_GET_OPPONENT1 12
#define BS_GET_PLAYER2 13
#define BS_GET_OPPONENT2 14
// for battle script commands
#define CMP_EQUAL 0x0
#define CMP_NOT_EQUAL 0x1
#define CMP_GREATER_THAN 0x2
#define CMP_LESS_THAN 0x3
#define CMP_COMMON_BITS 0x4
#define CMP_NO_COMMON_BITS 0x5
struct TrainerMonNoItemDefaultMoves
{
u16 iv;
@@ -263,6 +282,9 @@ struct TrainerMonNoItemDefaultMoves
u16 species;
};
u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg);
u8 GetBankSide(u8 bank);
struct TrainerMonItemDefaultMoves
{
u16 iv;

View File

@@ -0,0 +1,581 @@
//
// Created by scott on 10/21/2017.
//
#ifndef GUARD_DATA_DECORATION_DESCRIPTION_H
#define GUARD_DATA_DECORATION_DESCRIPTION_H
const u8 DecorDesc_SMALL_DESK[] = _(
"A small desk built\n"
"for one.");
const u8 DecorDesc_POKEMON_DESK[] = _(
"A small desk built in\n"
"the shape of a POKé\n"
"BALL.");
const u8 DecorDesc_HEAVY_DESK[] = _(
"A large desk made\n"
"of steel. Put some\n"
"decorations on it.");
const u8 DecorDesc_RAGGED_DESK[] = _(
"A large desk made\n"
"of wood. Put some\n"
"decorations on it.");
const u8 DecorDesc_COMFORT_DESK[] = _(
"A large desk made\n"
"of leaves. Put some\n"
"decorations on it.");
const u8 DecorDesc_PRETTY_DESK[] = _(
"A huge desk made\n"
"of glass. Holds lots\n"
"of decorations.");
const u8 DecorDesc_BRICK_DESK[] = _(
"A huge desk made\n"
"of brick. Holds lots\n"
"of decorations.");
const u8 DecorDesc_CAMP_DESK[] = _(
"A huge desk made\n"
"of logs. Put lots of\n"
"decorations on it.");
const u8 DecorDesc_HARD_DESK[] = _(
"A huge desk made\n"
"of rocks. Holds\n"
"many decorations.");
const u8 DecorDesc_SMALL_CHAIR[] = _(
"A small chair made\n"
"for one.");
const u8 DecorDesc_POKEMON_CHAIR[] = _(
"A small chair built\n"
"in the shape of a\n"
"POKé BALL.");
const u8 DecorDesc_HEAVY_CHAIR[] = _(
"A small chair made\n"
"of steel.");
const u8 DecorDesc_PRETTY_CHAIR[] = _(
"A small chair made\n"
"of glass.");
const u8 DecorDesc_COMFORT_CHAIR[] = _(
"A small chair made\n"
"of leaves.");
const u8 DecorDesc_RAGGED_CHAIR[] = _(
"A small chair made\n"
"of wood.");
const u8 DecorDesc_BRICK_CHAIR[] = _(
"A small chair made\n"
"of brick.");
const u8 DecorDesc_CAMP_CHAIR[] = _(
"A small chair made\n"
"of logs.");
const u8 DecorDesc_HARD_CHAIR[] = _(
"A small chair made\n"
"of rock.");
const u8 DecorDesc_RED_PLANT[] = _(
"A vivid red potted\n"
"plant.");
const u8 DecorDesc_TROPICAL_PLANT[] = _(
"A flowering tropical\n"
"plant in a pot.");
const u8 DecorDesc_PRETTY_FLOWERS[] = _(
"A pot of cute\n"
"flowers.");
const u8 DecorDesc_COLORFUL_PLANT[] = _(
"A large pot with\n"
"many colorful\n"
"flowers.");
const u8 DecorDesc_BIG_PLANT[] = _(
"A large, umbrella-\n"
"shaped plant in a\n"
"big pot.");
const u8 DecorDesc_GORGEOUS_PLANT[] = _(
"A large, impressive\n"
"plant in a big pot.");
const u8 DecorDesc_RED_BRICK[] = _(
"A red-colored brick.\n"
"Decorations can be\n"
"placed on top.");
const u8 DecorDesc_YELLOW_BRICK[] = _(
"A yellow-colored\n"
"brick. Put some\n"
"decorations on top.");
const u8 DecorDesc_BLUE_BRICK[] = _(
"A blue-colored\n"
"brick. Put some\n"
"decorations on top.");
const u8 DecorDesc_RED_BALLOON[] = _(
"A red balloon filled\n"
"with water. Bursts\n"
"if stepped on.");
const u8 DecorDesc_BLUE_BALLOON[] = _(
"A blue balloon filled\n"
"with water. Bursts\n"
"if stepped on.");
const u8 DecorDesc_YELLOW_BALLOON[] = _(
"A yellow balloon\n"
"filled with water.\n"
"Pops if stepped on.");
const u8 DecorDesc_RED_TENT[] = _(
"A large red tent.\n"
"You can hide inside\n"
"it.");
const u8 DecorDesc_BLUE_TENT[] = _(
"A large blue tent.\n"
"You can hide inside\n"
"it.");
const u8 DecorDesc_SOLID_BOARD[] = _(
"Place over a hole to\n"
"cross to the other\n"
"side.");
const u8 DecorDesc_SLIDE[] = _(
"Use to slide down\n"
"from the platform.");
const u8 DecorDesc_FENCE_LENGTH[] = _(
"A small fence that\n"
"blocks passage.");
const u8 DecorDesc_FENCE_WIDTH[] = _(
"A small fence that\n"
"blocks passage.");
const u8 DecorDesc_TIRE[] = _(
"An old large tire.\n"
"Decorations can be\n"
"placed on top.");
const u8 DecorDesc_STAND[] = _(
"A large pedestal\n"
"with steps.");
const u8 DecorDesc_MUD_BALL[] = _(
"A large ball of mud.\n"
"Crumbles if stepped\n"
"on.");
const u8 DecorDesc_BREAKABLE_DOOR[] = _(
"A weird door that\n"
"people can walk\n"
"right through.");
const u8 DecorDesc_SAND_ORNAMENT[] = _(
"An ornament made\n"
"of sand. Crumbles if\n"
"touched.");
const u8 DecorDesc_SILVER_SHIELD[] = _(
"Awarded for 50\n"
"straight wins at\n"
"the BATTLE TOWER.");
const u8 DecorDesc_GOLD_SHIELD[] = _(
"Awarded for 100\n"
"straight wins at\n"
"the BATTLE TOWER.");
const u8 DecorDesc_GLASS_ORNAMENT[] = _(
"A glass replica of\n"
"a famous sculpture\n"
"at the ART MUSEUM.");
const u8 DecorDesc_TV[] = _(
"A small, gray-\n"
"colored toy TV.");
const u8 DecorDesc_ROUND_TV[] = _(
"A toy TV modeled\n"
"in the image of a\n"
"SEEDOT.");
const u8 DecorDesc_CUTE_TV[] = _(
"A toy TV modeled\n"
"in the image of a\n"
"SKITTY.");
const u8 DecorDesc_GLITTER_MAT[] = _(
"An odd mat that\n"
"glitters if stepped\n"
"on.");
const u8 DecorDesc_JUMP_MAT[] = _(
"A trick mat that\n"
"jumps when it is\n"
"stepped on.");
const u8 DecorDesc_SPIN_MAT[] = _(
"A trick mat that\n"
"spins around when\n"
"stepped on.");
const u8 DecorDesc_C_LOW_NOTE_MAT[] = _(
"A mat that plays\n"
"a low C note when\n"
"stepped on.");
const u8 DecorDesc_D_NOTE_MAT[] = _(
"A mat that plays\n"
"a D note when\n"
"stepped on.");
const u8 DecorDesc_E_NOTE_MAT[] = _(
"A mat that plays\n"
"an E note when\n"
"stepped on.");
const u8 DecorDesc_F_NOTE_MAT[] = _(
"A mat that plays\n"
"an F note when\n"
"stepped on.");
const u8 DecorDesc_G_NOTE_MAT[] = _(
"A mat that plays\n"
"a G note when\n"
"stepped on.");
const u8 DecorDesc_A_NOTE_MAT[] = _(
"A mat that plays\n"
"an A note when\n"
"stepped on.");
const u8 DecorDesc_B_NOTE_MAT[] = _(
"A mat that plays\n"
"a B note when\n"
"stepped on.");
const u8 DecorDesc_C_HIGH_NOTE_MAT[] = _(
"A mat that plays\n"
"a high C note when\n"
"stepped on.");
const u8 DecorDesc_SURF_MAT[] = _(
"A mat designed with\n"
"a SURF image.\n"
"Put items on top.");
const u8 DecorDesc_THUNDER_MAT[] = _(
"A mat designed with\n"
"a THUNDER image.\n"
"Put items on top.");
const u8 DecorDesc_FIRE_BLAST_MAT[] = _(
"A mat designed with\n"
"a FIRE BLAST image.\n"
"Put items on top.");
const u8 DecorDesc_POWDER_SNOW_MAT[] = _(
"A mat with a POWDER\n"
"SNOW image design.\n"
"Put items on top.");
const u8 DecorDesc_ATTRACT_MAT[] = _(
"A mat designed with\n"
"an ATTRACT image.\n"
"Put items on top.");
const u8 DecorDesc_FISSURE_MAT[] = _(
"A mat designed with\n"
"a FISSURE image.\n"
"Put items on top.");
const u8 DecorDesc_SPIKES_MAT[] = _(
"A mat designed with\n"
"a SPIKES image.\n"
"Put items on top.");
const u8 DecorDesc_BALL_POSTER[] = _(
"A small poster\n"
"printed with POKé\n"
"BALLS.");
const u8 DecorDesc_GREEN_POSTER[] = _(
"A small poster with\n"
"a TREECKO print.");
const u8 DecorDesc_RED_POSTER[] = _(
"A small poster with\n"
"a TORCHIC print.");
const u8 DecorDesc_BLUE_POSTER[] = _(
"A small poster with\n"
"a MUDKIP print.");
const u8 DecorDesc_CUTE_POSTER[] = _(
"A small poster with\n"
"an AZURILL print.");
const u8 DecorDesc_PIKA_POSTER[] = _(
"A large poster with\n"
"a PIKACHU and\n"
"PICHU print.");
const u8 DecorDesc_LONG_POSTER[] = _(
"A large poster with\n"
"a SEVIPER print.");
const u8 DecorDesc_SEA_POSTER[] = _(
"A large poster with\n"
"a RELICANTH print.");
const u8 DecorDesc_SKY_POSTER[] = _(
"A large poster with\n"
"a WINGULL print.");
const u8 DecorDesc_KISS_POSTER[] = _(
"A large poster with\n"
"a SMOOCHUM print.");
const u8 DecorDesc_PICHU_DOLL[] = _(
"A PICHU doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_PIKACHU_DOLL[] = _(
"A PIKACHU doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_MARILL_DOLL[] = _(
"A MARILL doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_TOGEPI_DOLL[] = _(
"A TOGEPI doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_CYNDAQUIL_DOLL[] = _(
"A CYNDAQUIL doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_CHIKORITA_DOLL[] = _(
"A CHIKORITA doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_TOTODILE_DOLL[] = _(
"A TOTODILE doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_JIGGLYPUFF_DOLL[] = _(
"A JIGGLYPUFF doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_MEOWTH_DOLL[] = _(
"A MEOWTH doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_CLEFAIRY_DOLL[] = _(
"A CLEFAIRY doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_DITTO_DOLL[] = _(
"A DITTO doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_SMOOCHUM_DOLL[] = _(
"A SMOOCHUM doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_TREECKO_DOLL[] = _(
"A TREECKO doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_TORCHIC_DOLL[] = _(
"A TORCHIC doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_MUDKIP_DOLL[] = _(
"A MUDKIP doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_DUSKULL_DOLL[] = _(
"A DUSKULL doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_WYNAUT_DOLL[] = _(
"A WYNAUT doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_BALTOY_DOLL[] = _(
"A BALTOY doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_KECLEON_DOLL[] = _(
"A KECLEON doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_AZURILL_DOLL[] = _(
"An AZURILL doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_SKITTY_DOLL[] = _(
"A SKITTY doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_SWABLU_DOLL[] = _(
"A SWABLU doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_GULPIN_DOLL[] = _(
"A GULPIN doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_LOTAD_DOLL[] = _(
"A LOTAD doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_SEEDOT_DOLL[] = _(
"A SEEDOT doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_PIKA_CUSHION[] = _(
"A PIKACHU cushion.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_ROUND_CUSHION[] = _(
"A MARILL cushion.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_KISS_CUSHION[] = _(
"A SMOOCHUM\n"
"cushion. Place it on\n"
"a mat or a desk.");
const u8 DecorDesc_ZIGZAG_CUSHION[] = _(
"A ZIGZAGOON\n"
"cushion. Place it on\n"
"a mat or a desk.");
const u8 DecorDesc_SPIN_CUSHION[] = _(
"A SPINDA cushion.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_DIAMOND_CUSHION[] = _(
"A SABLEYE cushion.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_BALL_CUSHION[] = _(
"A BALL cushion.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_GRASS_CUSHION[] = _(
"A grass-mark\n"
"cushion. Place it on\n"
"a mat or a desk.");
const u8 DecorDesc_FIRE_CUSHION[] = _(
"A fire-mark\n"
"cushion. Place it on\n"
"a mat or a desk.");
const u8 DecorDesc_WATER_CUSHION[] = _(
"A water-mark\n"
"cushion. Place it on\n"
"a mat or a desk.");
const u8 DecorDesc_SNORLAX_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_RHYDON_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_LAPRAS_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_VENUSAUR_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_CHARIZARD_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_BLASTOISE_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_WAILMER_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_REGIROCK_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_REGICE_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
const u8 DecorDesc_REGISTEEL_DOLL[] = _(
"A large doll.\n"
"Place it on a mat\n"
"or a desk.");
#endif //GUARD_DATA_DECORATION_DESCRIPTION_H

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,132 @@
//
// Created by scott on 10/21/2017.
//
#ifndef GUARD_ICON_H
#define GUARD_ICON_H
const u8 *const gUnknown_085A6BE8[][2] = {
{gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB7AA0, gUnknown_08DB7B34},
{gUnknown_08DB7B5C, gUnknown_08DB7BEC},
{gUnknown_08DB7C08, gUnknown_08DB7CE8},
{gUnknown_08DB7D08, gUnknown_08DB7DCC},
{gUnknown_08DB7DF4, gUnknown_08DB7EA0},
{gUnknown_08DB7EC4, gUnknown_08DB7F60},
{gUnknown_08DB7F7C, gUnknown_08DB8070},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB808C, gUnknown_08DB8138},
{gUnknown_08DB8160, gUnknown_08DB8218},
{gUnknown_08DB823C, gUnknown_08DB8300},
{gUnknown_08DB8328, gUnknown_08DB8430},
{gUnknown_08DB8458, gUnknown_08DB8528},
{gUnknown_08DB854C, gUnknown_08DB862C},
{gUnknown_08DB8654, gUnknown_08DB86C4},
{gUnknown_08DB86E0, gUnknown_08DB8750},
{gUnknown_08DB876C, gUnknown_08DB87DC},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB87F8, gUnknown_08DB88D8},
{gUnknown_08DB8900, gUnknown_08DB89E0},
{gUnknown_08DB8A08, gUnknown_08DB8A68},
{gUnknown_08DB8A84, gUnknown_08DB8B40},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB8B68, gUnknown_08DB8C40},
{gUnknown_08DB8C5C, gUnknown_08DB8CF4},
{NULL, NULL},
{gUnknown_08DB8D18, gUnknown_08DB8DB0},
{gUnknown_08DB8DD4, gUnknown_08DB8E80},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB8EA0, gUnknown_08DB8F58},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB8F7C, gUnknown_08DB9038},
{gUnknown_08DB9058, gUnknown_08DB9130},
{gUnknown_08DB9154, gUnknown_08DB9218},
{gUnknown_08DB9234, gUnknown_08DB92FC},
{gUnknown_08DB931C, gUnknown_08DB93E8},
{gUnknown_08DB940C, gUnknown_08DB94CC},
{gUnknown_08DB94E8, gUnknown_08DB95AC},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{NULL, NULL},
{gUnknown_08DB95D0, gUnknown_08DB96C4},
{gUnknown_08DB96EC, gUnknown_08DB97F4},
{gUnknown_08DB981C, gUnknown_08DB9908},
{gUnknown_08DB9930, gUnknown_08DB9A54},
{gUnknown_08DB9A7C, gUnknown_08DB9B7C},
{gUnknown_08DB9BA4, gUnknown_08DB9CB0},
{gUnknown_08DB9CD8, gUnknown_08DB9DAC},
{gUnknown_08DB9F08, gUnknown_08DB9FFC},
{gUnknown_08DB9DD4, gUnknown_08DB9EE4},
{gUnknown_08DBA020, gUnknown_08DBA12C}
};
#endif //GUARD_ICON_H

View File

@@ -0,0 +1,239 @@
//
// Created by scott on 10/21/2017.
//
#ifndef GUARD_TILEMAPS_H
#define GUARD_TILEMAPS_H
const u8 Unknown_085A6FB0[] = {
0x00, 0x01, 0x02, 0x03
};
const u8 Unknown_085A6FB4[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d
};
const u8 Unknown_085A6FC0[] = {
0x00, 0x01, 0x02, 0x03,
0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0a, 0x0b,
0x0c, 0x0d, 0x0e, 0x0f
};
const u8 Unknown_085A6FD0[] = {
0x00, 0x01, 0x04, 0x05,
0x08, 0x09, 0x0c, 0x0d,
0x10, 0x11, 0x14, 0x15
};
const u8 Unknown_085A6FDC[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
};
const u8 Unknown_085A6FE4[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f
};
const u8 Unknown_085A7004[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d,
0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d
};
const u8 Unknown_085A7028[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d
};
const u8 Unknown_085A7040[] = {
0x00, 0x00, 0x00, 0x00
};
const u8 Unknown_085A7044[] = {
0x00, 0x00, 0x01, 0x01,
0x00, 0x00, 0x01, 0x01
};
const u8 Unknown_085A704C[] = {
0x00, 0x00, 0x01, 0x01, 0x02, 0x02,
0x00, 0x00, 0x01, 0x01, 0x02, 0x02
};
const u8 Unknown_085A7058[] = {
0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
0x04, 0x04, 0x05, 0x05, 0x06, 0x06, 0x07, 0x07,
0x04, 0x04, 0x05, 0x05, 0x06, 0x06, 0x07, 0x07
};
const u8 Unknown_085A7078[] = {
0x00, 0x00, 0x01, 0x01,
0x00, 0x00, 0x01, 0x01,
0x02, 0x02, 0x03, 0x03,
0x02, 0x02, 0x03, 0x03
};
const u8 Unknown_085A7088[] = {
0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x01
};
const u8 Unknown_085A7090[] = {
0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x01,
0x02, 0x02, 0x02, 0x02
};
const u8 Unknown_085A709C[] = {
0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01,
0x02, 0x02, 0x03, 0x03, 0x02, 0x02, 0x03, 0x03,
0x04, 0x04, 0x05, 0x05, 0x04, 0x04, 0x05, 0x05,
0x06, 0x06, 0x07, 0x07, 0x06, 0x06, 0x07, 0x07
};
const u8 Unknown_085A70BC[] = {
0x00, 0x00, 0x01, 0x01, 0x02, 0x02,
0x00, 0x00, 0x01, 0x01, 0x02, 0x02,
0x03, 0x03, 0x04, 0x04, 0x05, 0x05,
0x03, 0x03, 0x04, 0x04, 0x05, 0x05,
0x06, 0x06, 0x07, 0x07, 0x08, 0x08,
0x06, 0x06, 0x07, 0x07, 0x08, 0x08
};
const u8 Unknown_085A70E0[] = {
0x00, 0x00, 0x01, 0x01, 0x02, 0x02,
0x00, 0x00, 0x01, 0x01, 0x02, 0x02,
0x03, 0x03, 0x04, 0x04, 0x05, 0x05,
0x03, 0x03, 0x04, 0x04, 0x05, 0x05
};
const u8 Unknown_085A70F8[] = {
0x04, 0x05, 0x06, 0x07
};
const u8 Unknown_085A70FC[] = {
0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7104[] = {
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7110[] = {
0x04, 0x05, 0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7130[] = {
0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7140[] = {
0x04, 0x05, 0x06, 0x07,
0x04, 0x05, 0x06, 0x07
};
const u8 Unknown_085A7148[] = {
0x04, 0x05, 0x06, 0x07,
0x04, 0x05, 0x06, 0x07,
0x04, 0x05, 0x06, 0x07
};
const u8 Unknown_085A7154[] = {
0x04, 0x05, 0x04, 0x05, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7174[] = {
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07
};
const u8 Unknown_085A7198[] = {
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07,
0x04, 0x05, 0x04, 0x05, 0x04, 0x05,
0x06, 0x07, 0x06, 0x07, 0x06, 0x07
};
const struct {
const u8 *tiles;
const u8 *y;
const u8 *x;
u8 size;
} gUnknown_085A71B0[] = {
{
Unknown_085A6FB0,
Unknown_085A7040,
Unknown_085A70F8,
0x04
}, {
Unknown_085A6FDC,
Unknown_085A7044,
Unknown_085A70FC,
0x08
}, {
Unknown_085A6FB4,
Unknown_085A704C,
Unknown_085A7104,
0x0c
}, {
Unknown_085A6FE4,
Unknown_085A7058,
Unknown_085A7110,
0x20
}, {
Unknown_085A6FC0,
Unknown_085A7078,
Unknown_085A7130,
0x10
}, {
Unknown_085A6FDC,
Unknown_085A7088,
Unknown_085A7140,
0x08
}, {
Unknown_085A6FD0,
Unknown_085A7090,
Unknown_085A7148,
0x0c
}, {
Unknown_085A6FE4,
Unknown_085A709C,
Unknown_085A7154,
0x20
}, {
Unknown_085A7004,
Unknown_085A70BC,
Unknown_085A7174,
0x24
}, {
Unknown_085A7028,
Unknown_085A70E0,
Unknown_085A7198,
0x18
}};
#endif //GUARD_TILEMAPS_H

View File

@@ -0,0 +1,646 @@
#ifndef GUARD_DATA_DECORATION_TILES
#define GUARD_DATA_DECORATION_TILES
const u16 DecorGfx_SMALL_DESK[] = {
0x87
};
const u16 DecorGfx_POKEMON_DESK[] = {
0x8F
};
const u16 DecorGfx_HEAVY_DESK[] = {
0x90,
0x91,
0x92,
0x98,
0x99,
0x9A
};
const u16 DecorGfx_RAGGED_DESK[] = {
0x93,
0x94,
0x95,
0x9B,
0x9C,
0x9D
};
const u16 DecorGfx_COMFORT_DESK[] = {
0x96,
0x97,
0xA3,
0x9E,
0x9F,
0xAB
};
const u16 DecorGfx_PRETTY_DESK[] = {
0xBD,
0xBE,
0xBF,
0xC5,
0xC6,
0xC7,
0xCD,
0xCE,
0xCF
};
const u16 DecorGfx_BRICK_DESK[] = {
0xA0,
0xA1,
0xA2,
0xA8,
0xA9,
0xAA,
0xB0,
0xB1,
0xB2
};
const u16 DecorGfx_CAMP_DESK[] = {
0xA4,
0xA5,
0xA6,
0xAC,
0xAD,
0xAE,
0xB4,
0xB5,
0xB6
};
const u16 DecorGfx_HARD_DESK[] = {
0xA7,
0xBB,
0xBC,
0xAF,
0xC3,
0xC4,
0xB7,
0xCB,
0xCC
};
const u16 DecorGfx_SMALL_CHAIR[] = {
0xB8
};
const u16 DecorGfx_POKEMON_CHAIR[] = {
0xB9
};
const u16 DecorGfx_HEAVY_CHAIR[] = {
0xBA
};
const u16 DecorGfx_PRETTY_CHAIR[] = {
0xC0
};
const u16 DecorGfx_COMFORT_CHAIR[] = {
0xC1
};
const u16 DecorGfx_RAGGED_CHAIR[] = {
0xC2
};
const u16 DecorGfx_BRICK_CHAIR[] = {
0xC8
};
const u16 DecorGfx_CAMP_CHAIR[] = {
0xC9
};
const u16 DecorGfx_HARD_CHAIR[] = {
0xCA
};
const u16 DecorGfx_RED_PLANT[] = {
0xD0,
0xD8
};
const u16 DecorGfx_TROPICAL_PLANT[] = {
0xD2,
0xDA
};
const u16 DecorGfx_PRETTY_FLOWERS[] = {
0xD4,
0xDC
};
const u16 DecorGfx_COLORFUL_PLANT[] = {
0xE0,
0xE2,
0xE8,
0xE9
};
const u16 DecorGfx_BIG_PLANT[] = {
0xE4,
0xE6,
0xEC,
0xED
};
const u16 DecorGfx_GORGEOUS_PLANT[] = {
0xF0,
0xF2,
0xF8,
0xF9
};
const u16 DecorGfx_RED_BRICK[] = {
0x25,
0x2D
};
const u16 DecorGfx_YELLOW_BRICK[] = {
0x26,
0x2E
};
const u16 DecorGfx_BLUE_BRICK[] = {
0x27,
0x2F
};
const u16 DecorGfx_RED_BALLOON[] = {
0x138
};
const u16 DecorGfx_BLUE_BALLOON[] = {
0x13C
};
const u16 DecorGfx_YELLOW_BALLOON[] = {
0x140
};
const u16 DecorGfx_RED_TENT[] = {
0x30,
0x31,
0x32,
0x38,
0x39,
0x3A,
0x40,
0x41,
0x3B
};
const u16 DecorGfx_BLUE_TENT[] = {
0x48,
0x49,
0x68,
0x50,
0x51,
0x70,
0x58,
0x59,
0x69
};
const u16 DecorGfx_SOLID_BOARD[] = {
0x34,
0x3C
};
const u16 DecorGfx_SLIDE[] = {
0x35,
0x36,
0x3D,
0x3E,
0x63,
0x64,
0x6F,
0x77
};
const u16 DecorGfx_FENCE_LENGTH[] = {
0x33
};
const u16 DecorGfx_FENCE_WIDTH[] = {
0x2C
};
const u16 DecorGfx_TIRE[] = {
0x80,
0x81,
0x88,
0x89
};
const u16 DecorGfx_STAND[] = {
0x6A,
0x6B,
0x6C,
0x6D,
0x72,
0x73,
0x74,
0x75
};
const u16 DecorGfx_MUD_BALL[] = {
0x28
};
const u16 DecorGfx_BREAKABLE_DOOR[] = {
0x37,
0x3F
};
const u16 DecorGfx_SAND_ORNAMENT[] = {
0x85,
0x8D
};
const u16 DecorGfx_SILVER_SHIELD[] = {
0xD6,
0xDE
};
const u16 DecorGfx_GOLD_SHIELD[] = {
0x12E,
0x136
};
const u16 DecorGfx_GLASS_ORNAMENT[] = {
0x82,
0x8A
};
const u16 DecorGfx_TV[] = {
0xF4
};
const u16 DecorGfx_ROUND_TV[] = {
0xF5
};
const u16 DecorGfx_CUTE_TV[] = {
0xF6
};
const u16 DecorGfx_GLITTER_MAT[] = {
0x60
};
const u16 DecorGfx_JUMP_MAT[] = {
0x61
};
const u16 DecorGfx_SPIN_MAT[] = {
0x62
};
const u16 DecorGfx_C_LOW_NOTE_MAT[] = {
0x78
};
const u16 DecorGfx_D_NOTE_MAT[] = {
0x79
};
const u16 DecorGfx_E_NOTE_MAT[] = {
0x7A
};
const u16 DecorGfx_F_NOTE_MAT[] = {
0x7B
};
const u16 DecorGfx_G_NOTE_MAT[] = {
0x7C
};
const u16 DecorGfx_A_NOTE_MAT[] = {
0x7D
};
const u16 DecorGfx_B_NOTE_MAT[] = {
0x7E
};
const u16 DecorGfx_C_HIGH_NOTE_MAT[] = {
0xB3
};
const u16 DecorGfx_SURF_MAT[] = {
0x42,
0x43,
0x44,
0x4A,
0x4B,
0x4C,
0x52,
0x53,
0x54
};
const u16 DecorGfx_THUNDER_MAT[] = {
0x45,
0x46,
0x47,
0x4D,
0x4E,
0x4F,
0x55,
0x56,
0x57
};
const u16 DecorGfx_FIRE_BLAST_MAT[] = {
0x5A,
0x5B,
0x5C,
0x5D,
0x5E,
0x5F,
0x65,
0x66,
0x67
};
const u16 DecorGfx_POWDER_SNOW_MAT[] = {
0x100,
0x101,
0x102,
0x108,
0x109,
0x10A,
0x110,
0x111,
0x112
};
const u16 DecorGfx_ATTRACT_MAT[] = {
0x103,
0x104,
0x105,
0x10B,
0x10C,
0x10D,
0x113,
0x114,
0x115
};
const u16 DecorGfx_FISSURE_MAT[] = {
0x106,
0x107,
0x118,
0x10E,
0x10F,
0x120,
0x116,
0x117,
0x128
};
const u16 DecorGfx_SPIKES_MAT[] = {
0x119,
0x11A,
0x11B,
0x121,
0x122,
0x123,
0x129,
0x12A,
0x12B
};
const u16 DecorGfx_BALL_POSTER[] = {
0x130
};
const u16 DecorGfx_GREEN_POSTER[] = {
0x131
};
const u16 DecorGfx_RED_POSTER[] = {
0x132
};
const u16 DecorGfx_BLUE_POSTER[] = {
0x133
};
const u16 DecorGfx_CUTE_POSTER[] = {
0x134
};
const u16 DecorGfx_PIKA_POSTER[] = {
0x11C,
0x11D
};
const u16 DecorGfx_LONG_POSTER[] = {
0x11E,
0x11F
};
const u16 DecorGfx_SEA_POSTER[] = {
0x124,
0x125
};
const u16 DecorGfx_SKY_POSTER[] = {
0x126,
0x127
};
const u16 DecorGfx_KISS_POSTER[] = {
0x12C,
0x12D
};
const u16 DecorGfx_PICHU_DOLL[] = {
MAP_OBJ_GFX_PICHU_DOLL
};
const u16 DecorGfx_PIKACHU_DOLL[] = {
MAP_OBJ_GFX_PIKACHU_DOLL
};
const u16 DecorGfx_MARILL_DOLL[] = {
MAP_OBJ_GFX_MARILL_DOLL
};
const u16 DecorGfx_TOGEPI_DOLL[] = {
MAP_OBJ_GFX_TOGEPI_DOLL
};
const u16 DecorGfx_CYNDAQUIL_DOLL[] = {
MAP_OBJ_GFX_CYNDAQUIL_DOLL
};
const u16 DecorGfx_CHIKORITA_DOLL[] = {
MAP_OBJ_GFX_CHIKORITA_DOLL
};
const u16 DecorGfx_TOTODILE_DOLL[] = {
MAP_OBJ_GFX_TOTODILE_DOLL
};
const u16 DecorGfx_JIGGLYPUFF_DOLL[] = {
MAP_OBJ_GFX_JIGGLYPUFF_DOLL
};
const u16 DecorGfx_MEOWTH_DOLL[] = {
MAP_OBJ_GFX_MEOWTH_DOLL
};
const u16 DecorGfx_CLEFAIRY_DOLL[] = {
MAP_OBJ_GFX_CLEFAIRY_DOLL
};
const u16 DecorGfx_DITTO_DOLL[] = {
MAP_OBJ_GFX_DITTO_DOLL
};
const u16 DecorGfx_SMOOCHUM_DOLL[] = {
MAP_OBJ_GFX_SMOOCHUM_DOLL
};
const u16 DecorGfx_TREECKO_DOLL[] = {
MAP_OBJ_GFX_TREECKO_DOLL
};
const u16 DecorGfx_TORCHIC_DOLL[] = {
MAP_OBJ_GFX_TORCHIC_DOLL
};
const u16 DecorGfx_MUDKIP_DOLL[] = {
MAP_OBJ_GFX_MUDKIP_DOLL
};
const u16 DecorGfx_DUSKULL_DOLL[] = {
MAP_OBJ_GFX_DUSKULL_DOLL
};
const u16 DecorGfx_WYNAUT_DOLL[] = {
MAP_OBJ_GFX_WYNAUT_DOLL
};
const u16 DecorGfx_BALTOY_DOLL[] = {
MAP_OBJ_GFX_BALTOY_DOLL
};
const u16 DecorGfx_KECLEON_DOLL[] = {
MAP_OBJ_GFX_KECLEON_DOLL
};
const u16 DecorGfx_AZURILL_DOLL[] = {
MAP_OBJ_GFX_AZURILL_DOLL
};
const u16 DecorGfx_SKITTY_DOLL[] = {
MAP_OBJ_GFX_SKITTY_DOLL
};
const u16 DecorGfx_SWABLU_DOLL[] = {
MAP_OBJ_GFX_SWABLU_DOLL
};
const u16 DecorGfx_GULPIN_DOLL[] = {
MAP_OBJ_GFX_GULPIN_DOLL
};
const u16 DecorGfx_LOTAD_DOLL[] = {
MAP_OBJ_GFX_LOTAD_DOLL
};
const u16 DecorGfx_SEEDOT_DOLL[] = {
MAP_OBJ_GFX_SEEDOT_DOLL
};
const u16 DecorGfx_PIKA_CUSHION[] = {
MAP_OBJ_GFX_PIKA_CUSHION
};
const u16 DecorGfx_ROUND_CUSHION[] = {
MAP_OBJ_GFX_ROUND_CUSHION
};
const u16 DecorGfx_KISS_CUSHION[] = {
MAP_OBJ_GFX_KISS_CUSHION
};
const u16 DecorGfx_ZIGZAG_CUSHION[] = {
MAP_OBJ_GFX_ZIGZAG_CUSHION
};
const u16 DecorGfx_SPIN_CUSHION[] = {
MAP_OBJ_GFX_SPIN_CUSHION
};
const u16 DecorGfx_DIAMOND_CUSHION[] = {
MAP_OBJ_GFX_DIAMOND_CUSHION
};
const u16 DecorGfx_BALL_CUSHION[] = {
MAP_OBJ_GFX_BALL_CUSHION
};
const u16 DecorGfx_GRASS_CUSHION[] = {
MAP_OBJ_GFX_GRASS_CUSHION
};
const u16 DecorGfx_FIRE_CUSHION[] = {
MAP_OBJ_GFX_FIRE_CUSHION
};
const u16 DecorGfx_WATER_CUSHION[] = {
MAP_OBJ_GFX_WATER_CUSHION
};
const u16 DecorGfx_SNORLAX_DOLL[] = {
MAP_OBJ_GFX_BIG_SNORLAX_DOLL
};
const u16 DecorGfx_RHYDON_DOLL[] = {
MAP_OBJ_GFX_BIG_RHYDON_DOLL
};
const u16 DecorGfx_LAPRAS_DOLL[] = {
MAP_OBJ_GFX_BIG_LAPRAS_DOLL
};
const u16 DecorGfx_VENUSAUR_DOLL[] = {
MAP_OBJ_GFX_BIG_VENUSAUR_DOLL
};
const u16 DecorGfx_CHARIZARD_DOLL[] = {
MAP_OBJ_GFX_BIG_CHARIZARD_DOLL
};
const u16 DecorGfx_BLASTOISE_DOLL[] = {
MAP_OBJ_GFX_BIG_BLASTOISE_DOLL
};
const u16 DecorGfx_WAILMER_DOLL[] = {
MAP_OBJ_GFX_BIG_WAILMER_DOLL
};
const u16 DecorGfx_REGIROCK_DOLL[] = {
MAP_OBJ_GFX_BIG_REGIROCK_DOLL
};
const u16 DecorGfx_REGICE_DOLL[] = {
MAP_OBJ_GFX_BIG_REGICE_DOLL
};
const u16 DecorGfx_REGISTEEL_DOLL[] = {
MAP_OBJ_GFX_BIG_REGISTEEL_DOLL
};
#endif // GUARD_DATA_DECORATION_TILES

View File

@@ -125,6 +125,47 @@ enum DecoId {
/*120*/ DECOR_REGISTEEL_DOLL
};
enum DecorPerm {
/*
* The nomenclature here describes collision and placement permissions, in that order.
*/
DECORPERM_SOLID_FLOOR,
DECORPERM_PASS_FLOOR,
DECORPERM_BEHIND_FLOOR,
DECORPERM_NA_WALL,
DECORPERM_SOLID_MAT
};
enum DecorShape {
/*
* Width-x-height
*/
DECORSHAPE_1x1,
DECORSHAPE_2x1,
DECORSHAPE_3x1, // unused
DECORSHAPE_4x2,
DECORSHAPE_2x2,
DECORSHAPE_1x2,
DECORSHAPE_1x3, // unused
DECORSHAPE_2x4,
DECORSHAPE_3x3,
DECORSHAPE_3x2
};
enum DecorCat {
/*
* In which category you can find the decoration in the PC.
*/
/*0*/ DECORCAT_DESK,
/*1*/ DECORCAT_CHAIR,
/*2*/ DECORCAT_PLANT,
/*3*/ DECORCAT_ORNAMENT,
/*4*/ DECORCAT_MAT,
/*5*/ DECORCAT_POSTER,
/*6*/ DECORCAT_DOLL,
/*7*/ DECORCAT_CUSHION
};
struct Decoration
{
/*0x00*/ u8 id;
@@ -137,6 +178,18 @@ struct Decoration
/*0x1c*/ const u16 *tiles;
};
struct DecorPCPointers
{
/* 0x00 */ u8 *items;
/* 0x04 */ u8 *pos;
/* 0x08 */ u8 size;
/* 0x09 */ u8 isPlayerRoom;
};
extern const struct Decoration gDecorations[];
extern EWRAM_DATA u8 *gCurDecorInventoryItems;
extern EWRAM_DATA u8 gCurDecorationIndex;
void sub_8126968(void);
#endif //GUARD_DECORATION_H

View File

@@ -1,10 +1,20 @@
#ifndef GUARD_DECORATION_INVENTORY_H
#define GUARD_DECORATION_INVENTORY_H
struct DecorationInventory {
u8 *items;
u8 size;
};
extern struct DecorationInventory gDecorationInventories[];
void ClearDecorationInventories(void);
s8 GetFirstEmptyDecorSlot(u8 idx);
u8 CheckHasDecoration(u8);
u8 DecorationAdd(u8);
u8 DecorationCheckSpace(u8);
s8 DecorationRemove(u8);
void CondenseDecorationCategoryN(u8);
u8 CountDecorationCategoryN(u8 idx);
u8 CountDecorations(void);
#endif // GUARD_DECORATION_INVENTORY_H

View File

@@ -5,6 +5,10 @@
#ifndef GUARD_EVENT_SCRIPTS_H
#define GUARD_EVENT_SCRIPTS_H
extern const u8 gUnknown_0823B4E8[];
extern const u8 gUnknown_08275D0C[];
extern const u8 gUnknown_08275D1F[];
extern const u8 gUnknown_08275D2E[];
extern const u8 gUnknown_082766A2[];
extern const u8 gUnknown_082766A6[];

View File

@@ -74,6 +74,7 @@ u8 npc_block_way(struct MapObject *, s16, s16, u32);
void MoveCoords(u8, s16 *, s16 *);
bool8 FieldObjectIsSpecialAnimActive(struct MapObject *);
u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *);
u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z);
// Exported data declarations

12
include/field_screen.h Normal file
View File

@@ -0,0 +1,12 @@
#ifndef GUARD_FIELD_SCREEN_H
#define GUARD_FIELD_SCREEN_H
// Exported type declarations
// Exported RAM declarations
// Exported ROM declarations
void pal_fill_black(void);
bool8 sub_80ABDFC(void);
#endif //GUARD_FIELD_SCREEN_H

View File

@@ -6,11 +6,14 @@ extern struct MapCoords {
int height;
} gUnknown_03005DC0;
u32 MapGridGetMetatileIdAt(int, int);
u32 MapGridGetMetatileBehaviorAt(int, int);
void MapGridSetMetatileIdAt(int, int, u16);
void MapGridSetMetatileEntryAt(int, int, u16);
void GetCameraCoords(u16*, u16*);
bool8 MapGridIsImpassableAt(s16, s16);
s32 GetMapBorderIdAt(s16, s16);
bool32 CanCameraMoveInDirection(u8);
u16 GetBehaviorByMetatileId(u16 metatileId);
#endif //GUARD_FIELDMAP_H

View File

@@ -12,8 +12,10 @@
#define asm_unified(x) asm(".syntax unified\n" x "\n.syntax divided")
#if defined (__APPLE__) || defined (__CYGWIN__)
void memset(void *, int, size_t);
void memcpy(void *, const void *, size_t);
void *memset(void *, int, size_t);
void *memcpy(void *, const void *, size_t);
int strcmp(const char *s1, const char *s2);
char* strcpy(char *dst0, const char *src0);
#endif // __APPLE__
#define ARRAY_COUNT(array) (sizeof(array) / sizeof((array)[0]))

95
include/graphics.h Normal file
View File

@@ -0,0 +1,95 @@
//
// Created by scott on 10/21/2017.
//
#ifndef GUARD_GRAPHICS_H
#define GUARD_GRAPHICS_H
extern const u8 gItemIcon_QuestionMark[];
extern const u8 gItemIconPalette_QuestionMark[];
extern const u8 gUnknown_08DB7AA0[];
extern const u8 gUnknown_08DB7B34[];
extern const u8 gUnknown_08DB7B5C[];
extern const u8 gUnknown_08DB7BEC[];
extern const u8 gUnknown_08DB7C08[];
extern const u8 gUnknown_08DB7CE8[];
extern const u8 gUnknown_08DB7D08[];
extern const u8 gUnknown_08DB7DCC[];
extern const u8 gUnknown_08DB7DF4[];
extern const u8 gUnknown_08DB7EA0[];
extern const u8 gUnknown_08DB7EC4[];
extern const u8 gUnknown_08DB7F60[];
extern const u8 gUnknown_08DB7F7C[];
extern const u8 gUnknown_08DB8070[];
extern const u8 gUnknown_08DB808C[];
extern const u8 gUnknown_08DB8138[];
extern const u8 gUnknown_08DB8160[];
extern const u8 gUnknown_08DB8218[];
extern const u8 gUnknown_08DB823C[];
extern const u8 gUnknown_08DB8300[];
extern const u8 gUnknown_08DB8328[];
extern const u8 gUnknown_08DB8430[];
extern const u8 gUnknown_08DB8458[];
extern const u8 gUnknown_08DB8528[];
extern const u8 gUnknown_08DB854C[];
extern const u8 gUnknown_08DB862C[];
extern const u8 gUnknown_08DB8654[];
extern const u8 gUnknown_08DB86C4[];
extern const u8 gUnknown_08DB86E0[];
extern const u8 gUnknown_08DB8750[];
extern const u8 gUnknown_08DB876C[];
extern const u8 gUnknown_08DB87DC[];
extern const u8 gUnknown_08DB87F8[];
extern const u8 gUnknown_08DB88D8[];
extern const u8 gUnknown_08DB8900[];
extern const u8 gUnknown_08DB89E0[];
extern const u8 gUnknown_08DB8A08[];
extern const u8 gUnknown_08DB8A68[];
extern const u8 gUnknown_08DB8A84[];
extern const u8 gUnknown_08DB8B40[];
extern const u8 gUnknown_08DB8B68[];
extern const u8 gUnknown_08DB8C40[];
extern const u8 gUnknown_08DB8C5C[];
extern const u8 gUnknown_08DB8CF4[];
extern const u8 gUnknown_08DB8D18[];
extern const u8 gUnknown_08DB8DB0[];
extern const u8 gUnknown_08DB8DD4[];
extern const u8 gUnknown_08DB8E80[];
extern const u8 gUnknown_08DB8EA0[];
extern const u8 gUnknown_08DB8F58[];
extern const u8 gUnknown_08DB8F7C[];
extern const u8 gUnknown_08DB9038[];
extern const u8 gUnknown_08DB9058[];
extern const u8 gUnknown_08DB9130[];
extern const u8 gUnknown_08DB9154[];
extern const u8 gUnknown_08DB9218[];
extern const u8 gUnknown_08DB9234[];
extern const u8 gUnknown_08DB92FC[];
extern const u8 gUnknown_08DB931C[];
extern const u8 gUnknown_08DB93E8[];
extern const u8 gUnknown_08DB940C[];
extern const u8 gUnknown_08DB94CC[];
extern const u8 gUnknown_08DB94E8[];
extern const u8 gUnknown_08DB95AC[];
extern const u8 gUnknown_08DB95D0[];
extern const u8 gUnknown_08DB96C4[];
extern const u8 gUnknown_08DB96EC[];
extern const u8 gUnknown_08DB97F4[];
extern const u8 gUnknown_08DB981C[];
extern const u8 gUnknown_08DB9908[];
extern const u8 gUnknown_08DB9930[];
extern const u8 gUnknown_08DB9A54[];
extern const u8 gUnknown_08DB9A7C[];
extern const u8 gUnknown_08DB9B7C[];
extern const u8 gUnknown_08DB9BA4[];
extern const u8 gUnknown_08DB9CB0[];
extern const u8 gUnknown_08DB9CD8[];
extern const u8 gUnknown_08DB9DAC[];
extern const u8 gUnknown_08DB9DD4[];
extern const u8 gUnknown_08DB9EE4[];
extern const u8 gUnknown_08DB9F08[];
extern const u8 gUnknown_08DB9FFC[];
extern const u8 gUnknown_08DBA020[];
extern const u8 gUnknown_08DBA12C[];
#endif //GUARD_GRAPHICS_H

View File

@@ -1,20 +1,20 @@
#ifndef GUARD_INTERNATIONAL_STRING_UTIL_H
#define GUARD_INTERNATIONAL_STRING_UTIL_H
#include "menu.h"
void sub_81DB52C(const u8 *src);
void TVShowConvertInternationalString(u8 *dest, const u8 *src, u8 language);
u32 sub_81DB604(const u8 *);
s32 GetStringCenterAlignXOffset(s32 fontId, const u8 *str, s32 totalWidth);
s32 GetStringRightAlignXOffset(s32 fontId, const u8 *str, s32 totalWidth);
s32 GetStringCenterAlignXOffsetWithLetterSpacing(s32 fontId, const u8 *str, s32 totalWidth, s32 letterSpacing);
s32 GetStringWidthDifference(s32 fontId, const u8 *str, s32 totalWidth, s32 letterSpacing);
s32 GetMaxWidthInMenuTable(const u8 **str, s32 arg1);
s32 sub_81DB3D8(const u8 **str, u8* arg1, s32 arg2);
s32 GetMaxWidthInMenuTable(const struct MenuAction *str, s32 arg1);
s32 sub_81DB3D8(const struct MenuAction *str, u8* arg1, s32 arg2);
// sub_81DB41C
// sub_81DB468
// sub_81DB494
// sub_81DB4DC
// sub_81DB52C
// sub_81DB554
// sub_81DB5AC
u32 sub_81DB604(const u8 *);

17
include/item_icon.h Normal file
View File

@@ -0,0 +1,17 @@
//
// Created by scott on 10/20/2017.
//
#ifndef GUARD_ITEM_ICON_H
#define GUARD_ITEM_ICON_H
extern EWRAM_DATA void *gUnknown_0203CEBC;
extern EWRAM_DATA void *gUnknown_0203CEC0;
extern const struct SpriteTemplate gUnknown_08614FF4;
bool8 AllocItemIconTemporaryBuffers(void);
void CopyItemIconPicTo4x4Buffer(void *src, void *dest);
void FreeItemIconTemporaryBuffers(void);
#endif //GUARD_ITEM_ICON_H

54
include/list_menu.h Normal file
View File

@@ -0,0 +1,54 @@
#ifndef GUARD_LIST_MENU_H
#define GUARD_LIST_MENU_H
// Exported type declarations
// Exported RAM declarations
struct ListMenuItem {
const u8 *unk_00;
s32 unk_04;
};
struct ListMenu;
struct ListMenuTemplate {
struct ListMenuItem *unk_00;
void (* unk_04)(u32, bool8, struct ListMenu *);
void (* unk_08)(u8, s32, u8);
u16 unk_0c;
u16 unk_0e;
u8 unk_10;
u8 unk_11;
u8 unk_12;
u8 unk_13;
u32 unk_14_0:4;
u32 unk_14_4:4;
u32 unk_15_0:4;
u32 unk_15_4:4;
u32 unk_16_0:1;
u32 unk_16_1:6;
u32 unk_16_7:1;
u32 unk_17_0:6;
};
struct ListMenu {
struct ListMenuTemplate _template;
u16 scrollOffset;
u16 selectedRow;
u8 unk_1C;
u8 unk_1D;
u8 unk_1E;
u8 unk_1F;
};
extern struct ListMenuTemplate gUnknown_03006310;
// Exported ROM declarations
u8 ListMenuInit(struct ListMenuTemplate *template, u16 a1, u16 a2);
s32 ListMenuHandleInput(u8 id);
void get_coro_args_x18_x1A(u8 a0, u16 *a1, u16 *a2);
void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2);
#endif //GUARD_LIST_MENU_H

View File

@@ -0,0 +1,239 @@
#ifndef GUARD_MAP_OBJECT_CONSTANTS_H
#define GUARD_MAP_OBJECT_CONSTANTS_H
enum
{
MAP_OBJ_GFX_BRENDAN_NORMAL,
MAP_OBJ_GFX_BRENDAN_MACH_BIKE,
MAP_OBJ_GFX_BRENDAN_SURFING,
MAP_OBJ_GFX_BRENDAN_FIELD_MOVE,
MAP_OBJ_GFX_QUINTY_PLUMP,
MAP_OBJ_GFX_LITTLE_BOY_1,
MAP_OBJ_GFX_LITTLE_GIRL_1,
MAP_OBJ_GFX_BOY_1,
MAP_OBJ_GFX_GIRL_1,
MAP_OBJ_GFX_BOY_2,
MAP_OBJ_GFX_GIRL_2,
MAP_OBJ_GFX_LITTLE_BOY_2,
MAP_OBJ_GFX_LITTLE_GIRL_2,
MAP_OBJ_GFX_BOY_3,
MAP_OBJ_GFX_GIRL_3,
MAP_OBJ_GFX_BOY_4,
MAP_OBJ_GFX_WOMAN_1,
MAP_OBJ_GFX_FAT_MAN,
MAP_OBJ_GFX_WOMAN_2,
MAP_OBJ_GFX_MAN_1,
MAP_OBJ_GFX_WOMAN_3,
MAP_OBJ_GFX_OLD_MAN_1,
MAP_OBJ_GFX_OLD_WOMAN_1,
MAP_OBJ_GFX_MAN_2,
MAP_OBJ_GFX_WOMAN_4,
MAP_OBJ_GFX_MAN_3,
MAP_OBJ_GFX_WOMAN_5,
MAP_OBJ_GFX_COOK,
MAP_OBJ_GFX_WOMAN_6,
MAP_OBJ_GFX_OLD_MAN_2,
MAP_OBJ_GFX_OLD_WOMAN_2,
MAP_OBJ_GFX_CAMPER,
MAP_OBJ_GFX_PICNICKER,
MAP_OBJ_GFX_MAN_4,
MAP_OBJ_GFX_WOMAN_7,
MAP_OBJ_GFX_YOUNGSTER,
MAP_OBJ_GFX_BUG_CATCHER,
MAP_OBJ_GFX_PSYCHIC_M,
MAP_OBJ_GFX_SCHOOL_KID_M,
MAP_OBJ_GFX_MANIAC,
MAP_OBJ_GFX_HEX_MANIAC,
MAP_OBJ_GFX_WOMAN_8,
MAP_OBJ_GFX_SWIMMER_M,
MAP_OBJ_GFX_SWIMMER_F,
MAP_OBJ_GFX_BLACK_BELT,
MAP_OBJ_GFX_BEAUTY,
MAP_OBJ_GFX_SCIENTIST_1,
MAP_OBJ_GFX_LASS,
MAP_OBJ_GFX_GENTLEMAN,
MAP_OBJ_GFX_SAILOR,
MAP_OBJ_GFX_FISHERMAN,
MAP_OBJ_GFX_RUNNING_TRIATHLETE_M,
MAP_OBJ_GFX_RUNNING_TRIATHLETE_F,
MAP_OBJ_GFX_TUBER_F,
MAP_OBJ_GFX_TUBER_M,
MAP_OBJ_GFX_HIKER,
MAP_OBJ_GFX_CYCLING_TRIATHLETE_M,
MAP_OBJ_GFX_CYCLING_TRIATHLETE_F,
MAP_OBJ_GFX_NURSE,
MAP_OBJ_GFX_ITEM_BALL,
MAP_OBJ_GFX_BERRY_TREE,
MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES,
MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES,
MAP_OBJ_GFX_BRENDAN_ACRO_BIKE,
MAP_OBJ_GFX_PROF_BIRCH,
MAP_OBJ_GFX_MAN_5,
MAP_OBJ_GFX_MAN_6,
MAP_OBJ_GFX_REPORTER_M,
MAP_OBJ_GFX_REPORTER_F,
MAP_OBJ_GFX_BARD,
MAP_OBJ_GFX_HIPSTER,
MAP_OBJ_GFX_TRADER,
MAP_OBJ_GFX_STORYTELLER,
MAP_OBJ_GFX_GIDDY,
MAP_OBJ_GFX_UNUSED_MAUVILLE_OLD_MAN_1,
MAP_OBJ_GFX_UNUSED_MAUVILLE_OLD_MAN_2,
MAP_OBJ_GFX_UNUSED_NATU_DOLL,
MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL,
MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL,
MAP_OBJ_GFX_UNUSED_WOOPER_DOLL,
MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL,
MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL,
MAP_OBJ_GFX_CUTTABLE_TREE,
MAP_OBJ_GFX_MART_EMPLOYEE,
MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN,
MAP_OBJ_GFX_TEALA,
MAP_OBJ_GFX_BREAKABLE_ROCK,
MAP_OBJ_GFX_PUSHABLE_BOULDER,
MAP_OBJ_GFX_MR_BRINEYS_BOAT,
MAP_OBJ_GFX_MAY_NORMAL,
MAP_OBJ_GFX_MAY_MACH_BIKE,
MAP_OBJ_GFX_MAY_ACRO_BIKE,
MAP_OBJ_GFX_MAY_SURFING,
MAP_OBJ_GFX_MAY_FIELD_MOVE,
MAP_OBJ_GFX_TRUCK,
MAP_OBJ_GFX_MACHOKE_CARRYING_BOX,
MAP_OBJ_GFX_MACHOKE_FACING_AWAY,
MAP_OBJ_GFX_BIRCHS_BAG,
MAP_OBJ_GFX_POOCHYENA,
MAP_OBJ_GFX_ARTIST,
MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL,
MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE,
MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE,
MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING,
MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE,
MAP_OBJ_GFX_RIVAL_MAY_NORMAL,
MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE,
MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE,
MAP_OBJ_GFX_RIVAL_MAY_SURFING,
MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE,
MAP_OBJ_GFX_CAMERAMAN,
MAP_OBJ_GFX_BRENDAN_UNDERWATER,
MAP_OBJ_GFX_MAY_UNDERWATER,
MAP_OBJ_GFX_MOVING_BOX,
MAP_OBJ_GFX_CABLE_CAR,
MAP_OBJ_GFX_SCIENTIST_2,
MAP_OBJ_GFX_MAN_7,
MAP_OBJ_GFX_AQUA_MEMBER_M,
MAP_OBJ_GFX_AQUA_MEMBER_F,
MAP_OBJ_GFX_MAGMA_MEMBER_M,
MAP_OBJ_GFX_MAGMA_MEMBER_F,
MAP_OBJ_GFX_SIDNEY,
MAP_OBJ_GFX_PHOEBE,
MAP_OBJ_GFX_GLACIA,
MAP_OBJ_GFX_DRAKE,
MAP_OBJ_GFX_ROXANNE,
MAP_OBJ_GFX_BRAWLY,
MAP_OBJ_GFX_WATTSON,
MAP_OBJ_GFX_FLANNERY,
MAP_OBJ_GFX_NORMAN,
MAP_OBJ_GFX_WINONA,
MAP_OBJ_GFX_LIZA,
MAP_OBJ_GFX_TATE,
MAP_OBJ_GFX_WALLACE,
MAP_OBJ_GFX_STEVEN,
MAP_OBJ_GFX_WALLY,
MAP_OBJ_GFX_LITTLE_BOY_3,
MAP_OBJ_GFX_BRENDAN_FISHING,
MAP_OBJ_GFX_MAY_FISHING,
MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN,
MAP_OBJ_GFX_SS_TIDAL,
MAP_OBJ_GFX_SUBMARINE_SHADOW,
MAP_OBJ_GFX_PICHU_DOLL,
MAP_OBJ_GFX_PIKACHU_DOLL,
MAP_OBJ_GFX_MARILL_DOLL,
MAP_OBJ_GFX_TOGEPI_DOLL,
MAP_OBJ_GFX_CYNDAQUIL_DOLL,
MAP_OBJ_GFX_CHIKORITA_DOLL,
MAP_OBJ_GFX_TOTODILE_DOLL,
MAP_OBJ_GFX_JIGGLYPUFF_DOLL,
MAP_OBJ_GFX_MEOWTH_DOLL,
MAP_OBJ_GFX_CLEFAIRY_DOLL,
MAP_OBJ_GFX_DITTO_DOLL,
MAP_OBJ_GFX_SMOOCHUM_DOLL,
MAP_OBJ_GFX_TREECKO_DOLL,
MAP_OBJ_GFX_TORCHIC_DOLL,
MAP_OBJ_GFX_MUDKIP_DOLL,
MAP_OBJ_GFX_DUSKULL_DOLL,
MAP_OBJ_GFX_WYNAUT_DOLL,
MAP_OBJ_GFX_BALTOY_DOLL,
MAP_OBJ_GFX_KECLEON_DOLL,
MAP_OBJ_GFX_AZURILL_DOLL,
MAP_OBJ_GFX_SKITTY_DOLL,
MAP_OBJ_GFX_SWABLU_DOLL,
MAP_OBJ_GFX_GULPIN_DOLL,
MAP_OBJ_GFX_LOTAD_DOLL,
MAP_OBJ_GFX_SEEDOT_DOLL,
MAP_OBJ_GFX_PIKA_CUSHION,
MAP_OBJ_GFX_ROUND_CUSHION,
MAP_OBJ_GFX_KISS_CUSHION,
MAP_OBJ_GFX_ZIGZAG_CUSHION,
MAP_OBJ_GFX_SPIN_CUSHION,
MAP_OBJ_GFX_DIAMOND_CUSHION,
MAP_OBJ_GFX_BALL_CUSHION,
MAP_OBJ_GFX_GRASS_CUSHION,
MAP_OBJ_GFX_FIRE_CUSHION,
MAP_OBJ_GFX_WATER_CUSHION,
MAP_OBJ_GFX_BIG_SNORLAX_DOLL,
MAP_OBJ_GFX_BIG_RHYDON_DOLL,
MAP_OBJ_GFX_BIG_LAPRAS_DOLL,
MAP_OBJ_GFX_BIG_VENUSAUR_DOLL,
MAP_OBJ_GFX_BIG_CHARIZARD_DOLL,
MAP_OBJ_GFX_BIG_BLASTOISE_DOLL,
MAP_OBJ_GFX_BIG_WAILMER_DOLL,
MAP_OBJ_GFX_BIG_REGIROCK_DOLL,
MAP_OBJ_GFX_BIG_REGICE_DOLL,
MAP_OBJ_GFX_BIG_REGISTEEL_DOLL,
MAP_OBJ_GFX_LATIAS,
MAP_OBJ_GFX_LATIOS,
MAP_OBJ_GFX_BOY_5,
MAP_OBJ_GFX_CONTEST_JUDGE,
MAP_OBJ_GFX_BRENDAN_WATERING,
MAP_OBJ_GFX_MAY_WATERING,
MAP_OBJ_GFX_BRENDAN_DECORATING,
MAP_OBJ_GFX_MAY_DECORATING,
MAP_OBJ_GFX_ARCHIE,
MAP_OBJ_GFX_MAXIE,
MAP_OBJ_GFX_KYOGRE_1,
MAP_OBJ_GFX_GROUDON_1,
MAP_OBJ_GFX_FOSSIL,
MAP_OBJ_GFX_REGIROCK,
MAP_OBJ_GFX_REGICE,
MAP_OBJ_GFX_REGISTEEL,
MAP_OBJ_GFX_SKITTY,
MAP_OBJ_GFX_KECLEON_1,
MAP_OBJ_GFX_KYOGRE_2,
MAP_OBJ_GFX_GROUDON_2,
MAP_OBJ_GFX_RAYQUAZA,
MAP_OBJ_GFX_ZIGZAGOON,
MAP_OBJ_GFX_PIKACHU,
MAP_OBJ_GFX_AZUMARILL,
MAP_OBJ_GFX_WINGULL,
MAP_OBJ_GFX_KECLEON_2,
MAP_OBJ_GFX_TUBER_M_SWIMMING,
MAP_OBJ_GFX_AZURILL,
MAP_OBJ_GFX_MOM,
MAP_OBJ_GFX_LINK_BRENDAN,
MAP_OBJ_GFX_LINK_MAY,
};
enum {
SHADOW_SIZE_S,
SHADOW_SIZE_M,
SHADOW_SIZE_L,
SHADOW_SIZE_XL
};
enum {
TRACKS_NONE,
TRACKS_FOOT,
TRACKS_BIKE_TIRE
};
#endif // GUARD_MAP_OBJECT_CONSTANTS_H

View File

@@ -4,21 +4,24 @@
#include "window.h"
struct MenuAction
{
const u8 *text;
u8 (*func)();
};
struct MenuAction2
{
const u8 *text;
void (*func)(u8);
union {
void (*void_u8)(u8);
u8 (*u8_void)(void);
} func;
};
void box_print(u8, u8, u8, u8, const void *, s8, const u8 *);
void sub_8198070(u8 windowId, bool8 copyToVram);
void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock);
void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 tileStart, u8 palette);
void schedule_bg_copy_tilemap_to_vram(u8 bgNum);
void PrintMenuTable(u8 idx, u8 nstrs, const struct MenuAction *strs);
void InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 idx, u8 nstrs,u8);
u8 GetMenuCursorPos(void);
s8 ProcessMenuInput(void);
void blit_move_info_icon(u8 winId, u8 a2, u16 x, u16 y);
void reset_temp_tile_data_buffers(void);
int decompress_and_copy_tile_data_to_vram(u8 bg_id, const void *src, int size, u16 offset, u8 mode);
bool8 free_temp_tile_data_buffers_if_possible(void);

View File

@@ -3,9 +3,18 @@
// Exported type declarations
struct YesNoFuncTable {
TaskFunc yesFunc;
TaskFunc noFunc;
};
// Exported RAM declarations
// Exported ROM declarations
void sub_812225C(u16 *, u16 *, u8, u8);
void sub_8122298(u16 *, u16 *, u8, u8, u8);
void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data);
bool8 sub_81221AC(void);
#endif //GUARD_MENU_HELPERS_H

12
include/menu_indicators.h Normal file
View File

@@ -0,0 +1,12 @@
#ifndef GUARD_MENU_INDICATORS_H
#define GUARD_MENU_INDICATORS_H
// Exported type declarations
// Exported RAM declarations
// Exported ROM declarations
u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u8, u8, u16 *);
void RemoveScrollIndicatorArrowPair(u8);
#endif //GUARD_MENU_INDICATORS_H

View File

@@ -1,9 +1,16 @@
#ifndef GUARD_NEW_MENU_HELPERS_H
#define GUARD_NEW_MENU_HELPERS_H
#include "text.h"
#include "task.h"
void sub_81973A4(void);
void sub_81973C4(u8, u8);
void sub_819746C(u8 windowId, bool8 copyToVram);
void sub_81973FC(u8, u8);
u16 AddTextPrinterParametrized(u8 windowId, u8 fontId, const u8 *str, u8 speed, void ( *callback)(u16, struct TextPrinter *), u8 fgColor, u8 bgColor, u8 shadowColor);
void DisplayItemMessageOnField(u8 taskId, const u8 *src, TaskFunc callback);
void sub_8197434(u8 a0, u8 a1);
void sub_8197930(void);
#endif // GUARD_NEW_MENU_HELPERS_H

View File

@@ -1,6 +1,8 @@
#ifndef GUARD_ROM4_H
#define GUARD_ROM4_H
#include "main.h"
struct UnkPlayerStruct
{
u8 player_field_0;
@@ -21,6 +23,7 @@ struct UCoords32
};
extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4];
extern MainCallback gFieldCallback;
void IncrementGameStat(u8 index);
@@ -55,5 +58,6 @@ void sub_8086230(void);
void c2_exit_to_overworld_2_switch(void);
bool32 sub_8087598(void);
void c2_exit_to_overworld_1_continue_scripts_restart_music(void);
void warp_in(void);
#endif //GUARD_ROM4_H

12
include/player_pc.h Normal file
View File

@@ -0,0 +1,12 @@
#ifndef GUARD_PLAYER_PC_H
#define GUARD_PLAYER_PC_H
// Exported type declarations
// Exported RAM declarations
// Exported ROM declarations
void sub_816B060(u8 taskId);
#endif //GUARD_PLAYER_PC_H

View File

@@ -6,6 +6,7 @@
// Exported RAM declarations
// Exported ROM declarations
void sub_80E9578(void);
void sub_80E980C(void);
#endif //GUARD_SECRET_BASE_H

View File

@@ -36,5 +36,39 @@ extern const u8 gText_Jackpot[];
extern const u8 gText_First[];
extern const u8 gText_Second[];
extern const u8 gText_Third[];
extern const u8 gText_NoDecorations[];
extern const u8 gText_NoDecorationsInUse[];
extern const u8 gText_Exit[];
extern const u8 gText_Cancel[];
extern const u8 gText_Color161Shadow161[];
extern const u8 gText_GoBackPrevMenu[];
extern const u8 gText_CantPlaceInRoom[];
extern const u8 gText_NoMoreDecorations[];
extern const u8 gText_NoMoreDecorations2[];
extern const u8 gText_InUseAlready[];
extern const u8 gText_CancelDecorating[];
extern const u8 gText_PlaceItHere[];
extern const u8 gText_CantBePlacedHere[];
extern const u8 gText_DecorationReturnedToPC[];
extern const u8 gText_StopPuttingAwayDecorations[];
extern const u8 gText_ReturnDecorationToPC[];
extern const u8 gText_NoDecorationHere[];
extern const u8 gText_DecorationWillBeDiscarded[];
extern const u8 gText_CantThrowAwayInUse[];
extern const u8 gText_DecorationThrownAway[];
extern const u8 gText_Desk[];
extern const u8 gText_Chair[];
extern const u8 gText_Plant[];
extern const u8 gText_Ornament[];
extern const u8 gText_Mat[];
extern const u8 gText_Poster[];
extern const u8 gText_PutOutSelectedDecorItem[];
extern const u8 gText_StoreChosenDecorInPC[];
extern const u8 gText_ThrowAwayUnwantedDecors[];
extern const u8 gText_Doll[];
extern const u8 gText_Cushion[];
extern const u8 gText_Decorate[];
extern const u8 gText_PutAway[];
extern const u8 gText_Toss2[];
#endif //GUARD_STRINGS_H

13
include/tilesets.h Normal file
View File

@@ -0,0 +1,13 @@
#ifndef GUARD_tilesets_H
#define GUARD_tilesets_H
// Exported type declarations
// Exported RAM declarations
// Exported ROM declarations
extern struct Tileset *gTilesetPointer_SecretBase;
extern struct Tileset *gTilesetPointer_SecretBaseRedCave;
#endif //GUARD_tilesets_H

11
include/trader.h Normal file
View File

@@ -0,0 +1,11 @@
//
// Created by scott on 10/21/2017.
//
#ifndef GUARD_TRADER_H
#define GUARD_TRADER_H
void sub_8133DA0(u8 taskId);
void sub_8133E1C(u8 taskId);
#endif //GUARD_TRADER_H

View File

@@ -8,6 +8,7 @@ void PutPokemonTodayCaughtOnAir(void);
u32 GetPlayerIDAsU32(void);
bool8 GetPriceReduction(u8 newsKind);
u8 GetRibbonCount(struct Pokemon *pokemon);
void TV_PutSecretBaseVisitOnTheAir(void);
void sub_80EE184(void);
void sub_80F14F8(TVShow *shows);
size_t sub_80EF370(int value);