summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2019-06-27 14:48:47 -0400
committerhuderlem <huderlem@gmail.com>2019-07-02 19:29:49 -0500
commita4370455268b24bf92e7955fb5ed975edb955e42 (patch)
tree0eac0cd97322d89e6189c8e00a9c18c3cafb66b4 /src
parent04abad96dd2c463523300f0225e2d41715910bd6 (diff)
through gSpriteTemplate_83FA0DC
Diffstat (limited to 'src')
-rw-r--r--src/roulette.c8
-rw-r--r--src/roulette_gfx.c271
2 files changed, 256 insertions, 23 deletions
diff --git a/src/roulette.c b/src/roulette.c
index 3b0875fc7..c0732aaa0 100644
--- a/src/roulette.c
+++ b/src/roulette.c
@@ -1,5 +1,6 @@
#include "global.h"
#include "random.h"
+#include "graphics.h"
#include "ewram.h"
#include "field_fadetransition.h"
#include "constants/game_stat.h"
@@ -330,13 +331,6 @@ const struct YesNoFuncTable gUnknown_083F8EBC = {
extern u8 gUnknown_02019000[];
extern u16 gSpecialVar_0x8004;
-extern const u8 gUnknown_08E8096C[];
-extern const u8 gRouletteWheelTiles[];
-extern const u8 gRouletteCenter_Gfx[];
-extern const u8 gRouletteHeadersTiles[];
-extern const u8 gRouletteCreditTiles[];
-extern const u8 gRouletteNumbersTiles[];
-extern const u8 gRouletteMultiplierTiles[];
extern u16 gPlttBufferFaded[];
extern u16 gPlttBufferUnfaded[];
extern const u8 gUnknown_081C4157[];
diff --git a/src/roulette_gfx.c b/src/roulette_gfx.c
index 98226ce32..76f352238 100644
--- a/src/roulette_gfx.c
+++ b/src/roulette_gfx.c
@@ -1,5 +1,6 @@
#include "global.h"
#include "random.h"
+#include "graphics.h"
#include "ewram.h"
#include "field_fadetransition.h"
#include "constants/game_stat.h"
@@ -94,18 +95,256 @@ extern const u16 RouletteSpritePalette_15[];
extern const u16 RouletteSpritePalette_16[];
#endif //ENGLISH
-extern const u8 gUnknown_083F90FC[];
-extern const u8 gUnknown_083F92A8[];
-extern const u8 gUnknown_083F9D3C[];
-extern const struct SpritePalette gUnknown_083F9E30[];
-extern const struct SpriteSheet gUnknown_083F9F54;
-extern const struct SpriteSheet gUnknown_083F9F5C;
-extern const struct SpriteTemplate gSpriteTemplate_83FA07C[];
-extern const struct SpriteTemplate gSpriteTemplate_83F9FD4[];
-extern const struct SpriteTemplate gSpriteTemplate_83FA034[];
+const u8 gUnknown_083F90FC[] = INCBIN_U8("graphics/roulette/ball.4bpp.lz");
+const u8 RouletteBallCounterTiles[] = INCBIN_U8("graphics/roulette/ball_counter.4bpp.lz");
+const u8 gUnknown_083F92A8[] = INCBIN_U8("graphics/roulette/roulette_tilt.4bpp.lz");
+const u8 RoulettePokeIconsTiles[] = INCBIN_U8("graphics/roulette/poke_icons.4bpp.lz");
+const u8 RoulettePokeIcons2Tiles[] = INCBIN_U8("graphics/roulette/poke_icons2.4bpp.lz");
+const u8 gUnknown_083F9D3C[] = INCBIN_U8("graphics/roulette/shadow.4bpp.lz");
+const u8 RouletteCursorTiles[] = INCBIN_U8("graphics/roulette/cursor.4bpp.lz");
+
+const struct SpritePalette gUnknown_083F9E30[] = {
+ {RouletteSpritePalette_01, 1 },
+ {RouletteSpritePalette_02, 2 },
+ {RouletteSpritePalette_03, 3 },
+ {RouletteSpritePalette_04, 4 },
+ {RouletteSpritePalette_05, 5 },
+ {RouletteSpritePalette_06, 6 },
+ {RouletteSpritePalette_07, 7 },
+ {RouletteSpritePalette_08, 8 },
+ {RouletteSpritePalette_09, 9 },
+ {RouletteSpritePalette_10, 10},
+ {RouletteSpritePalette_11, 11},
+ {RouletteSpritePalette_12, 12},
+ {RouletteSpritePalette_13, 13},
+ {RouletteSpritePalette_14, 14},
+ {RouletteSpritePalette_15, 15},
+ {RouletteSpritePalette_16, 16},
+ {}
+};
+
+const struct OamData gOamData_83F9EB8 = {
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 1
+};
+
+const struct OamData gOamData_83F9EC0 = {
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 1
+};
+
+const struct OamData gOamData_83F9EC8 = {
+ .y = 60,
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2
+};
+
+const union AnimCmd gSpriteAnim_83F9ED0[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9ED8[] = {
+ gSpriteAnim_83F9ED0
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83F9EDC[] = {
+ AFFINEANIMCMD_END
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_83F9EE4[] = {
+ gSpriteAffineAnim_83F9EDC
+};
+
+const struct CompressedSpriteSheet gUnknown_083F9EE8 = {
+ RoulettePokeIcons2Tiles,
+ 0xC00,
+ 0
+};
+
+const union AnimCmd gSpriteAnim_83F9EF0[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(32, 0),
+ ANIMCMD_FRAME(64, 0),
+ ANIMCMD_FRAME(72, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(40, 0),
+ ANIMCMD_FRAME(48, 0),
+ ANIMCMD_FRAME(80, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(24, 0),
+ ANIMCMD_FRAME(56, 0),
+ ANIMCMD_FRAME(88, 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F24[] = {
+ gSpriteAnim_83F9EF0 + 0
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F28[] = {
+ gSpriteAnim_83F9EF0 + 1
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F2C[] = {
+ gSpriteAnim_83F9EF0 + 2
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F30[] = {
+ gSpriteAnim_83F9EF0 + 3
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F34[] = {
+ gSpriteAnim_83F9EF0 + 4
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F38[] = {
+ gSpriteAnim_83F9EF0 + 5
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F3C[] = {
+ gSpriteAnim_83F9EF0 + 6
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F40[] = {
+ gSpriteAnim_83F9EF0 + 7
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F44[] = {
+ gSpriteAnim_83F9EF0 + 8
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F48[] = {
+ gSpriteAnim_83F9EF0 + 9
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F4C[] = {
+ gSpriteAnim_83F9EF0 + 10
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9F50[] = {
+ gSpriteAnim_83F9EF0 + 11
+};
+
+const struct CompressedSpriteSheet gUnknown_083F9F54 = {
+ gRouletteHeadersTiles,
+ 0x1600,
+ 4
+};
+
+const struct CompressedSpriteSheet gUnknown_083F9F5C = {
+ RoulettePokeIconsTiles,
+ 0x400,
+ 5
+};
+
+const union AnimCmd gSpriteAnim_83F9F64[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(16, 0),
+ ANIMCMD_FRAME(32, 0),
+ ANIMCMD_FRAME(48, 0),
+ ANIMCMD_FRAME(64, 0),
+ ANIMCMD_FRAME(80, 0),
+ ANIMCMD_FRAME(96, 0),
+ ANIMCMD_FRAME(112, 0),
+ ANIMCMD_FRAME(128, 0),
+ ANIMCMD_FRAME(144, 0),
+ ANIMCMD_FRAME(160, 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd gSpriteAnim_83F9F94[] = {
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_FRAME(4, 0),
+ ANIMCMD_FRAME(8, 0),
+ ANIMCMD_FRAME(12, 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FA8[] = {
+ gSpriteAnim_83F9F64 + 0
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FAC[] = {
+ gSpriteAnim_83F9F64 + 2
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FB0[] = {
+ gSpriteAnim_83F9F64 + 4
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FB4[] = {
+ gSpriteAnim_83F9F64 + 6
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FB8[] = {
+ gSpriteAnim_83F9F64 + 8
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FBC[] = {
+ gSpriteAnim_83F9F64 + 9
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FC0[] = {
+ gSpriteAnim_83F9F64 + 10
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FC4[] = {
+ gSpriteAnim_83F9F94 + 0
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FC8[] = {
+ gSpriteAnim_83F9F94 + 1
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FCC[] = {
+ gSpriteAnim_83F9F94 + 2
+};
+
+const union AnimCmd *const gSpriteAnimTable_83F9FD0[] = {
+ gSpriteAnim_83F9F94 + 3
+};
+
+const struct SpriteTemplate gSpriteTemplate_83F9FD4[] = {
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FA8, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FAC, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FB0, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FB4, NULL, gDummySpriteAffineAnimTable, sub_81184CC}
+};
+
+const struct SpriteTemplate gSpriteTemplate_83FA034[] = {
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FB8, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FBC, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {4, 8, &gOamData_83F9EB8, gSpriteAnimTable_83F9FC0, NULL, gDummySpriteAffineAnimTable, sub_81184CC}
+};
+
+const struct SpriteTemplate gSpriteTemplate_83FA07C[] ={
+ {5, 8, &gOamData_83F9EC0, gSpriteAnimTable_83F9FC4, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {5, 8, &gOamData_83F9EC0, gSpriteAnimTable_83F9FC8, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {5, 8, &gOamData_83F9EC0, gSpriteAnimTable_83F9FCC, NULL, gDummySpriteAffineAnimTable, sub_81184CC},
+ {5, 8, &gOamData_83F9EC0, gSpriteAnimTable_83F9FD0, NULL, gDummySpriteAffineAnimTable, sub_81184CC}
+};
+
+const struct SpriteTemplate gSpriteTemplate_83FA0DC[] = {
+ {0, 9, &gOamData_83F9EC8, gSpriteAnimTable_83F9F24, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 10, &gOamData_83F9EC8, gSpriteAnimTable_83F9F28, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 11, &gOamData_83F9EC8, gSpriteAnimTable_83F9F2C, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 12, &gOamData_83F9EC8, gSpriteAnimTable_83F9F30, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 9, &gOamData_83F9EC8, gSpriteAnimTable_83F9F34, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 10, &gOamData_83F9EC8, gSpriteAnimTable_83F9F38, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 11, &gOamData_83F9EC8, gSpriteAnimTable_83F9F3C, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 12, &gOamData_83F9EC8, gSpriteAnimTable_83F9F40, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 9, &gOamData_83F9EC8, gSpriteAnimTable_83F9F44, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 10, &gOamData_83F9EC8, gSpriteAnimTable_83F9F48, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 11, &gOamData_83F9EC8, gSpriteAnimTable_83F9F4C, NULL, gDummySpriteAffineAnimTable, sub_8117E98},
+ {0, 12, &gOamData_83F9EC8, gSpriteAnimTable_83F9F50, NULL, gDummySpriteAffineAnimTable, sub_8117E98}
+};
+
extern const struct SpriteTemplate gSpriteTemplate_83FA40C;
-extern const struct SpriteSheet gUnknown_083F9EE8;
-extern const struct SpriteTemplate gSpriteTemplate_83FA0DC[];
extern struct OamMatrix gOamMatrices[];
extern const struct SpriteSheet gUnknown_083FA21C[];
extern const struct SpriteTemplate gSpriteTemplate_83FA2B0;
@@ -844,13 +1083,13 @@ void debug_sub_812E698(struct Sprite *sprite)
m4aSongNumStart(0x38);
if (Random() & 1)
{
- eRoulette->var8C = 0;
- eRoulette->var7F = (eRoulette->var7E + 1) % 12;
+ eRoulette->var8C = 0;
+ eRoulette->var7F = (eRoulette->var7E + 1) % 12;
}
else
{
- eRoulette->var8C = gUnknown_083F8DF4[eRoulette->var04_0].var1C * 2;
- eRoulette->var7F = eRoulette->var7E;
+ eRoulette->var8C = gUnknown_083F8DF4[eRoulette->var04_0].var1C * 2;
+ eRoulette->var7F = eRoulette->var7E;
}
sprite->data[0] = 1;
sprite->data[2] = gUnknown_083F8DF4[eRoulette->var04_0].var02;
@@ -1455,7 +1694,7 @@ void sub_8119780(struct Sprite *sprite)
{
if (sprite->data[1]++ >= sprite->data[3])
{
- sprite->pos1.x -= 2;
+ sprite->pos1.x -= 2;
if (sprite->pos1.x < -16)
{
if (!eRoulette->var03_6)