summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/battle_interface.s235
-rw-r--r--src/battle/battle_interface.c406
2 files changed, 366 insertions, 275 deletions
diff --git a/data/battle_interface.s b/data/battle_interface.s
index d83c8e222..3a021fc71 100644
--- a/data/battle_interface.s
+++ b/data/battle_interface.s
@@ -42,238 +42,3 @@ gUnknown_0820A4B4:: @ 820A4B4
gUnknown_0820A4D4:: @ 820A4D4
obj_pal gUnknown_08D1212C, 0xD6FF
obj_pal gUnknown_08D1214C, 0xD704
-
- .align 2
-gOamData_820A4E4:: @ 820A4E4
- .2byte 0x4000
- .2byte 0xC000
- .2byte 0x0400
-
- .align 2
-gSpriteTemplate_820A4EC:: @ 820A4EC
- spr_template 55039, 55039, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_820A504:: @ 820A504
- spr_template 55040, 55039, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_820A51C:: @ 820A51C
- spr_template 55041, 55039, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_820A534:: @ 820A534
- spr_template 55042, 55039, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_820A54C:: @ 820A54C
- spr_template 55051, 55039, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gOamData_820A564:: @ 820A564
- .2byte 0x4000
- .2byte 0x4000
- .2byte 0x0400
-
- .align 2
-gSpriteTemplate_820A56C:: @ 820A56C
- spr_template 55044, 55044, gOamData_820A564, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8043CEC
-
- .align 2
-gSpriteTemplate_820A584:: @ 820A584
- spr_template 55045, 55044, gOamData_820A564, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8043CEC
-
- .align 2
-gSpriteTemplate_820A59C:: @ 820A59C
- spr_template 55046, 55044, gOamData_820A564, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8043CEC
-
- .align 2
-gSpriteTemplate_820A5B4:: @ 820A5B4
- spr_template 55047, 55044, gOamData_820A564, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8043CEC
-
- .align 2
-gSubspriteTable_820A5CC:: @ 820A5CC
- subsprite -16, 0, 1, 0, 64x32
- subsprite 48, 0, 1, 32, 32x32
- subsprite -16, 32, 1, 48, 32x8
- subsprite 16, 32, 1, 52, 32x8
- subsprite 48, 32, 1, 56, 32x8
-
- .align 2
-gSubspriteTable_820A5F4:: @ 820A5F4
- subsprite -16, 0, 1, 64, 64x32
- subsprite 48, 0, 1, 96, 32x32
- subsprite -16, 32, 1, 112, 32x8
- subsprite 16, 32, 1, 116, 32x8
- subsprite 48, 32, 1, 120, 32x8
-
- .align 2
-gSubspriteTable_820A61C:: @ 820A61C
- subsprite -16, 0, 1, 0, 64x32
- subsprite 48, 0, 1, 32, 32x32
-
- .align 2
-gSubspriteTable_820A62C:: @ 820A62C
- subsprite -16, 0, 1, 0, 64x32
- subsprite 48, 0, 1, 32, 32x32
-
- .align 2
-gSubspriteTable_820A63C:: @ 820A63C
- subsprite -16, 0, 1, 0, 32x8
- subsprite 16, 0, 1, 4, 32x8
-
- .align 2
-gSubspriteTable_820A64C:: @ 820A64C
- subsprite -16, 0, 1, 0, 32x8
- subsprite 16, 0, 1, 4, 32x8
- subsprite -32, 0, 1, 8, 8x8
-
-@ unreferenced
- .align 2
- .4byte 5, gSubspriteTable_820A5CC
- .4byte 2, gSubspriteTable_820A61C
- .4byte 5, gSubspriteTable_820A5F4
- .4byte 2, gSubspriteTable_820A62C
-
- .align 2
-gSubspriteTables_820A684:: @ 820A684
- .4byte 2, gSubspriteTable_820A63C
- .4byte 3, gSubspriteTable_820A64C
-
- .align 2
-gSubspriteTable_820A694:: @ 820A694
- subsprite -96, 0, 1, 0, 32x8
- subsprite -64, 0, 1, 4, 32x8
- subsprite -32, 0, 1, 8, 32x8
- subsprite 0, 0, 1, 12, 32x8
-
- .align 2
-gSubspriteTable_820A6B4:: @ 820A6B4
- subsprite -96, 0, 1, 0, 32x8
- subsprite -64, 0, 1, 4, 32x8
- subsprite -32, 0, 1, 8, 32x8
- subsprite 0, 0, 1, 8, 32x8
- subsprite 32, 0, 1, 8, 32x8
- subsprite 64, 0, 1, 12, 32x8
-
- .align 2
-gSubspriteTables_820A6E4:: @ 820A6E4
- .4byte 4, gSubspriteTable_820A694
-
- .align 2
-gSubspriteTables_820A6EC:: @ 820A6EC
- .4byte 6, gSubspriteTable_820A6B4
-
-@ unused dakuten/handakuten tiles
- .incbin "graphics/unused/dakuten.4bpp"
-
- .align 2
-gUnknown_0820A754:: @ 820A754
- obj_tiles gBattleGfx_BallStatusBar, 512, 0xd70c
- obj_tiles gBattleGfx_BallStatusBar, 512, 0xd70d
-
- .align 2
-gUnknown_0820A764:: @ 820A764
- obj_pal gUnknown_08D1212C, 0xd710
- obj_pal gUnknown_08D1212C, 0xd711
-
- .align 2
-gUnknown_0820A774:: @ 820A774
- obj_pal gUnknown_08D1214C, 0xd712
- obj_pal gUnknown_08D1214C, 0xd713
-
- .align 2
-gUnknown_0820A784:: @ 820A784
- obj_tiles Tiles_D129AC, 0x80, 0xd714
- obj_tiles Tiles_D129AC, 0x80, 0xd715
-
- .align 2
-gOamData_820A794:: @ 820A794
- .2byte 0x4000
- .2byte 0xC000
- .2byte 0x0400
-
- .align 2
-gOamData_820A79C:: @ 820A79C
- .2byte 0x0000
- .2byte 0x0000
- .2byte 0x0400
-
- .align 2
-gSpriteTemplate_820A7A4:: @ 820A7A4
- spr_template 55052, 55056, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8045030
-
- .align 2
-gSpriteTemplate_820A7BC:: @ 820A7BC
- spr_template 55053, 55057, gOamData_820A4E4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8045030
-
- .align 2
-gSpriteTemplate_820A7D4:: @ 820A7D4
- spr_template 55060, 55058, gOamData_820A79C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_804507C
-
- .align 2
-gSpriteTemplate_820A7EC:: @ 820A7EC
- spr_template 55061, 55059, gOamData_820A79C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_804507C
-
- .align 2
-gUnknown_0820A804:: @ 820A804
- .4byte OBJ_VRAM0 + 0x940
- .4byte OBJ_VRAM0 + 0x960
-
- .align 2
-gUnknown_0820A80C:: @ 820A80C
- .4byte OBJ_VRAM0 + 0x520
- .4byte OBJ_VRAM0 + 0x540
-
- .align 2
-gUnknown_0820A814:: @ 820A814
- .4byte OBJ_VRAM0 + 0x540
- .4byte OBJ_VRAM0 + 0x560
-
-gUnknown_0820A81C:: @ 820A81C
- .string "{COLOR DARK_GREY}{HIGHLIGHT RED} "
-
- .align 2
-gUnknown_0820A83C:: @ 820A83C
- .4byte OBJ_VRAM0 + 0x3E0
- .4byte OBJ_VRAM0 + 0xB00
- .4byte OBJ_VRAM0 + 0xB20
-
- .align 2
-gUnknown_0820A848:: @ 820A848
- .4byte OBJ_VRAM0 + 0x2C0
- .4byte OBJ_VRAM0 + 0x2E0
- .4byte OBJ_VRAM0 + 0x600
-
- .align 2
-gUnknown_0820A854:: @ 820A854
- .4byte OBJ_VRAM0 + 0xB40
- .4byte OBJ_VRAM0 + 0xB60
-
- .align 2
-gUnknown_0820A85C:: @ 820A85C
- .4byte OBJ_VRAM0 + 0x620
- .4byte OBJ_VRAM0 + 0x640
-
-gUnknown_0820A864:: @ 820A864
- .string "{COLOR DARK_GREY}{HIGHLIGHT RED} /$"
-
- .align 2
-gUnknown_0820A87C:: @ 820A87C
- .4byte OBJ_VRAM0
- .4byte OBJ_VRAM0 + 0x20
- .4byte OBJ_VRAM0 + 0x40
- .4byte OBJ_VRAM0 + 0x60
- .4byte OBJ_VRAM0 + 0x80
- .4byte OBJ_VRAM0 + 0xA0
-
- .align 2
-gUnknown_0820A894:: @ 820A894
- .4byte OBJ_VRAM0 + 0xC0
- .4byte OBJ_VRAM0 + 0xE0
-
-gUnknown_0820A89C:: @ 820A89C
- .string "{COLOR DARK_GREY}{HIGHLIGHT TRANSPARENT} "
-
-gUnknown_0820A8B0:: @ 820A8B0
- .string "{HIGHLIGHT RED}$"
diff --git a/src/battle/battle_interface.c b/src/battle/battle_interface.c
index 6f6dc9de6..2b47d358a 100644
--- a/src/battle/battle_interface.c
+++ b/src/battle/battle_interface.c
@@ -29,6 +29,360 @@ struct UnknownStruct7
u8 filler0[0x180];
};
+void sub_8043CEC(struct Sprite *sprite);
+extern const u8 gBattleGfx_BallStatusBar[];
+extern const u8 gUnknown_08D1212C[];
+extern const u8 gUnknown_08D1214C[];
+extern const u8 Tiles_D129AC[];
+static void sub_8045030(struct Sprite *sprite);
+static void sub_804507C(struct Sprite *sprite);
+
+const struct OamData gOamData_820A4E4 =
+{
+ .shape = 1,
+ .size = 3,
+ .priority = 1,
+};
+
+const struct SpriteTemplate gSpriteTemplates_820A4EC[] =
+{
+ {
+ .tileTag = 55039,
+ .paletteTag = 55039,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ },
+ {
+ .tileTag = 55040,
+ .paletteTag = 55039,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ },
+};
+
+const struct SpriteTemplate gSpriteTemplates_820A51C[] =
+{
+ {
+ .tileTag = 55041,
+ .paletteTag = 55039,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ },
+ {
+ .tileTag = 55042,
+ .paletteTag = 55039,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ },
+};
+
+const struct SpriteTemplate gSpriteTemplate_820A54C =
+{
+ .tileTag = 55051,
+ .paletteTag = 55039,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+const struct OamData gOamData_820A564 =
+{
+ .shape = 1,
+ .size = 1,
+ .priority = 1,
+};
+
+const struct SpriteTemplate gSpriteTemplates_820A56C[] =
+{
+ {
+ .tileTag = 55044,
+ .paletteTag = 55044,
+ .oam = &gOamData_820A564,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8043CEC,
+ },
+ {
+ .tileTag = 55045,
+ .paletteTag = 55044,
+ .oam = &gOamData_820A564,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8043CEC,
+ },
+ {
+ .tileTag = 55046,
+ .paletteTag = 55044,
+ .oam = &gOamData_820A564,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8043CEC,
+ },
+ {
+ .tileTag = 55047,
+ .paletteTag = 55044,
+ .oam = &gOamData_820A564,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8043CEC,
+ },
+};
+
+const struct Subsprite gSubspriteTable_820A5CC[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 3 }, // size := 64x32
+ { .x = 48, .y = 0, .shape = ST_OAM_SQUARE, .priority = 1, .tileOffset = 32, .size = 2 }, // size := 32x32
+ { .x = -16, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 48, .size = 1 }, // size := 32x8
+ { .x = 16, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 52, .size = 1 }, // size := 32x8
+ { .x = 48, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 56, .size = 1 }, // size := 32x8
+};
+
+const struct Subsprite gSubspriteTable_820A5F4[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 64, .size = 3 }, // size := 64x32
+ { .x = 48, .y = 0, .shape = ST_OAM_SQUARE, .priority = 1, .tileOffset = 96, .size = 2 }, // size := 32x32
+ { .x = -16, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset =112, .size = 1 }, // size := 32x8
+ { .x = 16, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset =116, .size = 1 }, // size := 32x8
+ { .x = 48, .y = 32, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset =120, .size = 1 }, // size := 32x8
+};
+
+const struct Subsprite gSubspriteTable_820A61C[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 3 }, // size := 64x32
+ { .x = 48, .y = 0, .shape = ST_OAM_SQUARE, .priority = 1, .tileOffset = 32, .size = 2 }, // size := 32x32
+};
+
+const struct Subsprite gSubspriteTable_820A62C[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 3 }, // size := 64x32
+ { .x = 48, .y = 0, .shape = ST_OAM_SQUARE, .priority = 1, .tileOffset = 32, .size = 2 }, // size := 32x32
+};
+
+const struct Subsprite gSubspriteTable_820A63C[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 1 }, // size := 32x8
+ { .x = 16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 4, .size = 1 }, // size := 32x8
+};
+
+const struct Subsprite gSubspriteTable_820A64C[] =
+{
+ { .x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 1 }, // size := 32x8
+ { .x = 16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 4, .size = 1 }, // size := 32x8
+ { .x = -32, .y = 0, .shape = ST_OAM_SQUARE, .priority = 1, .tileOffset = 8, .size = 0 }, // size := 8x8
+};
+
+const struct SubspriteTable gSubspriteTables_unreferenced[] =
+{
+ { ARRAY_COUNT(gSubspriteTable_820A5CC), gSubspriteTable_820A5CC },
+ { ARRAY_COUNT(gSubspriteTable_820A61C), gSubspriteTable_820A61C },
+ { ARRAY_COUNT(gSubspriteTable_820A5F4), gSubspriteTable_820A5F4 },
+ { ARRAY_COUNT(gSubspriteTable_820A62C), gSubspriteTable_820A62C },
+};
+
+const struct SubspriteTable gSubspriteTables_820A684[] =
+{
+ { ARRAY_COUNT(gSubspriteTable_820A63C), gSubspriteTable_820A63C },
+ { ARRAY_COUNT(gSubspriteTable_820A64C), gSubspriteTable_820A64C },
+};
+
+const struct Subsprite gSubspriteTable_820A694[] =
+{
+ { .x = -96, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 1 }, // size := 32x8
+ { .x = -64, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 4, .size = 1 }, // size := 32x8
+ { .x = -32, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 8, .size = 1 }, // size := 32x8
+ { .x = 0, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 12, .size = 1 }, // size := 32x8
+};
+
+const struct Subsprite gSubspriteTable_820A6B4[] =
+{
+ { .x = -96, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 0, .size = 1 }, // size := 32x8
+ { .x = -64, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 4, .size = 1 }, // size := 32x8
+ { .x = -32, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 8, .size = 1 }, // size := 32x8
+ { .x = 0, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 8, .size = 1 }, // size := 32x8
+ { .x = 32, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 8, .size = 1 }, // size := 32x8
+ { .x = 64, .y = 0, .shape = ST_OAM_H_RECTANGLE, .priority = 1, .tileOffset = 12, .size = 1 }, // size := 32x8
+};
+
+const struct SubspriteTable gSubspriteTables_820A6E4[] =
+{
+ { ARRAY_COUNT(gSubspriteTable_820A694), gSubspriteTable_820A694 },
+};
+
+const struct SubspriteTable gSubspriteTables_820A6EC[] =
+{
+ { ARRAY_COUNT(gSubspriteTable_820A6B4), gSubspriteTable_820A6B4 },
+};
+
+// unused dakuten/handakuten tiles
+const u8 gUnusedDakuten[] = INCBIN_U8("graphics/unused/dakuten.4bpp");
+
+const struct CompressedSpriteSheet gUnknown_0820A754[] =
+{
+ { gBattleGfx_BallStatusBar, 512, 0xd70c },
+ { gBattleGfx_BallStatusBar, 512, 0xd70d },
+};
+
+const struct CompressedSpritePalette gUnknown_0820A764[] =
+{
+ { gUnknown_08D1212C, 0xd710 },
+ { gUnknown_08D1212C, 0xd711 },
+};
+
+const struct CompressedSpritePalette gUnknown_0820A774[] =
+{
+ { gUnknown_08D1214C, 0xd712 },
+ { gUnknown_08D1214C, 0xd713 },
+};
+
+const struct CompressedSpriteSheet gUnknown_0820A784[] =
+{
+ { Tiles_D129AC, 0x80, 0xd714 },
+ { Tiles_D129AC, 0x80, 0xd715 },
+};
+
+const struct OamData gOamData_820A794 =
+{
+ .shape = 1,
+ .size = 3,
+ .priority = 1,
+};
+
+const struct OamData gOamData_820A79C =
+{
+ .shape = 0,
+ .size = 0,
+ .priority = 1,
+};
+
+const struct SpriteTemplate gSpriteTemplate_820A7A4 =
+{
+ .tileTag = 55052,
+ .paletteTag = 55056,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8045030,
+};
+
+const struct SpriteTemplate gSpriteTemplate_820A7BC =
+{
+ .tileTag = 55053,
+ .paletteTag = 55057,
+ .oam = &gOamData_820A4E4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8045030,
+};
+
+const struct SpriteTemplate gSpriteTemplate_820A7D4 =
+{
+ .tileTag = 55060,
+ .paletteTag = 55058,
+ .oam = &gOamData_820A79C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_804507C,
+};
+
+const struct SpriteTemplate gSpriteTemplate_820A7EC =
+{
+ .tileTag = 55061,
+ .paletteTag = 55059,
+ .oam = &gOamData_820A79C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_804507C,
+};
+
+TileData4bpp *const gUnknown_0820A804[2] =
+{
+ &OBJ_VRAM0_TEMP[74],
+ &OBJ_VRAM0_TEMP[75],
+};
+
+TileData4bpp *const gUnknown_0820A80C[2] =
+{
+ &OBJ_VRAM0_TEMP[41],
+ &OBJ_VRAM0_TEMP[42],
+};
+
+TileData4bpp *const gUnknown_0820A814[2] =
+{
+ &OBJ_VRAM0_TEMP[42],
+ &OBJ_VRAM0_TEMP[43],
+};
+
+const u8 gUnknown_0820A81C[] = __("{COLOR DARK_GREY}{HIGHLIGHT RED} ");
+
+TileData4bpp *const gUnknown_0820A83C[3] =
+{
+ &OBJ_VRAM0_TEMP[31],
+ &OBJ_VRAM0_TEMP[88],
+ &OBJ_VRAM0_TEMP[89],
+};
+
+TileData4bpp *const gUnknown_0820A848[3] =
+{
+ &OBJ_VRAM0_TEMP[22],
+ &OBJ_VRAM0_TEMP[23],
+ &OBJ_VRAM0_TEMP[48],
+};
+
+TileData4bpp *const gUnknown_0820A854[2] =
+{
+ &OBJ_VRAM0_TEMP[90],
+ &OBJ_VRAM0_TEMP[91],
+};
+
+TileData4bpp *const gUnknown_0820A85C[2] =
+{
+ &OBJ_VRAM0_TEMP[49],
+ &OBJ_VRAM0_TEMP[50],
+};
+
+const u8 gUnknown_0820A864[] = _("{COLOR DARK_GREY}{HIGHLIGHT RED} /");
+
+TileData4bpp *const gUnknown_0820A87C[6] =
+{
+ &OBJ_VRAM0_TEMP[0],
+ &OBJ_VRAM0_TEMP[1],
+ &OBJ_VRAM0_TEMP[2],
+ &OBJ_VRAM0_TEMP[3],
+ &OBJ_VRAM0_TEMP[4],
+ &OBJ_VRAM0_TEMP[5],
+};
+
+TileData4bpp *const gUnknown_0820A894[2] =
+{
+ &OBJ_VRAM0_TEMP[6],
+ &OBJ_VRAM0_TEMP[7],
+};
+
+const u8 gUnknown_0820A89C[] = __("{COLOR DARK_GREY}{HIGHLIGHT TRANSPARENT} ");
+const u8 gUnknown_0820A8B0[] = _("{HIGHLIGHT RED}");
+
TileData4bpp *const gUnknown_0820A8B4[10] =
{
&OBJ_VRAM0_TEMP[ 2],
@@ -79,35 +433,6 @@ extern u8 gHealthboxIDs[];
extern u16 gBattleTypeFlags;
-extern const struct SpriteTemplate gSpriteTemplate_820A4EC[];
-extern const struct SpriteTemplate gSpriteTemplate_820A51C[];
-extern const struct SpriteTemplate gSpriteTemplate_820A54C;
-extern const struct SpriteTemplate gSpriteTemplate_820A56C[];
-extern const struct SubspriteTable gSubspriteTables_820A684[];
-extern const struct SubspriteTable gSubspriteTables_820A6E4[];
-extern const struct SubspriteTable gSubspriteTables_820A6EC[];
-extern const struct SpriteSheet gUnknown_0820A754[];
-extern const struct SpritePalette gUnknown_0820A764[];
-extern const struct SpritePalette gUnknown_0820A774[];
-extern const struct SpriteSheet gUnknown_0820A784[];
-extern const struct SpriteTemplate gSpriteTemplate_820A7A4[];
-extern const struct SpriteTemplate gSpriteTemplate_820A7D4[];
-extern void *const gUnknown_0820A804[];
-extern void *const gUnknown_0820A80C[];
-extern void *const gUnknown_0820A814[];
-extern void *const gUnknown_0820A83C[];
-extern void *const gUnknown_0820A848[];
-extern void *const gUnknown_0820A854[];
-extern void *const gUnknown_0820A85C[];
-extern TileData4bpp *const gUnknown_0820A87C[];
-extern TileData4bpp *const gUnknown_0820A894[];
-// extern TileData4bpp *const gUnknown_0820A8B4[];
-// extern TileData4bpp *const gUnknown_0820A8DC[];
-// extern TileData4bpp *const gUnknown_0820A904[];
-extern const u8 gUnknown_0820A81C[];
-extern const u8 gUnknown_0820A864[];
-extern const u8 gUnknown_0820A89C[];
-extern const u8 gUnknown_0820A8B0[];
extern const u8 BattleText_SafariBalls[];
extern const u8 BattleText_SafariBallsLeft[];
extern const u8 BattleText_HighlightRed[];
@@ -463,8 +788,8 @@ u8 battle_make_oam_normal_battle(u8 a)
{
if (GetBankSide(a) == 0)
{
- spriteId1 = CreateSprite(&gSpriteTemplate_820A4EC[0], 240, 160, 1);
- spriteId2 = CreateSpriteAtEnd(&gSpriteTemplate_820A4EC[0], 240, 160, 1);
+ spriteId1 = CreateSprite(&gSpriteTemplates_820A4EC[0], 240, 160, 1);
+ spriteId2 = CreateSpriteAtEnd(&gSpriteTemplates_820A4EC[0], 240, 160, 1);
gSprites[spriteId1].oam.shape = 0;
gSprites[spriteId2].oam.shape = 0;
@@ -472,8 +797,8 @@ u8 battle_make_oam_normal_battle(u8 a)
}
else
{
- spriteId1 = CreateSprite(&gSpriteTemplate_820A51C[0], 240, 160, 1);
- spriteId2 = CreateSpriteAtEnd(&gSpriteTemplate_820A51C[0], 240, 160, 1);
+ spriteId1 = CreateSprite(&gSpriteTemplates_820A51C[0], 240, 160, 1);
+ spriteId2 = CreateSpriteAtEnd(&gSpriteTemplates_820A51C[0], 240, 160, 1);
gSprites[spriteId2].oam.tileNum += 32;
sp0 = 2;
@@ -489,8 +814,8 @@ u8 battle_make_oam_normal_battle(u8 a)
{
if (GetBankSide(a) == 0)
{
- spriteId1 = CreateSprite(&gSpriteTemplate_820A4EC[GetBankIdentity(a) / 2], 240, 160, 1);
- spriteId2 = CreateSpriteAtEnd(&gSpriteTemplate_820A4EC[GetBankIdentity(a) / 2], 240, 160, 1);
+ spriteId1 = CreateSprite(&gSpriteTemplates_820A4EC[GetBankIdentity(a) / 2], 240, 160, 1);
+ spriteId2 = CreateSpriteAtEnd(&gSpriteTemplates_820A4EC[GetBankIdentity(a) / 2], 240, 160, 1);
gSprites[spriteId1].oam.affineParam = spriteId2;
gSprites[spriteId2].data[5] = spriteId1;
@@ -501,8 +826,8 @@ u8 battle_make_oam_normal_battle(u8 a)
//_08043ACC
else
{
- spriteId1 = CreateSprite(&gSpriteTemplate_820A51C[GetBankIdentity(a) / 2], 240, 160, 1);
- spriteId2 = CreateSpriteAtEnd(&gSpriteTemplate_820A51C[GetBankIdentity(a) / 2], 240, 160, 1);
+ spriteId1 = CreateSprite(&gSpriteTemplates_820A51C[GetBankIdentity(a) / 2], 240, 160, 1);
+ spriteId2 = CreateSpriteAtEnd(&gSpriteTemplates_820A51C[GetBankIdentity(a) / 2], 240, 160, 1);
gSprites[spriteId1].oam.affineParam = spriteId2;
gSprites[spriteId2].data[5] = spriteId1;
@@ -514,7 +839,7 @@ u8 battle_make_oam_normal_battle(u8 a)
}
//_08043B50
- spriteId3 = CreateSpriteAtEnd(&gSpriteTemplate_820A56C[gBanksBySide[a]], 140, 60, 0);
+ spriteId3 = CreateSpriteAtEnd(&gSpriteTemplates_820A56C[gBanksBySide[a]], 140, 60, 0);
sprite = &gSprites[spriteId3];
SetSubspriteTables(sprite, &gSubspriteTables_820A684[GetBankSide(a)]);
sprite->subspriteMode = 2;
@@ -696,7 +1021,8 @@ void sub_8043F44(u8 a)
static void sub_8043FC0(u8 a, u8 b)
{
u8 str[30];
- void *const *r7;
+ // void *const *r7;
+ TileData4bpp *const *r7;
u8 *ptr;
s32 i;
s32 two;
@@ -746,7 +1072,7 @@ static void sub_8043FC0(u8 a, u8 b)
two = 2;
for (i = 0; i < two; i++)
- CpuCopy32((void *)(ewram0_9(1) + i * 64), r7[i] + gSprites[a].oam.tileNum * 32, 32);
+ CpuCopy32((void *)(ewram0_9(1) + i * 64), r7[i] + gSprites[a].oam.tileNum, 32);
}
#ifdef NONMATCHING