summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-04-24 08:21:39 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-04-24 08:21:39 -0400
commitbedf072c371990c991203d7ffca6e4c0941a891f (patch)
tree1a9aa35115ea203b4120d9b88f4e6ac22bfd9cc7 /src
parent3f34a0491d42c8e35a1d26bb34d59106d8a30660 (diff)
Finish decompilation of pokedex_area_screen
Diffstat (limited to 'src')
-rw-r--r--src/pokedex_area_screen.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/pokedex_area_screen.c b/src/pokedex_area_screen.c
index af5c5dd54..2f2d20942 100644
--- a/src/pokedex_area_screen.c
+++ b/src/pokedex_area_screen.c
@@ -19,6 +19,7 @@
#include "overworld.h"
#include "event_data.h"
#include "trig.h"
+#include "graphics.h"
// Static type declarations
@@ -1382,3 +1383,57 @@ void DestroyAreaSprites(void)
}
}
}
+
+const struct SpritePalette gUnknown_083F865C = {gAreaUnknownPalette, 3};
+
+void LoadAreaUnknownGraphics(void)
+{
+ struct SpriteSheet spriteSheet = {gPokedexAreaScreenPtr->unk0FB4, 0x600, 3};
+
+ LZ77UnCompWram(gAreaUnknownTiles, gPokedexAreaScreenPtr->unk0FB4);
+ LoadSpriteSheet(&spriteSheet);
+ LoadSpritePalette(&gUnknown_083F865C);
+}
+
+const struct OamData gOamData_83F866C = {
+ .size = 2,
+ .priority = 1
+};
+
+const struct SpriteTemplate gSpriteTemplate_83F8674 = {
+ 3,
+ 3,
+ &gOamData_83F866C,
+ gDummySpriteAnimTable,
+ NULL,
+ gDummySpriteAffineAnimTable,
+ SpriteCallbackDummy
+};
+
+void CreateAreaUnknownSprites(void)
+{
+ u16 i;
+ u8 spriteId;
+
+ if (gPokedexAreaScreenPtr->unk0110 != 0 || gPokedexAreaScreenPtr->unk0112 != 0)
+ {
+ for (i = 0; i < 3; i++)
+ {
+ gPokedexAreaScreenPtr->unk0FA8[i] = NULL;
+ }
+ }
+ else
+ {
+ for (i = 0; i < 3; i++)
+ {
+ spriteId = CreateSprite(&gSpriteTemplate_83F8674, i * 32 + 0xa0, 0x8c, 0);
+ if (spriteId != MAX_SPRITES)
+ {
+ gSprites[spriteId].oam.tileNum += i * 16;
+ gPokedexAreaScreenPtr->unk0FA8[i] = gSprites + spriteId;
+ }
+ else
+ gPokedexAreaScreenPtr->unk0FA8[i] = NULL;
+ }
+ }
+}