Merge branch 'master' into battle_frontier_2

This commit is contained in:
DizzyEggg
2018-10-30 21:48:18 +01:00
88 changed files with 63739 additions and 58616 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -56,8 +56,8 @@ static const struct SpriteTemplate gUnknown_0853EF48 =
static const struct SpriteTemplate gUnknown_0853EF60 =
{
.tileTag = ANIM_TAG_136,
.paletteTag = ANIM_TAG_136,
.tileTag = ANIM_TAG_CIRCLE_IMPACT,
.paletteTag = ANIM_TAG_CIRCLE_IMPACT,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
@@ -73,8 +73,8 @@ u8 sub_80A9C70(u8 battlerId, bool8 b)
u8 spriteId2;
u8 i;
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
gTasks[taskId].data[0] = battlerId;
if (b)
{

View File

@@ -0,0 +1,10 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
const u16 gUnknown_08597418 = RGB(31, 31, 31);
// no clue what these are...
// possibly some register offsets
const u8 gUnknown_0859741A[] = {0x08, 0x0a, 0x0c, 0x0e};
const u8 gUnknown_0859741E[] = {0x08, 0x0a, 0x0c, 0x0e};

View File

@@ -162,10 +162,10 @@ const struct BgTemplate gBattleBgTemplates[] =
},
};
static const struct WindowTemplate gUnknown_0831AA18[] =
static const struct WindowTemplate gUnknown_0831AA18[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -174,7 +174,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0090,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@@ -183,7 +183,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x01c0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@@ -192,7 +192,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0190,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@@ -201,7 +201,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0300,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@@ -210,7 +210,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0310,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@@ -219,7 +219,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0320,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@@ -228,7 +228,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0330,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@@ -237,7 +237,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0290,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@@ -246,7 +246,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@@ -255,7 +255,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@@ -264,7 +264,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@@ -273,7 +273,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02b0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@@ -282,7 +282,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@@ -300,7 +300,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x016e,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@@ -309,7 +309,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@@ -318,7 +318,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@@ -327,7 +327,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@@ -336,7 +336,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@@ -345,7 +345,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0060,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@@ -354,7 +354,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0080,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 2,
.width = 6,
@@ -363,7 +363,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 2,
.width = 7,
@@ -372,7 +372,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 7,
@@ -383,10 +383,10 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
DUMMY_WIN_TEMPLATE
};
static const struct WindowTemplate gUnknown_0831AAE0[] =
static const struct WindowTemplate gUnknown_0831AAE0[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0090,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x01c0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0190,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0300,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0310,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0320,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0330,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0290,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@@ -494,7 +494,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02b0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@@ -503,7 +503,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@@ -512,7 +512,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@@ -521,7 +521,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x016e,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 6,
.tilemapTop = 1,
.width = 8,
@@ -530,7 +530,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 1,
.width = 2,
@@ -539,7 +539,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0110,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 8,
@@ -548,7 +548,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0114,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 4,
.width = 6,
@@ -557,7 +557,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0124,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 6,
.width = 6,
@@ -566,7 +566,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0130,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 8,
.width = 6,
@@ -575,7 +575,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x013c,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 11,
.width = 14,
@@ -584,7 +584,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0148,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,

View File

@@ -786,7 +786,7 @@ static const struct BgTemplate gUnknown_0860CE84[4] =
static const struct WindowTemplate gUnknown_0860CE94[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 3,
.width = 8,
@@ -795,7 +795,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 16,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 3,
.width = 8,
@@ -804,7 +804,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 144,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 1,
.width = 14,
@@ -818,7 +818,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
static const struct WindowTemplate gUnknown_0860CEB4[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@@ -827,7 +827,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@@ -836,7 +836,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@@ -845,7 +845,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@@ -854,7 +854,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@@ -863,7 +863,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@@ -872,7 +872,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@@ -881,7 +881,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@@ -890,7 +890,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,
@@ -899,7 +899,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 372,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@@ -908,7 +908,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@@ -917,7 +917,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@@ -926,7 +926,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@@ -935,7 +935,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@@ -944,7 +944,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@@ -953,7 +953,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@@ -962,7 +962,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@@ -971,7 +971,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,

View File

@@ -323,7 +323,7 @@ static const struct BgTemplate sSelect_BgTemplates[] =
static const struct WindowTemplate sSelect_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@@ -332,7 +332,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -341,7 +341,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@@ -350,7 +350,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -359,7 +359,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -368,7 +368,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x009b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,
@@ -907,7 +907,7 @@ static const struct BgTemplate sSwap_BgTemplates[4] =
static const struct WindowTemplate sSwap_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@@ -916,7 +916,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -925,7 +925,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@@ -934,7 +934,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 14,
.width = 9,
@@ -943,7 +943,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -952,7 +952,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00a1,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 21,
.tilemapTop = 15,
.width = 9,
@@ -961,7 +961,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 10,
.tilemapTop = 2,
.width = 4,
@@ -970,7 +970,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -979,7 +979,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c9,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,

21
src/battle_intro.c Normal file
View File

@@ -0,0 +1,21 @@
#include "global.h"
#include "task.h"
extern void task_battle_intro_80BC47C(u8);
extern void task00_battle_intro_80BC6C8(u8);
extern void task_battle_intro_80BC47C(u8);
extern void task_battle_intro_anim(u8);
const TaskFunc gUnknown_08597424[] =
{
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task00_battle_intro_80BC6C8,
task00_battle_intro_80BC6C8,
task00_battle_intro_80BC6C8,
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task_battle_intro_anim,
task_battle_intro_anim,
};

View File

@@ -188,7 +188,7 @@ static const u8 sColorTable[][3] =
static const struct WindowTemplate gUnknown_0861F328[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -197,7 +197,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 30
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -206,7 +206,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 270
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -215,7 +215,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 354
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@@ -229,7 +229,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
static const struct WindowTemplate gUnknown_0861F350[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@@ -238,7 +238,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@@ -247,7 +247,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@@ -256,7 +256,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@@ -265,7 +265,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,

View File

@@ -65,7 +65,7 @@ static const struct BgTemplate sTrainerHillRecordsBgTemplates[] =
static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@@ -78,7 +78,7 @@ static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
static const struct WindowTemplate sLinkBattleRecordsWindow =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,

View File

@@ -323,7 +323,7 @@ static const struct BgTemplate sBerryBlenderBgTemplates[3] =
static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 6,
.width = 7,
@@ -332,7 +332,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x28,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 6,
.width = 7,
@@ -341,7 +341,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x36,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 7,
@@ -350,7 +350,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x44,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 12,
.width = 7,
@@ -359,7 +359,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x52,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -368,7 +368,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x60,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 3,
.width = 21,
@@ -381,7 +381,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
static const struct WindowTemplate sBlender_YesNoWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -846,7 +846,7 @@ static const u8 sUnknown_08339CD2[] =
static const struct WindowTemplate sBlenderRecordWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 6,
.tilemapTop = 4,
.width = 18,

View File

@@ -102,7 +102,7 @@ static const u8 sTextColors[2][3] =
static const struct WindowTemplate sWindowTemplates[] =
{
{ // WIN_BERRY_NAME
.priority = 1,
.bg = 1,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 8,
@@ -111,7 +111,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 69,
},
{ // WIN_SIZE_FIRM
.priority = 1,
.bg = 1,
.tilemapLeft = 11,
.tilemapTop = 7,
.width = 18,
@@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 85,
},
{ // WIN_DESC
.priority = 1,
.bg = 1,
.tilemapLeft = 4,
.tilemapTop = 14,
.width = 25,
@@ -129,7 +129,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 157,
},
{ // WIN_BERRY_TAG
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 0,
.width = 8,

189
src/bug.c Normal file
View File

@@ -0,0 +1,189 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8110368(struct Sprite *);
extern void sub_8110438(struct Sprite *);
extern void sub_81104E4(struct Sprite *);
extern void sub_81105B4(struct Sprite *);
extern void sub_811067C(struct Sprite *);
extern void sub_8110720(struct Sprite *);
extern void sub_8110850(struct Sprite *);
extern void sub_8110994(struct Sprite *);
const union AffineAnimCmd gUnknown_08596938[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 30, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596948[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, -99, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596958[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 94, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596968[] =
{
gUnknown_08596938,
gUnknown_08596948,
gUnknown_08596958,
};
const struct SpriteTemplate gUnknown_08596974 =
{
.tileTag = ANIM_TAG_HORN_HIT_2,
.paletteTag = ANIM_TAG_HORN_HIT_2,
.oam = &gUnknown_085249F4,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596968,
.callback = sub_8110368,
};
const union AffineAnimCmd gUnknown_0859698C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -33, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_0859699C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085969AC[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085969BC[] =
{
gUnknown_0859698C,
gUnknown_0859699C,
gUnknown_085969AC,
};
const struct SpriteTemplate gUnknown_085969C8 =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085969BC,
.callback = sub_8110438,
};
const struct SpriteTemplate gUnknown_085969E0 =
{
.tileTag = ANIM_TAG_WEB_THREAD,
.paletteTag = ANIM_TAG_WEB_THREAD,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81104E4,
};
const struct SpriteTemplate gUnknown_085969F8 =
{
.tileTag = ANIM_TAG_STRING,
.paletteTag = ANIM_TAG_STRING,
.oam = &gUnknown_0852493C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81105B4,
};
const union AffineAnimCmd gUnknown_08596A10[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596A28[] =
{
gUnknown_08596A10,
};
const struct SpriteTemplate gUnknown_08596A2C =
{
.tileTag = ANIM_TAG_SPIDER_WEB,
.paletteTag = ANIM_TAG_SPIDER_WEB,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596A28,
.callback = sub_811067C,
};
const struct SpriteTemplate gLinearStingerSpriteTemplate =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110720,
};
const struct SpriteTemplate gPinMissileSpriteTemplate =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110850,
};
const struct SpriteTemplate gIcicleSpearSpriteTemplate =
{
.tileTag = ANIM_TAG_ICICLE_SPEAR,
.paletteTag = ANIM_TAG_ICICLE_SPEAR,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110850,
};
const union AffineAnimCmd gUnknown_08596A8C[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 18),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 8),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 8),
AFFINEANIMCMD_LOOP(5),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596AC4[] =
{
gUnknown_08596A8C,
};
const struct SpriteTemplate gUnknown_08596AC8 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596AC4,
.callback = sub_8110994,
};

View File

@@ -34,7 +34,7 @@ extern u8 gUnknown_02032298[2];
extern u8 gUnknown_0203CEF8[];
static const struct WindowTemplate gUnknown_08550594 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 11,
.width = 11,
@@ -421,7 +421,7 @@ bool32 sub_80B2AF4(u16 *arg0, u16 *arg1)
gStringVar1[0] = EOS;
gStringVar2[0] = EOS;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 2; j++)
@@ -1151,7 +1151,7 @@ static void sub_80B3950(void)
void nullsub_37(void)
{
}
void sub_80B3968(void)

View File

@@ -11,8 +11,8 @@
#include "text_window.h"
#include "constants/songs.h"
extern u8 gText_ClearAllSaveData[];
extern u8 gText_ClearingData[];
extern const u8 gText_ClearAllSaveData[];
extern const u8 gText_ClearingData[];
static void Task_DoClearSaveDataScreenYesNo(u8);
static void Task_ClearSaveDataScreenYesNoChoice(u8);
@@ -46,7 +46,7 @@ static const struct BgTemplate sClearSaveBgTemplates[2] =
static const struct WindowTemplate sClearSaveTextWindow[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 26,
@@ -60,7 +60,7 @@ static const struct WindowTemplate sClearSaveTextWindow[] =
static const struct WindowTemplate sClearSaveYesNo[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 5,

View File

@@ -949,7 +949,7 @@ static const struct BgTemplate gUnknown_085E6F68[] =
static const struct WindowTemplate gUnknown_085E6F6C[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 9,
.width = 30,
@@ -1142,7 +1142,7 @@ static void sub_81754DC(void)
{
RunTasks();
AnimateSprites();
if ((gMain.heldKeys & B_BUTTON)
&& gHasHallOfFameRecords != 0
&& gTasks[gUnknown_0203BCE2].func == sub_8175774)
@@ -1182,9 +1182,9 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
{
u8 x;
u8 color[3];
color[0] = 0;
if (a2 == 1)
{
color[1] = 3;
@@ -1195,7 +1195,7 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
color[1] = 1;
color[2] = 2;
}
x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, 0xF0, 1);
AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string);
}
@@ -1230,7 +1230,7 @@ void sub_8175620(void)
gTasks[taskIdC].data[TDC_0] = 40;
SetGpuReg(REG_OFFSET_BG0VOFS, 0xFFFC);
taskIdB = CreateTask(sub_8175DA0, 0);
gTasks[taskIdB].data[TDB_TASK_A_ID] = taskIdA;
@@ -1546,9 +1546,9 @@ static void sub_8175DA0(u8 taskIdB)
{
for (i = 0; i < 5; i++)
sub_81755BC(gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, 5 + i * 16, gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->var_1);
CopyWindowToVram(0, 2);
gTasks[taskIdB].data[TDB_CURRENT_PAGE] += 1;
gTasks[taskIdB].data[TDB_0] += 1;

169
src/dark.c Normal file
View File

@@ -0,0 +1,169 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_81138D4(struct Sprite *);
extern void sub_81139DC(struct Sprite *);
extern void sub_8113A90(struct Sprite *);
extern void sub_81144BC(struct Sprite *);
const struct SpriteTemplate gUnknown_08596FC8 =
{
.tileTag = ANIM_TAG_TIED_BAG,
.paletteTag = ANIM_TAG_TIED_BAG,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81138D4,
};
const union AffineAnimCmd gUnknown_08596FE0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596FF0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 32, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597000[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 64, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597010[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597020[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -128, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597030[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597040[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -64, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597050[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -32, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08597060[] =
{
gUnknown_08596FE0,
gUnknown_08596FF0,
gUnknown_08597000,
gUnknown_08597010,
gUnknown_08597020,
gUnknown_08597030,
gUnknown_08597040,
gUnknown_08597050,
};
const struct SpriteTemplate gUnknown_08597080 =
{
.tileTag = ANIM_TAG_SHARP_TEETH,
.paletteTag = ANIM_TAG_SHARP_TEETH,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597060,
.callback = sub_81139DC,
};
const struct SpriteTemplate gUnknown_08597098 =
{
.tileTag = ANIM_TAG_CLAMP,
.paletteTag = ANIM_TAG_CLAMP,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597060,
.callback = sub_81139DC,
};
const union AffineAnimCmd gUnknown_085970B0[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 80, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, -2, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085970C8[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, -80, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085970E0[] =
{
gUnknown_085970B0,
gUnknown_085970C8,
};
const struct SpriteTemplate gUnknown_085970E8 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085970E0,
.callback = sub_8113A90,
};
const union AnimCmd gUnknown_08597100[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08597118[] =
{
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
ANIMCMD_FRAME(48, 4, .hFlip = TRUE),
ANIMCMD_FRAME(64, 4, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08597130[] =
{
gUnknown_08597100,
gUnknown_08597118,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8597138 =
{
.tileTag = ANIM_TAG_CLAW_SLASH,
.paletteTag = ANIM_TAG_CLAW_SLASH,
.oam = &gUnknown_08524914,
.anims = gUnknown_08597130,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81144BC,
};

View File

@@ -63,7 +63,7 @@ EWRAM_DATA static u16 sHatchedEggMotherMoves[4] = {0};
static const struct WindowTemplate sDaycareLevelMenuWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,

View File

@@ -217,7 +217,7 @@ void (*const SecretBasePC_SelectedDecorActions[][2])(u8 taskId) = {
const struct WindowTemplate gUnknown_085A6B90[4] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 18,
@@ -226,7 +226,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0001
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@@ -235,7 +235,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0091
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 1,
.width = 12,
@@ -244,7 +244,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x017b
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 13,
.width = 13,

View File

@@ -11,19 +11,14 @@
#include "window.h"
#include "string_util.h"
#include "text.h"
#include "overworld.h"
#include "menu.h"
extern void reset_temp_tile_data_buffers(void);
extern int decompress_and_copy_tile_data_to_vram(u8 bg_id, void *src, int size, u16 offset, u8 mode);
extern bool8 free_temp_tile_data_buffers_if_possible(void);
extern void sub_80861E8(void); // rom4
extern bool16 sub_80C0944(void);
extern void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 *color, s8 speed, u8 *str);
extern u16 gUnknown_0860F074[];
extern u8 gText_DexNational[];
extern u8 gText_DexHoenn[];
extern u8 gText_PokedexDiploma[];
extern const u8 gText_DexNational[];
extern const u8 gText_DexHoenn[];
extern const u8 gText_PokedexDiploma[];
static void MainCB2(void);
static void Task_DiplomaFadeIn(u8);
@@ -34,7 +29,7 @@ static void InitDiplomaBg(void);
static void InitDiplomaWindow(void);
static void PrintDiplomaText(u8 *, u8, u8);
EWRAM_DATA static void **sDiplomaTilemapPtr = {NULL};
EWRAM_DATA static u8 *sDiplomaTilemapPtr = NULL;
static void VBlankCB(void)
{
@@ -186,7 +181,7 @@ static void InitDiplomaBg(void)
static const struct WindowTemplate sDiplomaWinTemplates[2] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 20,

180
src/dragon.c Normal file
View File

@@ -0,0 +1,180 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8113064(struct Sprite *);
extern void sub_8113224(struct Sprite *);
extern void sub_81131B4(struct Sprite *);
extern void sub_8113224(struct Sprite *);
extern void sub_8113250(struct Sprite *);
extern void sub_81135EC(struct Sprite *);
const union AnimCmd gUnknown_08596E60[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596E78[] =
{
gUnknown_08596E60,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E7C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596E78,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8113064,
};
const union AnimCmd gUnknown_08596E94[] =
{
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08596EA4[] =
{
ANIMCMD_FRAME(16, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(32, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(48, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596EB4[] =
{
gUnknown_08596E94,
gUnknown_08596EA4,
};
const union AffineAnimCmd gUnknown_08596EBC[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 127, 0),
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596ED4[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596EEC[] =
{
gUnknown_08596EBC,
gUnknown_08596ED4,
};
const struct SpriteTemplate gUnknown_08596EF4 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08596EB4,
.images = NULL,
.affineAnims = gUnknown_08596EEC,
.callback = sub_8113224,
};
const union AnimCmd gUnknown_08596F0C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596F24[] =
{
gUnknown_08596F0C,
};
const struct SpriteTemplate gUnknown_08596F28 =
{
.tileTag = ANIM_TAG_FIRE_PLUME,
.paletteTag = ANIM_TAG_FIRE_PLUME,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596F24,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81131B4,
};
const union AnimCmd gUnknown_08596F40[] =
{
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596F50[] =
{
gUnknown_08596F40,
gUnknown_08596F40,
};
const union AffineAnimCmd gUnknown_08596F58[] =
{
AFFINEANIMCMD_FRAME(0x64, 0x64, 127, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596F68[] =
{
AFFINEANIMCMD_FRAME(0x64, 0x64, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596F78[] =
{
gUnknown_08596F58,
gUnknown_08596F68,
};
const struct SpriteTemplate gUnknown_08596F80 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08596F50,
.images = NULL,
.affineAnims = gUnknown_08596F78,
.callback = sub_8113224,
};
const struct SpriteTemplate gUnknown_08596F98 =
{
.tileTag = ANIM_TAG_HOLLOW_ORB,
.paletteTag = ANIM_TAG_HOLLOW_ORB,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8113250,
};
const struct SpriteTemplate gUnknown_08596FB0 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596E78,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81135EC,
};

2093
src/effects_1.c Normal file

File diff suppressed because it is too large Load Diff

1197
src/effects_2.c Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -26,6 +26,11 @@
#include "constants/abilities.h"
#include "daycare.h"
#include "overworld.h"
#include "scanline_effect.h"
#include "field_weather.h"
#include "international_string_util.h"
#include "naming_screen.h"
#include "field_screen.h"
#include "battle.h" // to get rid of later
struct EggHatchData
@@ -55,14 +60,7 @@ extern const u32 gUnknown_08331F60[]; // tilemap gameboy circle
extern const u8 gText_HatchedFromEgg[];
extern const u8 gText_NickHatchPrompt[];
extern u8 sav1_map_get_name(void);
extern void TVShowConvertInternationalString(u8* str1, u8* str2, u8);
extern void FadeScreen(u8, u8);
extern void overworld_free_bg_tilemaps(void);
extern void sub_80AF168(void);
extern void ScanlineEffect_Stop(void);
extern void play_some_sound(void);
extern void DoNamingScreen(u8, const u8*, u16, u8, u32, MainCallback);
extern u16 sub_80D22D0(void);
extern u8 CountPartyAliveNonEggMonsExcept(u8);
@@ -254,7 +252,7 @@ static const struct BgTemplate sBgTemplates_EggHatch[2] =
static const struct WindowTemplate sWinTemplates_EggHatch[2] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -267,7 +265,7 @@ static const struct WindowTemplate sWinTemplates_EggHatch[2] =
static const struct WindowTemplate sYesNoWinTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,

438
src/electric.c Normal file
View File

@@ -0,0 +1,438 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810A1A8(struct Sprite *);
extern void sub_810A214(struct Sprite *);
extern void sub_810A274(struct Sprite *);
extern void sub_810A308(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_810A46C(struct Sprite *);
extern void sub_810A5BC(struct Sprite *);
extern void sub_810A628(struct Sprite *);
extern void sub_810A75C(struct Sprite *);
extern void sub_810A9DC(struct Sprite *);
extern void sub_810AA2C(struct Sprite *);
extern void sub_810ACD8(struct Sprite *);
extern void sub_810AD30(struct Sprite *);
extern void sub_810AD98(struct Sprite *);
extern void sub_810B1F0(struct Sprite *);
extern void sub_810B23C(struct Sprite *);
extern void sub_810B51C(struct Sprite *);
const union AnimCmd gUnknown_085956A4[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 8),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085956BC[] =
{
gUnknown_085956A4,
};
const struct SpriteTemplate gUnknown_085956C0 =
{
.tileTag = ANIM_TAG_LIGHTNING,
.paletteTag = ANIM_TAG_LIGHTNING,
.oam = &gUnknown_08524914,
.anims = gUnknown_085956BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A1A8,
};
const union AffineAnimCmd gUnknown_085956D8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20),
AFFINEANIMCMD_FRAME(0x0, 0x0, -16, 60),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085956F8[] =
{
gUnknown_085956D8,
};
const struct SpriteTemplate gUnknown_085956FC =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085956F8,
.callback = sub_810A214,
};
const union AnimCmd gUnknown_08595714[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_FRAME(80, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595730[] =
{
gUnknown_08595714,
};
const struct SpriteTemplate gUnknown_08595734 =
{
.tileTag = ANIM_TAG_SHOCK,
.paletteTag = ANIM_TAG_SHOCK,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595730,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A274,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_859574C =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A308,
};
const struct SpriteTemplate gUnknown_08595764 =
{
.tileTag = ANIM_TAG_BLACK_BALL_2,
.paletteTag = ANIM_TAG_BLACK_BALL_2,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const union AffineAnimCmd gUnknown_0859577C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_0859578C[] =
{
gUnknown_0859577C,
};
const struct SpriteTemplate gUnknown_08595790 =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859578C,
.callback = sub_810A46C,
};
const union AnimCmd gUnknown_085957A8[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085957B8[] =
{
gUnknown_085957A8,
};
const union AffineAnimCmd gUnknown_085957BC[] =
{
AFFINEANIMCMD_FRAME(0xE8, 0xE8, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_085957DC[] =
{
gUnknown_085957BC,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85957E0 =
{
.tileTag = ANIM_TAG_SHOCK_3,
.paletteTag = ANIM_TAG_SHOCK_3,
.oam = &gUnknown_08524974,
.anims = gUnknown_085957B8,
.images = NULL,
.affineAnims = gUnknown_085957DC,
.callback = sub_810A5BC,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85957F8 =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859578C,
.callback = sub_810A628,
};
const struct SpriteTemplate gElectricitySpriteTemplate =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A75C,
};
const struct SpriteTemplate gUnknown_08595828 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A9DC,
};
const struct SpriteTemplate gUnknown_08595840 =
{
.tileTag = ANIM_TAG_SPARK_H,
.paletteTag = ANIM_TAG_SPARK_H,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810AA2C,
};
const s8 gUnknown_08595858[][2] =
{
{ 58, -60},
{-56, -36},
{ 8, -56},
{-16, 56},
{ 58, -10},
{-58, 10},
{ 48, -18},
{-8, 56},
{ 16, -56},
{-58, -42},
{ 58, 30},
{-48, 40},
{ 12, -48},
{ 48, -12},
{-56, 18},
{ 48, 48},
};
const union AnimCmd gUnknown_08595878[] =
{
ANIMCMD_FRAME(3, 1),
ANIMCMD_FRAME(2, 1),
ANIMCMD_FRAME(1, 1),
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859588C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(1, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(3, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085958A0[] =
{
gUnknown_08595878,
gUnknown_0859588C,
};
const struct SpriteTemplate gUnknown_085958A8 =
{
.tileTag = ANIM_TAG_ELECTRIC_ORBS,
.paletteTag = ANIM_TAG_ELECTRIC_ORBS,
.oam = &gUnknown_08524904,
.anims = gUnknown_085958A0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
const union AffineAnimCmd gUnknown_085958C0[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 60),
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
AFFINEANIMCMD_LOOP(10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595900[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
AFFINEANIMCMD_JUMP(3),
};
const union AffineAnimCmd gUnknown_08595930[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 30),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595950[] =
{
gUnknown_085958C0,
gUnknown_08595900,
gUnknown_08595930,
};
const struct SpriteTemplate gUnknown_0859595C =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810ACD8,
};
const union AnimCmd gUnknown_08595974[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595988[] =
{
gUnknown_08595974,
};
const struct SpriteTemplate gUnknown_0859598C =
{
.tileTag = ANIM_TAG_ELECTRICITY,
.paletteTag = ANIM_TAG_ELECTRICITY,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595988,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810AD30,
};
const struct SpriteTemplate gUnknown_085959A4 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810AD98,
};
const union AnimCmd gUnknown_085959BC[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959C4[] =
{
ANIMCMD_FRAME(2, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959CC[] =
{
ANIMCMD_FRAME(4, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959D4[] =
{
ANIMCMD_FRAME(6, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085959DC[] =
{
gUnknown_085959BC,
gUnknown_085959C4,
gUnknown_085959CC,
gUnknown_085959D4,
};
const union AffineAnimCmd gUnknown_085959EC[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 64, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085959FC[] =
{
gUnknown_085959EC,
};
const struct SpriteTemplate gUnknown_08595A00 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524A04,
.anims = gUnknown_085959DC,
.images = NULL,
.affineAnims = gUnknown_085959FC,
.callback = sub_810B1F0,
};
const struct SpriteTemplate gUnknown_08595A18 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810B23C,
};
const struct SpriteTemplate gUnknown_08595A30 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B51C,
};

View File

@@ -58,7 +58,7 @@ static const struct BgTemplate gUnknown_085E5068[] = {
static const struct WindowTemplate gUnknown_085E5070[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 17,
.width = 12,
@@ -67,7 +67,7 @@ static const struct WindowTemplate gUnknown_085E5070[] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 1,
.width = 7,

View File

@@ -1680,7 +1680,7 @@ void sub_8139980(void)
}
const struct WindowTemplate gUnknown_085B2BAC = {
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 1,
.width = 8,
@@ -3005,7 +3005,7 @@ void sub_813A8FC(void)
void sub_813A958(void)
{
static const struct WindowTemplate gUnknown_085B311C = {
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 6,
@@ -3058,7 +3058,7 @@ u16 sub_813AA04(void)
void sub_813AA18(void)
{
static const struct WindowTemplate gUnknown_085B3124 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 9,
.width = 4,
@@ -3220,7 +3220,7 @@ void sub_813AC7C(void)
static void sub_813ACE8(u8 a0, u16 a1)
{
static const struct WindowTemplate gUnknown_085B3220 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 7,
.width = 12,

398
src/fight.c Normal file
View File

@@ -0,0 +1,398 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void unc_080B08A0(struct Sprite *);
extern void sub_810CE68(struct Sprite *);
extern void sub_810CEB4(struct Sprite *);
extern void sub_810CEE0(struct Sprite *);
extern void sub_810CF30(struct Sprite *);
extern void sub_810D10C(struct Sprite *);
extern void sub_810D1B4(struct Sprite *);
extern void sub_810D278(struct Sprite *);
extern void sub_810D2E4(struct Sprite *);
extern void sub_810D37C(struct Sprite *);
extern void sub_810D40C(struct Sprite *);
extern void sub_810D4F4(struct Sprite *);
extern void sub_810D608(struct Sprite *);
extern void sub_810D714(struct Sprite *);
extern void sub_810D874(struct Sprite *);
extern void sub_810D984(struct Sprite *);
extern void sub_810DA10(struct Sprite *);
extern void sub_810DA7C(struct Sprite *);
const struct SpriteTemplate gUnknown_08595E14 =
{
.tileTag = ANIM_TAG_HUMANOID_FOOT,
.paletteTag = ANIM_TAG_HUMANOID_FOOT,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = unc_080B08A0,
};
const union AnimCmd gUnknown_08595E2C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E34[] =
{
ANIMCMD_FRAME(16, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E3C[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E44[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E4C[] =
{
ANIMCMD_FRAME(48, 1, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595E54[] =
{
gUnknown_08595E2C,
};
const union AnimCmd *const gUnknown_08595E58[] =
{
gUnknown_08595E34,
gUnknown_08595E3C,
};
const union AnimCmd *const gUnknown_08595E60[] =
{
gUnknown_08595E44,
gUnknown_08595E4C,
};
const struct SpriteTemplate gUnknown_08595E68 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CE68,
};
const struct SpriteTemplate gUnknown_08595E80 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CEB4,
};
const struct SpriteTemplate gFistFootSpriteTemplate =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CEE0,
};
const struct SpriteTemplate gUnknown_08595EB0 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CF30,
};
const struct SpriteTemplate gUnknown_08595EC8 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E60,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D10C,
};
const struct SpriteTemplate gUnknown_08595EE0 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E58,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D1B4,
};
const union AffineAnimCmd gUnknown_08595EF8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 20, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08595F10[] =
{
gUnknown_08595EF8,
};
const struct SpriteTemplate gUnknown_08595F14 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08595F10,
.callback = sub_810D278,
};
const union AffineAnimCmd gUnknown_08595F2C[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 20, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08595F44[] =
{
gUnknown_08595F2C,
};
const struct SpriteTemplate gMegaPunchKickSpriteTemplate =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08595F44,
.callback = sub_810D278,
};
const struct SpriteTemplate gUnknown_08595F60 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E58,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D2E4,
};
const struct SpriteTemplate gUnknown_08595F78 =
{
.tileTag = ANIM_TAG_DUCK,
.paletteTag = ANIM_TAG_DUCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D37C,
};
const struct SpriteTemplate gUnknown_08595F90 =
{
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D40C,
};
const struct SpriteTemplate gUnknown_08595FA8 =
{
.tileTag = ANIM_TAG_TORN_METAL,
.paletteTag = ANIM_TAG_TORN_METAL,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D4F4,
};
const union AffineAnimCmd gUnknown_08595FC0[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 64),
AFFINEANIMCMD_FRAME(0xFFFA, 0xFFFA, 0, 8),
AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 8),
AFFINEANIMCMD_JUMP(2),
};
const union AffineAnimCmd *const gUnknown_08595FE8[] =
{
gUnknown_08595FC0,
};
const struct SpriteTemplate gUnknown_08595FEC =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595FE8,
.callback = sub_810D608,
};
const struct SpriteTemplate gUnknown_08596004 =
{
.tileTag = ANIM_TAG_FLAT_ROCK,
.paletteTag = ANIM_TAG_FLAT_ROCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D714,
};
const struct SpriteTemplate gUnknown_0859601C =
{
.tileTag = ANIM_TAG_METEOR,
.paletteTag = ANIM_TAG_METEOR,
.oam = &gUnknown_0852491C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D874,
};
const struct SpriteTemplate gUnknown_08596034 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D984,
};
const union AnimCmd gUnknown_0859604C[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859605C[] =
{
ANIMCMD_FRAME(0, 4, .vFlip = TRUE),
ANIMCMD_FRAME(16, 4, .vFlip = TRUE),
ANIMCMD_FRAME(32, 4, .vFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859606C[] =
{
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859607C[] =
{
gUnknown_0859604C,
gUnknown_0859605C,
gUnknown_0859606C,
};
const struct SpriteTemplate gUnknown_08596088 =
{
.tileTag = ANIM_TAG_PURPLE_SCRATCH,
.paletteTag = ANIM_TAG_PURPLE_SCRATCH,
.oam = &gUnknown_08524914,
.anims = gUnknown_0859607C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DA10,
};
const union AnimCmd gUnknown_085960A0[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(64, 6),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085960AC[] =
{
ANIMCMD_FRAME(0, 6, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(64, 6, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085960B8[] =
{
ANIMCMD_FRAME(0, 6, .hFlip = TRUE),
ANIMCMD_FRAME(64, 6, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085960C4[] =
{
gUnknown_085960A0,
gUnknown_085960AC,
gUnknown_085960B8,
};
const struct SpriteTemplate gUnknown_085960D0 =
{
.tileTag = ANIM_TAG_PURPLE_SWIPE,
.paletteTag = ANIM_TAG_PURPLE_SWIPE,
.oam = &gUnknown_0852491C,
.anims = gUnknown_085960C4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DA10,
};
const union AffineAnimCmd gUnknown_085960E8[] =
{
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
AFFINEANIMCMD_FRAME(0xFFE0, 0xFFE0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596100[] =
{
gUnknown_085960E8,
};
const struct SpriteTemplate gUnknown_08596104 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08596100,
.callback = sub_810DA7C,
};

438
src/fire.c Normal file
View File

@@ -0,0 +1,438 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8108EC8(struct Sprite *);
extern void sub_8108F08(struct Sprite *);
extern void sub_8108FBC(struct Sprite *);
extern void sub_8108F4C(struct Sprite *);
extern void sub_8109064(struct Sprite *);
extern void sub_810916C(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_8109198(struct Sprite *);
extern void sub_8109200(struct Sprite *);
extern void sub_810921C(struct Sprite *);
extern void sub_8109364(struct Sprite *);
extern void sub_81093A4(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern void sub_81098EC(struct Sprite *);
extern void sub_8109A10(struct Sprite *);
extern void sub_8109AFC(struct Sprite *);
extern void sub_8109CB0(struct Sprite *);
const union AnimCmd gUnknown_08595340[] =
{
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08595350[] =
{
ANIMCMD_FRAME(16, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(48, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595360[] =
{
gUnknown_08595340,
gUnknown_08595350,
};
const struct SpriteTemplate gUnknown_08595368 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595360,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108EC8,
};
const struct SpriteTemplate gUnknown_08595380 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595360,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F08,
};
const union AnimCmd gUnknown_08595398[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_FRAME(80, 3),
ANIMCMD_FRAME(96, 3),
ANIMCMD_FRAME(112, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085953BC[] =
{
gUnknown_08595398,
};
const union AnimCmd gUnknown_085953C0[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085953D8[] =
{
gUnknown_085953C0,
};
const union AffineAnimCmd gUnknown_085953DC[] =
{
AFFINEANIMCMD_FRAME(0x32, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x20, 0x0, 0, 7),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085953F4[] =
{
gUnknown_085953DC,
};
const struct SpriteTemplate gUnknown_085953F8 =
{
.tileTag = ANIM_TAG_FIRE,
.paletteTag = ANIM_TAG_FIRE,
.oam = &gUnknown_08524974,
.anims = gUnknown_085953BC,
.images = NULL,
.affineAnims = gUnknown_085953F4,
.callback = sub_8108FBC,
};
const struct SpriteTemplate gUnknown_08595410 =
{
.tileTag = ANIM_TAG_FIRE,
.paletteTag = ANIM_TAG_FIRE,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108FBC,
};
const struct SpriteTemplate gUnknown_08595428 =
{
.tileTag = ANIM_TAG_FIRE_PLUME,
.paletteTag = ANIM_TAG_FIRE_PLUME,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953D8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F4C,
};
const struct SpriteTemplate gUnknown_08595440 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953D8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F4C,
};
const union AnimCmd gUnknown_08595458[] =
{
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595468[] =
{
gUnknown_08595458,
};
const struct SpriteTemplate gUnknown_0859546C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595468,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109064,
};
const union AffineAnimCmd gUnknown_08595484[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
AFFINEANIMCMD_FRAME(0x2, 0x2, 10, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_0859549C[] =
{
gUnknown_08595484,
};
const struct SpriteTemplate gUnknown_085954A0 =
{
.tileTag = ANIM_TAG_SUNLIGHT,
.paletteTag = ANIM_TAG_SUNLIGHT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859549C,
.callback = sub_810916C,
};
const union AnimCmd gUnknown_085954B8[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085954D0[] =
{
gUnknown_085954B8,
};
const struct SpriteTemplate gEmberSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const struct SpriteTemplate gEmberFlareSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109198,
};
const struct SpriteTemplate gUnknown_08595504 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109200,
};
const struct SpriteTemplate gUnknown_0859551C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810921C,
};
const union AnimCmd gUnknown_08595534[] =
{
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595540[] =
{
gUnknown_08595534,
};
const union AffineAnimCmd gUnknown_08595544[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595554[] =
{
AFFINEANIMCMD_FRAME(0xA0, 0xA0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595564[] =
{
gUnknown_08595544,
gUnknown_08595554,
};
const struct SpriteTemplate gUnknown_0859556C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595540,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109364,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8595584 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81093A4,
};
const struct SpriteTemplate gUnknown_0859559C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A8EE4,
};
const struct SpriteTemplate gUnknown_085955B4 =
{
.tileTag = ANIM_TAG_WARM_ROCK,
.paletteTag = ANIM_TAG_WARM_ROCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81098EC,
};
// gHeatedRockCoords
const s16 gUnknown_085955CC[][2] =
{
{-2, -5},
{-1, -1},
{ 3, -6},
{ 4, -2},
{ 2, -8},
{-5, -5},
{ 4, -7},
};
const struct SpriteTemplate gUnknown_085955E8 =
{
.tileTag = ANIM_TAG_WARM_ROCK,
.paletteTag = ANIM_TAG_WARM_ROCK,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109A10,
};
const union AnimCmd gUnknown_08595600[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(12, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08595614[] =
{
ANIMCMD_FRAME(16, 5),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859561C[] =
{
ANIMCMD_FRAME(20, 5),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595624[] =
{
ANIMCMD_FRAME(20, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859562C[] =
{
gUnknown_08595600,
gUnknown_08595614,
gUnknown_0859561C,
gUnknown_08595624,
};
const struct SpriteTemplate gUnknown_0859563C =
{
.tileTag = ANIM_TAG_WISP_ORB,
.paletteTag = ANIM_TAG_WISP_ORB,
.oam = &gUnknown_0852490C,
.anims = gUnknown_0859562C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109AFC,
};
const union AnimCmd gUnknown_08595654[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595668[] =
{
gUnknown_08595654,
};
const struct SpriteTemplate gUnknown_0859566C =
{
.tileTag = ANIM_TAG_WISP_FIRE,
.paletteTag = ANIM_TAG_WISP_FIRE,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595668,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109CB0,
};
const s8 gUnknown_08595684[16] =
{
-1, -1, 0, 1, 1, 0, 0, -1, -1, 1, 1, 0, 0, -1, 0, 1,
};
const s8 gUnknown_08595694[16] =
{
-1, 0, 1, 0, -1, 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1,
};

328
src/flying.c Normal file
View File

@@ -0,0 +1,328 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810DE70(struct Sprite *);
extern void sub_810DFA8(struct Sprite *);
extern void sub_810E044(struct Sprite *);
extern void sub_810E13C(struct Sprite *);
extern void sub_810E1C8(struct Sprite *);
extern void sub_810E314(struct Sprite *);
extern void sub_810EA4C(struct Sprite *);
extern void sub_810EAA0(struct Sprite *);
extern void sub_810EC34(struct Sprite *);
extern void sub_810EC94(struct Sprite *);
extern void sub_810ED28(struct Sprite *);
extern void sub_810EE14(struct Sprite *);
extern void sub_810EEF8(struct Sprite *);
extern void sub_810F004(struct Sprite *);
extern void sub_810F084(struct Sprite *);
const struct SpriteTemplate gUnknown_08596270 =
{
.tileTag = ANIM_TAG_GUST,
.paletteTag = ANIM_TAG_GUST,
.oam = &gUnknown_0852495C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DE70,
};
const union AffineAnimCmd gUnknown_08596288[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xA, 0x0, 0, 24),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085962A0[] =
{
gUnknown_08596288,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85962A4 =
{
.tileTag = ANIM_TAG_GUST,
.paletteTag = ANIM_TAG_GUST,
.oam = &gUnknown_085249BC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085962A0,
.callback = sub_810DFA8,
};
const union AnimCmd gUnknown_085962BC[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
ANIMCMD_FRAME(0, 3, .vFlip = TRUE),
ANIMCMD_FRAME(0, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085962D0[] =
{
gUnknown_085962BC,
};
const struct SpriteTemplate gUnknown_085962D4 =
{
.tileTag = ANIM_TAG_AIR_WAVE_2,
.paletteTag = ANIM_TAG_AIR_WAVE_2,
.oam = &gUnknown_08524934,
.anims = gUnknown_085962D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810E044,
};
const union AffineAnimCmd gUnknown_085962EC[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596314[] =
{
gUnknown_085962EC,
};
const union AffineAnimCmd gUnknown_08596318[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 50, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596328[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -40, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596338[] =
{
gUnknown_08596318,
gUnknown_08596328,
};
const struct SpriteTemplate gUnknown_08596340 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596314,
.callback = sub_810E13C,
};
const struct SpriteTemplate gUnknown_08596358 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_0852497C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596338,
.callback = sub_810E1C8,
};
const union AnimCmd gUnknown_08596370[] =
{
ANIMCMD_FRAME(0, 0),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596378[] =
{
ANIMCMD_FRAME(16, 0, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596380[] =
{
gUnknown_08596370,
gUnknown_08596378,
};
const struct SpriteTemplate gUnknown_08596388 =
{
.tileTag = ANIM_TAG_WHITE_FEATHER,
.paletteTag = ANIM_TAG_WHITE_FEATHER,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596380,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810E314,
};
const struct SpriteTemplate gUnknown_085963A0 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EA4C,
};
const union AnimCmd gUnknown_085963B8[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(8, 1),
ANIMCMD_FRAME(16, 1),
ANIMCMD_FRAME(8, 1, .hFlip = TRUE),
ANIMCMD_FRAME(0, 1, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085963D0[] =
{
gUnknown_085963B8,
};
const struct SpriteTemplate gUnknown_085963D4 =
{
.tileTag = ANIM_TAG_WHIRLWIND_LINES,
.paletteTag = ANIM_TAG_WHIRLWIND_LINES,
.oam = &gUnknown_08524934,
.anims = gUnknown_085963D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EAA0,
};
const union AffineAnimCmd gUnknown_085963EC[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFEC, 0x0, 0, 7),
AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, 0, 5),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859641C[] =
{
gUnknown_085963EC,
};
const struct SpriteTemplate gUnknown_08596420 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859641C,
.callback = sub_810EC34,
};
const union AffineAnimCmd gUnknown_08596438[] =
{
AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596448[] =
{
gUnknown_08596438,
};
const struct SpriteTemplate gUnknown_0859644C =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596448,
.callback = sub_810EC94,
};
const union AffineAnimCmd gUnknown_08596464[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859648C[] =
{
gUnknown_08596464,
};
const struct SpriteTemplate gUnknown_08596490 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859648C,
.callback = sub_810ED28,
};
const union AffineAnimCmd gUnknown_085964A8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x0, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x20, 0, 12),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 11),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085964C8[] =
{
gUnknown_085964A8,
};
const struct SpriteTemplate gUnknown_085964CC =
{
.tileTag = ANIM_TAG_SPLASH,
.paletteTag = ANIM_TAG_SPLASH,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EE14,
};
const struct SpriteTemplate gUnknown_085964E4 =
{
.tileTag = ANIM_TAG_SWEAT_BEAD,
.paletteTag = ANIM_TAG_SWEAT_BEAD,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EEF8,
};
const struct SpriteTemplate gUnknown_085964FC =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F004,
};
const struct SpriteTemplate gUnknown_08596514 =
{
.tileTag = ANIM_TAG_BIRD,
.paletteTag = ANIM_TAG_BIRD,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F084,
};

186
src/ghost.c Normal file
View File

@@ -0,0 +1,186 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_811160C(struct Sprite *);
extern void sub_81117F4(struct Sprite *);
extern void sub_81119E0(struct Sprite *);
extern void sub_8111B9C(struct Sprite *);
extern void sub_8112264(struct Sprite *);
extern void sub_81129F0(struct Sprite *);
extern void sub_8112B78(struct Sprite *);
extern void sub_8112E9C(struct Sprite *);
extern void sub_8112F60(struct Sprite *);
const union AffineAnimCmd gUnknown_08596CF8[] =
{
AFFINEANIMCMD_FRAME(0x1E, 0x1E, 10, 5),
AFFINEANIMCMD_FRAME(0xFFE2, 0xFFE2, 10, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596D10[] =
{
gUnknown_08596CF8,
};
const struct SpriteTemplate gUnknown_08596D14 =
{
.tileTag = ANIM_TAG_YELLOW_BALL,
.paletteTag = ANIM_TAG_YELLOW_BALL,
.oam = &gUnknown_085249CC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596D10,
.callback = sub_811160C,
};
const struct SpriteTemplate gUnknown_08596D2C =
{
.tileTag = ANIM_TAG_YELLOW_BALL,
.paletteTag = ANIM_TAG_YELLOW_BALL,
.oam = &gUnknown_08524A2C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81117F4,
};
const union AffineAnimCmd gUnknown_08596D44[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596D54[] =
{
gUnknown_08596D44,
};
const struct SpriteTemplate gUnknown_08596D58 =
{
.tileTag = ANIM_TAG_SHADOW_BALL,
.paletteTag = ANIM_TAG_SHADOW_BALL,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596D54,
.callback = sub_81119E0,
};
const union AnimCmd gUnknown_08596D70[] =
{
ANIMCMD_FRAME(0, 2),
ANIMCMD_FRAME(8, 2),
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(24, 2),
ANIMCMD_FRAME(32, 2),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596D88[] =
{
gUnknown_08596D70,
};
const struct SpriteTemplate gUnknown_08596D8C =
{
.tileTag = ANIM_TAG_LICK,
.paletteTag = ANIM_TAG_LICK,
.oam = &gUnknown_08524954,
.anims = gUnknown_08596D88,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8111B9C,
};
const union AffineAnimCmd gUnknown_08596DA4[] =
{
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596DB4[] =
{
gUnknown_08596DA4,
};
const struct SpriteTemplate gUnknown_08596DB8 =
{
.tileTag = ANIM_TAG_WHITE_SHADOW,
.paletteTag = ANIM_TAG_WHITE_SHADOW,
.oam = &gUnknown_08524A5C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112264,
};
const struct SpriteTemplate gUnknown_08596DD0 =
{
.tileTag = ANIM_TAG_NAIL,
.paletteTag = ANIM_TAG_NAIL,
.oam = &gUnknown_08524A54,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81129F0,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596DE8 =
{
.tileTag = ANIM_TAG_GHOSTLY_SPIRIT,
.paletteTag = ANIM_TAG_GHOSTLY_SPIRIT,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112B78,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E00 =
{
.tileTag = ANIM_TAG_DEVIL,
.paletteTag = ANIM_TAG_DEVIL,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112B78,
};
const union AnimCmd gUnknown_08596E18[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(8, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(24, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596E2C[] =
{
gUnknown_08596E18,
};
const struct SpriteTemplate gUnknown_08596E30 =
{
.tileTag = ANIM_TAG_PURPLE_FLAME,
.paletteTag = ANIM_TAG_PURPLE_FLAME,
.oam = &gUnknown_08524A74,
.anims = gUnknown_08596E2C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112E9C,
};
const struct SpriteTemplate gUnknown_08596E48 =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112F60,
};

121
src/ground.c Normal file
View File

@@ -0,0 +1,121 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8114994(struct Sprite *);
extern void sub_8114A7C(struct Sprite *);
extern void sub_8114AF0(struct Sprite *);
extern void sub_8114AF0(struct Sprite *);
extern void sub_8114B80(struct Sprite *);
extern void sub_81151A0(struct Sprite *);
extern void sub_8115244(struct Sprite *);
const union AffineAnimCmd gUnknown_08597150[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 15, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08597160[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08597170[] =
{
gUnknown_08597150,
};
const union AffineAnimCmd *const gUnknown_08597174[] =
{
gUnknown_08597160,
};
const struct SpriteTemplate gUnknown_08597178 =
{
.tileTag = ANIM_TAG_BONE,
.paletteTag = ANIM_TAG_BONE,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597170,
.callback = sub_8114994,
};
const struct SpriteTemplate gUnknown_08597190 =
{
.tileTag = ANIM_TAG_BONE,
.paletteTag = ANIM_TAG_BONE,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597174,
.callback = sub_8114A7C,
};
const struct SpriteTemplate gUnknown_085971A8 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114AF0,
};
const union AnimCmd gUnknown_085971C0[] =
{
ANIMCMD_FRAME(1, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085971C8[] =
{
gUnknown_085971C0,
};
const struct SpriteTemplate gUnknown_085971CC =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_0852490C,
.anims = gUnknown_085971C8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114AF0,
};
const struct SpriteTemplate gUnknown_085971E4 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114B80,
};
const struct SpriteTemplate gUnknown_085971FC =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81151A0,
};
const struct SpriteTemplate gUnknown_08597214 =
{
.tileTag = ANIM_TAG_DIRT_MOUND,
.paletteTag = ANIM_TAG_DIRT_MOUND,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8115244,
};

491
src/ice.c Normal file
View File

@@ -0,0 +1,491 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810B6C4(struct Sprite *);
extern void sub_810B8AC(struct Sprite *);
extern void sub_810B8EC(struct Sprite *);
extern void sub_810B974(struct Sprite *);
extern void sub_810BA24(struct Sprite *);
extern void sub_810BC94(struct Sprite *);
extern void sub_810BE48(struct Sprite *);
extern void sub_810BED0(struct Sprite *);
extern void sub_810C2F0(struct Sprite *);
extern void sub_810C560(struct Sprite *);
extern void sub_810CB58(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern void unc_080B06FC(struct Sprite *);
extern void sub_810CD4C(struct Sprite *);
const union AnimCmd gUnknown_08595A48[] =
{
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(1, 5, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595A54[] =
{
gUnknown_08595A48,
};
// unknown sprite template
const struct SpriteTemplate gUnknown_08595A58 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B6C4,
};
const union AnimCmd gUnknown_08595A70[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A78[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A80[] =
{
ANIMCMD_FRAME(6, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A88[] =
{
ANIMCMD_FRAME(7, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A90[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A98[] =
{
ANIMCMD_FRAME(12, 6),
ANIMCMD_FRAME(13, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595AA4[] =
{
gUnknown_08595A70,
};
const union AnimCmd *const gUnknown_08595AA8[] =
{
gUnknown_08595A78,
};
const union AnimCmd *const gUnknown_08595AAC[] =
{
gUnknown_08595A80,
};
const union AnimCmd *const gUnknown_08595AB0[] =
{
gUnknown_08595A88,
};
const union AnimCmd *const gUnknown_08595AB4[] =
{
gUnknown_08595A90,
};
const union AnimCmd *const gUnknown_08595AB8[] =
{
gUnknown_08595A98,
};
const union AffineAnimCmd gUnknown_08595ABC[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 40, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595ACC[] =
{
gUnknown_08595ABC,
};
const struct SpriteTemplate gUnknown_08595AD0 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524B24,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595ACC,
.callback = sub_810B8AC,
};
const struct SpriteTemplate gUnknown_08595AE8 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A24,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B8AC,
};
const union AffineAnimCmd gUnknown_08595B00[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595B10[] =
{
gUnknown_08595B00,
};
const struct SpriteTemplate gUnknown_08595B14 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524AC4,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595B10,
.callback = sub_810B8EC,
};
const struct SpriteTemplate gUnknown_08595B2C =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A24,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B8EC,
};
const union AffineAnimCmd gUnknown_08595B44[] =
{
AFFINEANIMCMD_FRAME(0xCE, 0xCE, 0, 0),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 6),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595B64[] =
{
gUnknown_08595B44,
};
const struct SpriteTemplate gUnknown_08595B68 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524AC4,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595B64,
.callback = sub_810B974,
};
const struct SpriteTemplate gUnknown_08595B80 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A84,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gUnknown_08595B64,
.callback = sub_810B974,
};
const struct SpriteTemplate gUnknown_08595B98 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BA24,
};
const struct SpriteTemplate gUnknown_08595BB0 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08595AB4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BC94,
};
const struct SpriteTemplate gUnknown_08595BC8 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BC94,
};
const union AnimCmd gUnknown_08595BE0[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(6, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595C00[] =
{
gUnknown_08595BE0,
};
const struct SpriteTemplate gUnknown_08595C04 =
{
.tileTag = ANIM_TAG_ICE_SPIKES,
.paletteTag = ANIM_TAG_ICE_SPIKES,
.oam = &gUnknown_08524A64,
.anims = gUnknown_08595C00,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BE48,
};
const union AnimCmd gUnknown_08595C1C[] =
{
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595C28[] =
{
gUnknown_08595C1C,
};
const struct SpriteTemplate gUnknown_08595C2C =
{
.tileTag = ANIM_TAG_MIST_CLOUD,
.paletteTag = ANIM_TAG_MIST_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BED0,
};
const struct SpriteTemplate gUnknown_08595C44 =
{
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BED0,
};
const u8 gUnknown_08595C5C[] =
{
0, 1, 2, 2, 2, 2, 3, 4, 4, 4, 5, 6, 6, 6, 6, 7, 8, 8, 8, 9,
};
const struct SpriteTemplate gUnknown_08595C70 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810C2F0,
};
const u8 gUnknown_08595C88[] =
{
0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5,
};
const struct SpriteTemplate gUnknown_08595C9C =
{
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810C560,
};
const u8 gUnknown_08595CB4[][4] =
{
{0x64, 0xE0, 0x01, 0x20},
{0x55, 0xE0, 0x01, 0x00},
{0xF2, 0xE0, 0x11, 0x10},
{0x42, 0xE0, 0x21, 0x10},
{0xB6, 0xE0, 0x31, 0x00},
{0x3C, 0xE0, 0x01, 0x20},
{0xD6, 0xE0, 0x11, 0x00},
{0x71, 0xE0, 0x01, 0x10},
{0xD2, 0xE0, 0x31, 0x10},
{0x26, 0xE0, 0x21, 0x00},
};
const union AffineAnimCmd gUnknown_08595CDC[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595CEC[] =
{
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595CFC[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595D0C[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595D1C[] =
{
gUnknown_08595CDC,
gUnknown_08595CEC,
gUnknown_08595CFC,
};
const union AffineAnimCmd *const gUnknown_08595D28[] =
{
gUnknown_08595D0C,
};
const struct SpriteTemplate gUnknown_08595D2C =
{
.tileTag = ANIM_TAG_HAIL,
.paletteTag = ANIM_TAG_HAIL,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595D1C,
.callback = sub_810CB58,
};
const struct SpriteTemplate gUnknown_08595D44 =
{
.tileTag = ANIM_TAG_HAIL,
.paletteTag = ANIM_TAG_HAIL,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595D28,
.callback = sub_80A8EE4,
};
const union AnimCmd gUnknown_08595D5C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595D64[] =
{
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595D78[] =
{
gUnknown_08595D5C,
gUnknown_08595D64,
};
const union AffineAnimCmd gUnknown_08595D80[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595D90[] =
{
AFFINEANIMCMD_FRAME(0x118, 0x118, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DA0[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DB0[] =
{
AFFINEANIMCMD_FRAME(0x180, 0x180, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DC0[] =
{
AFFINEANIMCMD_FRAME(0x1C0, 0x1C0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595DD0[] =
{
gUnknown_08595D80,
gUnknown_08595D90,
gUnknown_08595DA0,
gUnknown_08595DB0,
gUnknown_08595DC0,
};
const struct SpriteTemplate gUnknown_08595DE4 =
{
.tileTag = ANIM_TAG_ICE_CHUNK,
.paletteTag = ANIM_TAG_ICE_CHUNK,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595D78,
.images = NULL,
.affineAnims = gUnknown_08595DD0,
.callback = unc_080B06FC,
};
const struct SpriteTemplate gUnknown_08595DFC =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CD4C,
};

View File

@@ -1542,8 +1542,8 @@ static void Task_IntroLoadPart1Graphics3(u8 taskId)
LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000));
LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000));
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
}

View File

@@ -268,7 +268,7 @@ const u8 gUnknown_08614164[][3] = {
const struct WindowTemplate gUnknown_08614174[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -277,7 +277,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x27,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -286,7 +286,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x117,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 1,
.width = 8,
@@ -295,7 +295,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x1A1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 5,
@@ -304,7 +304,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x16B,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 7,
.tilemapTop = 13,
.width = 4,
@@ -313,7 +313,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x189,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -327,7 +327,7 @@ const struct WindowTemplate gUnknown_08614174[] =
const struct WindowTemplate gUnknown_086141AC[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@@ -336,7 +336,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@@ -345,7 +345,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@@ -354,7 +354,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@@ -363,7 +363,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -372,7 +372,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x1B1,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,
@@ -381,7 +381,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -390,7 +390,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@@ -399,7 +399,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@@ -408,7 +408,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x245,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,

View File

@@ -146,7 +146,7 @@ static const struct BgTemplate sUnknown_0859F290[] = {
static const struct WindowTemplate sUnknown_0859F29C[] = {
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 26,

View File

@@ -165,7 +165,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// No saved game
// NEW GAME
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN0,
.width = MENU_WIDTH,
@@ -175,7 +175,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTIONS
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN1,
.width = MENU_WIDTH,
@@ -186,7 +186,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// Has saved game
// CONTINUE
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN2,
.width = MENU_WIDTH,
@@ -196,7 +196,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// NEW GAME
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN3,
.width = MENU_WIDTH,
@@ -206,7 +206,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY GIFT
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN4,
.width = MENU_WIDTH,
@@ -216,7 +216,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY EVENTS
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN5,
.width = MENU_WIDTH,
@@ -226,7 +226,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN6,
.width = MENU_WIDTH,
@@ -236,7 +236,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// Error message window
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT_ERROR,
.tilemapTop = MENU_TOP_ERROR,
.width = MENU_WIDTH_ERROR,
@@ -250,7 +250,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
static const struct WindowTemplate gUnknown_082FF080[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -259,7 +259,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 5,
.width = 6,
@@ -268,7 +268,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 0x6D
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 9,
@@ -323,7 +323,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_PlayerShrink[] = {
AFFINEANIMCMD_END
};
static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
{
sSpriteAffineAnim_PlayerShrink
};
@@ -2083,21 +2083,21 @@ static void DrawMainMenuWindowBorder(const struct WindowTemplate *template, u16
u16 sp14 = 7 + baseTileNum;
u16 r6 = 8 + baseTileNum;
FillBgTilemapBufferRect(template->priority, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
FillBgTilemapBufferRect(template->priority, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->priority, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->priority, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
FillBgTilemapBufferRect(template->priority, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
CopyBgTilemapBufferToVram(template->priority);
FillBgTilemapBufferRect(template->bg, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
FillBgTilemapBufferRect(template->bg, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->bg, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->bg, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
FillBgTilemapBufferRect(template->bg, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
CopyBgTilemapBufferToVram(template->bg);
}
static void ClearMainMenuWindowTilemap(const struct WindowTemplate *template)
{
FillBgTilemapBufferRect(template->priority, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
CopyBgTilemapBufferToVram(template->priority);
FillBgTilemapBufferRect(template->bg, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
CopyBgTilemapBufferToVram(template->bg);
}
static void NewGameBirchSpeech_ClearGenderWindowTilemap(u8 a, u8 b, u8 c, u8 d, u8 e, u8 unused)

View File

@@ -541,7 +541,7 @@ static void LoadMapNamePopUpWindowBg(void)
}
popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId];
LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_PRIORITY), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
CallWindowFunction(popupWindowId, sub_80D4A78);
PutWindowTilemap(popupWindowId);
if(gMapHeader.weather == WEATHER_BUBBLES)

View File

@@ -66,7 +66,7 @@ static const u8 gUnknown_0860F094[] = { 8, 4, 1 };
static const struct WindowTemplate gUnknown_0860F098[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -79,7 +79,7 @@ static const struct WindowTemplate gUnknown_0860F098[] =
static const struct WindowTemplate gUnknown_0860F0A8 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -782,9 +782,9 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile)
memset(&window, 0, sizeof(window));
if (bg > 3)
window.priority = 0;
window.bg = 0;
else
window.priority = bg;
window.bg = bg;
window.tilemapTop = yPos;
window.height = 2;
@@ -1147,7 +1147,7 @@ void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const stru
void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock)
{
template->priority = bg;
template->bg = bg;
template->tilemapLeft = left;
template->tilemapTop = top;
template->width = width;

View File

@@ -43,7 +43,7 @@ static const struct BgTemplate sBgTemplates[] =
static const struct WindowTemplate sWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 15,
.width = 22,
@@ -52,7 +52,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 20
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 7,
.tilemapTop = 6,
.width = 16,

View File

@@ -103,7 +103,7 @@ static const struct BgTemplate gUnknown_0858BE00[] =
static const struct WindowTemplate gUnknown_0858BE10[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@@ -112,7 +112,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x0C8
},
{
.priority = 3,
.bg = 3,
.tilemapLeft = 8,
.tilemapTop = 6,
.width = 17,
@@ -130,7 +130,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
.priority = 3,
.bg = 3,
.tilemapLeft = 8,
.tilemapTop = 4,
.width = 17,
@@ -139,7 +139,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x052
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 30,

233
src/normal.c Normal file
View File

@@ -0,0 +1,233 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_811572C(struct Sprite *);
extern void sub_81157FC(struct Sprite *);
extern void sub_81158A4(struct Sprite *);
extern void sub_81159B4(struct Sprite *);
extern void sub_81160A4(struct Sprite *);
extern void sub_8116388(struct Sprite *);
extern void sub_8116420(struct Sprite *);
extern void sub_8116458(struct Sprite *);
extern void sub_81164F0(struct Sprite *);
extern void sub_8116560(struct Sprite *);
extern void sub_81165A8(struct Sprite *);
extern void sub_81163D0(struct Sprite *);
const union AnimCmd gUnknown_0859722C[] =
{
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(4, 8),
ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08597240[] =
{
ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
ANIMCMD_FRAME(4, 8),
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08597254[] =
{
gUnknown_0859722C,
gUnknown_08597240,
};
const struct SpriteTemplate gConfusionDuckSpriteTemplate =
{
.tileTag = ANIM_TAG_DUCK,
.paletteTag = ANIM_TAG_DUCK,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08597254,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811572C,
};
const struct SpriteTemplate gSimplePaletteBlendSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81157FC,
};
const struct SpriteTemplate gComplexPaletteBlendSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81158A4,
};
const union AnimCmd gUnknown_085972A4[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085972BC[] =
{
gUnknown_085972A4,
};
const struct SpriteTemplate gUnknown_085972C0 =
{
.tileTag = ANIM_TAG_SPARKLE_4,
.paletteTag = ANIM_TAG_SPARKLE_4,
.oam = &gUnknown_08524914,
.anims = gUnknown_085972BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81159B4,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85972D8 =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81160A4,
};
const union AffineAnimCmd gUnknown_085972F0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597300[] =
{
AFFINEANIMCMD_FRAME(0xD8, 0xD8, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597318[] =
{
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597330[] =
{
AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08597348[] =
{
gUnknown_085972F0,
gUnknown_08597300,
gUnknown_08597318,
gUnknown_08597330,
};
const struct SpriteTemplate gBasicHitSplatSpriteTemplate =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116388,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8597370 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116420,
};
const struct SpriteTemplate gUnknown_08597388 =
{
.tileTag = ANIM_TAG_WATER_IMPACT,
.paletteTag = ANIM_TAG_WATER_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116388,
};
const struct SpriteTemplate gUnknown_085973A0 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116458,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85973B8 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81164F0,
};
const struct SpriteTemplate gUnknown_085973D0 =
{
.tileTag = ANIM_TAG_CROSS_IMPACT,
.paletteTag = ANIM_TAG_CROSS_IMPACT,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8116560,
};
const struct SpriteTemplate gUnknown_085973E8 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81165A8,
};
const struct SpriteTemplate gUnknown_08597400 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81163D0,
};

View File

@@ -92,7 +92,7 @@ static const u8 *const sOptionMenuItemsNames[MENUITEM_COUNT] =
static const struct WindowTemplate sOptionMenuWinTemplates[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@@ -101,7 +101,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
.baseBlock = 2
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 26,

View File

@@ -185,7 +185,7 @@ const struct MenuAction gMailboxMailOptions[] =
static const struct WindowTemplate gUnknown_085DFF24[3] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@@ -194,7 +194,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@@ -203,7 +203,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@@ -243,7 +243,7 @@ static const struct ListMenuTemplate gUnknown_085DFF44 =
static const struct WindowTemplate gUnknown_085DFF5C[5] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 13,
@@ -252,7 +252,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0001
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 13,
@@ -261,7 +261,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x00EB
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 8,
.width = 3,
@@ -270,7 +270,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0153
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@@ -279,7 +279,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0139
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 9,
.width = 6,
@@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
static const struct WindowTemplate gUnknown_085DFF84 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 9,
.tilemapTop = 7,
.width = 5,

185
src/poison.c Normal file
View File

@@ -0,0 +1,185 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_80A77C8(struct Sprite *);
extern void sub_810DBAC(struct Sprite *);
extern void sub_810DC2C(struct Sprite *);
extern void sub_810DCD0(struct Sprite *);
extern void sub_810DD50(struct Sprite *);
extern void sub_810DDC4(struct Sprite *);
extern void sub_810DDC4(struct Sprite *);
extern const union AnimCmd *const gUnknown_08595200[];
const union AnimCmd gUnknown_0859611C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(24, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596130[] =
{
gUnknown_0859611C,
};
const struct SpriteTemplate gUnknown_08596134 =
{
.tileTag = ANIM_TAG_TOXIC_BUBBLE,
.paletteTag = ANIM_TAG_TOXIC_BUBBLE,
.oam = &gUnknown_08524954,
.anims = gUnknown_08596130,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A77C8,
};
const union AnimCmd gUnknown_0859614C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596154[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859615C[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596164[] =
{
gUnknown_0859614C,
};
const union AnimCmd *const gUnknown_08596168[] =
{
gUnknown_08596154,
};
const union AnimCmd *const gUnknown_0859616C[] =
{
gUnknown_0859615C,
};
const union AffineAnimCmd gUnknown_08596170[] =
{
AFFINEANIMCMD_FRAME(0x160, 0x160, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08596190[] =
{
AFFINEANIMCMD_FRAME(0xEC, 0xEC, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085961A0[] =
{
gUnknown_08596170,
};
const union AffineAnimCmd *const gUnknown_085961A4[] =
{
gUnknown_08596190,
};
const struct SpriteTemplate gUnknown_085961A8 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_085961A0,
.callback = sub_810DBAC,
};
const struct SpriteTemplate gUnknown_085961C0 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_085961A0,
.callback = sub_810DC2C,
};
const struct SpriteTemplate gUnknown_085961D8 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_0852496C,
.anims = gUnknown_0859616C,
.images = NULL,
.affineAnims = gUnknown_085961A4,
.callback = sub_810DCD0,
};
const union AffineAnimCmd gUnknown_085961F0[] =
{
AFFINEANIMCMD_FRAME(0xFFF0, 0x10, 0, 6),
AFFINEANIMCMD_FRAME(0x10, 0xFFF0, 0, 6),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596208[] =
{
gUnknown_085961F0,
};
const struct SpriteTemplate gUnknown_0859620C =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596168,
.images = NULL,
.affineAnims = gUnknown_08596208,
.callback = sub_810DD50,
};
const union AffineAnimCmd gUnknown_08596224[] =
{
AFFINEANIMCMD_FRAME(0x9C, 0x9C, 0, 0),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 20),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859623C[] =
{
gUnknown_08596224,
};
const struct SpriteTemplate gPoisonBubbleSpriteTemplate =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_0852496C,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_0859623C,
.callback = sub_810DDC4,
};
const struct SpriteTemplate gWaterBubbleSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_08595200,
.images = NULL,
.affineAnims = gUnknown_0859623C,
.callback = sub_810DDC4,
};

View File

@@ -295,7 +295,7 @@ static const struct Pokeblock sFavoritePokeblocksTable[] =
static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -304,7 +304,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x1E
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,
@@ -313,7 +313,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x30
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 13,
.width = 5,
@@ -322,7 +322,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x12C
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 5,
@@ -331,7 +331,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x136
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 17,
.width = 5,
@@ -340,7 +340,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x140
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 13,
.width = 5,
@@ -349,7 +349,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x14A
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 15,
.width = 5,
@@ -358,7 +358,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x154
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 17,
.width = 2,
@@ -367,7 +367,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x15E
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 7,
.tilemapTop = 5,
.width = 6,
@@ -376,7 +376,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x162
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 7,
.tilemapTop = 7,
.width = 6,
@@ -385,7 +385,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x186
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -398,7 +398,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
static const struct WindowTemplate sTossPkblockWindowTemplate =
{
.priority = 1,
.bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,

View File

@@ -6,6 +6,8 @@
#include "task.h"
#include "util.h"
#include "constants/rgb.h"
#include "constants/battle_anim.h"
#include "constants/species.h"
struct UnkAnimStruct
{
@@ -183,418 +185,392 @@ static IWRAM_DATA bool32 sUnknown_03001274;
// const rom data
static const u8 sSpeciesToBackAnimSet[] =
{
0x00, // SPECIES_NONE
0x13, // SPECIES_BULBASAUR
0x02, // SPECIES_IVYSAUR
0x08, // SPECIES_VENUSAUR
0x12, // SPECIES_CHARMANDER
0x15, // SPECIES_CHARMELEON
0x17, // SPECIES_CHARIZARD
0x12, // SPECIES_SQUIRTLE
0x12, // SPECIES_WARTORTLE
0x19, // SPECIES_BLASTOISE
0x02, // SPECIES_CATERPIE
0x13, // SPECIES_METAPOD
0x11, // SPECIES_BUTTERFREE
0x02, // SPECIES_WEEDLE
0x13, // SPECIES_KAKUNA
0x01, // SPECIES_BEEDRILL
0x0f, // SPECIES_PIDGEY
0x15, // SPECIES_PIDGEOTTO
0x0f, // SPECIES_PIDGEOT
0x0a, // SPECIES_RATTATA
0x0a, // SPECIES_RATICATE
0x0f, // SPECIES_SPEAROW
0x15, // SPECIES_FEAROW
0x0f, // SPECIES_EKANS
0x09, // SPECIES_ARBOK
0x16, // SPECIES_PIKACHU
0x16, // SPECIES_RAICHU
0x12, // SPECIES_SANDSHREW
0x10, // SPECIES_SANDSLASH
0x12, // SPECIES_NIDORAN_F
0x15, // SPECIES_NIDORINA
0x09, // SPECIES_NIDOQUEEN
0x12, // SPECIES_NIDORAN_M
0x15, // SPECIES_NIDORINO
0x09, // SPECIES_NIDOKING
0x13, // SPECIES_CLEFAIRY
0x13, // SPECIES_CLEFABLE
0x10, // SPECIES_VULPIX
0x01, // SPECIES_NINETALES
0x13, // SPECIES_JIGGLYPUFF
0x06, // SPECIES_WIGGLYTUFF
0x11, // SPECIES_ZUBAT
0x09, // SPECIES_GOLBAT
0x02, // SPECIES_ODDISH
0x02, // SPECIES_GLOOM
0x14, // SPECIES_VILEPLUME
0x02, // SPECIES_PARAS
0x08, // SPECIES_PARASECT
0x0a, // SPECIES_VENONAT
0x11, // SPECIES_VENOMOTH
0x09, // SPECIES_DIGLETT
0x09, // SPECIES_DUGTRIO
0x10, // SPECIES_MEOWTH
0x0f, // SPECIES_PERSIAN
0x02, // SPECIES_PSYDUCK
0x14, // SPECIES_GOLDUCK
0x10, // SPECIES_MANKEY
0x10, // SPECIES_PRIMEAPE
0x15, // SPECIES_GROWLITHE
0x15, // SPECIES_ARCANINE
0x12, // SPECIES_POLIWAG
0x09, // SPECIES_POLIWHIRL
0x0e, // SPECIES_POLIWRATH
0x14, // SPECIES_ABRA
0x14, // SPECIES_KADABRA
0x0d, // SPECIES_ALAKAZAM
0x15, // SPECIES_MACHOP
0x09, // SPECIES_MACHOKE
0x09, // SPECIES_MACHAMP
0x0b, // SPECIES_BELLSPROUT
0x0b, // SPECIES_WEEPINBELL
0x0b, // SPECIES_VICTREEBEL
0x02, // SPECIES_TENTACOOL
0x02, // SPECIES_TENTACRUEL
0x0e, // SPECIES_GEODUDE
0x08, // SPECIES_GRAVELER
0x08, // SPECIES_GOLEM
0x17, // SPECIES_PONYTA
0x15, // SPECIES_RAPIDASH
0x02, // SPECIES_SLOWPOKE
0x13, // SPECIES_SLOWBRO
0x0f, // SPECIES_MAGNEMITE
0x0f, // SPECIES_MAGNETON
0x02, // SPECIES_FARFETCHD
0x0f, // SPECIES_DODUO
0x15, // SPECIES_DODRIO
0x13, // SPECIES_SEEL
0x02, // SPECIES_DEWGONG
0x0b, // SPECIES_GRIMER
0x0c, // SPECIES_MUK
0x13, // SPECIES_SHELLDER
0x0f, // SPECIES_CLOYSTER
0x01, // SPECIES_GASTLY
0x01, // SPECIES_HAUNTER
0x14, // SPECIES_GENGAR
0x09, // SPECIES_ONIX
0x13, // SPECIES_DROWZEE
0x14, // SPECIES_HYPNO
0x0a, // SPECIES_KRABBY
0x09, // SPECIES_KINGLER
0x15, // SPECIES_VOLTORB
0x15, // SPECIES_ELECTRODE
0x02, // SPECIES_EXEGGCUTE
0x10, // SPECIES_EXEGGUTOR
0x15, // SPECIES_CUBONE
0x10, // SPECIES_MAROWAK
0x02, // SPECIES_HITMONLEE
0x0f, // SPECIES_HITMONCHAN
0x02, // SPECIES_LICKITUNG
0x06, // SPECIES_KOFFING
0x06, // SPECIES_WEEZING
0x0e, // SPECIES_RHYHORN
0x0e, // SPECIES_RHYDON
0x12, // SPECIES_CHANSEY
0x0b, // SPECIES_TANGELA
0x12, // SPECIES_KANGASKHAN
0x13, // SPECIES_HORSEA
0x11, // SPECIES_SEADRA
0x11, // SPECIES_GOLDEEN
0x11, // SPECIES_SEAKING
0x13, // SPECIES_STARYU
0x19, // SPECIES_STARMIE
0x14, // SPECIES_MR_MIME
0x0f, // SPECIES_SCYTHER
0x13, // SPECIES_JYNX
0x16, // SPECIES_ELECTABUZZ
0x17, // SPECIES_MAGMAR
0x0e, // SPECIES_PINSIR
0x0e, // SPECIES_TAUROS
0x10, // SPECIES_MAGIKARP
0x09, // SPECIES_GYARADOS
0x19, // SPECIES_LAPRAS
0x05, // SPECIES_DITTO
0x12, // SPECIES_EEVEE
0x19, // SPECIES_VAPOREON
0x16, // SPECIES_JOLTEON
0x17, // SPECIES_FLAREON
0x01, // SPECIES_PORYGON
0x13, // SPECIES_OMANYTE
0x13, // SPECIES_OMASTAR
0x13, // SPECIES_KABUTO
0x15, // SPECIES_KABUTOPS
0x15, // SPECIES_AERODACTYL
0x13, // SPECIES_SNORLAX
0x19, // SPECIES_ARTICUNO
0x16, // SPECIES_ZAPDOS
0x17, // SPECIES_MOLTRES
0x02, // SPECIES_DRATINI
0x0f, // SPECIES_DRAGONAIR
0x09, // SPECIES_DRAGONITE
0x0d, // SPECIES_MEWTWO
0x12, // SPECIES_MEW
0x12, // SPECIES_CHIKORITA
0x02, // SPECIES_BAYLEEF
0x09, // SPECIES_MEGANIUM
0x12, // SPECIES_CYNDAQUIL
0x15, // SPECIES_QUILAVA
0x17, // SPECIES_TYPHLOSION
0x15, // SPECIES_TOTODILE
0x15, // SPECIES_CROCONAW
0x09, // SPECIES_FERALIGATR
0x12, // SPECIES_SENTRET
0x10, // SPECIES_FURRET
0x11, // SPECIES_HOOTHOOT
0x0f, // SPECIES_NOCTOWL
0x0a, // SPECIES_LEDYBA
0x11, // SPECIES_LEDIAN
0x0a, // SPECIES_SPINARAK
0x02, // SPECIES_ARIADOS
0x0f, // SPECIES_CROBAT
0x0b, // SPECIES_CHINCHOU
0x16, // SPECIES_LANTURN
0x12, // SPECIES_PICHU
0x13, // SPECIES_CLEFFA
0x13, // SPECIES_IGGLYBUFF
0x13, // SPECIES_TOGEPI
0x11, // SPECIES_TOGETIC
0x12, // SPECIES_NATU
0x14, // SPECIES_XATU
0x12, // SPECIES_MAREEP
0x13, // SPECIES_FLAAFFY
0x16, // SPECIES_AMPHAROS
0x11, // SPECIES_BELLOSSOM
0x12, // SPECIES_MARILL
0x13, // SPECIES_AZUMARILL
0x02, // SPECIES_SUDOWOODO
0x10, // SPECIES_POLITOED
0x11, // SPECIES_HOPPIP
0x11, // SPECIES_SKIPLOOM
0x11, // SPECIES_JUMPLUFF
0x10, // SPECIES_AIPOM
0x13, // SPECIES_SUNKERN
0x02, // SPECIES_SUNFLORA
0x11, // SPECIES_YANMA
0x0b, // SPECIES_WOOPER
0x02, // SPECIES_QUAGSIRE
0x14, // SPECIES_ESPEON
0x14, // SPECIES_UMBREON
0x12, // SPECIES_MURKROW
0x13, // SPECIES_SLOWKING
0x01, // SPECIES_MISDREAVUS
0x14, // SPECIES_UNOWN
0x0b, // SPECIES_WOBBUFFET
0x14, // SPECIES_GIRAFARIG
0x08, // SPECIES_PINECO
0x09, // SPECIES_FORRETRESS
0x0f, // SPECIES_DUNSPARCE
0x05, // SPECIES_GLIGAR
0x09, // SPECIES_STEELIX
0x15, // SPECIES_SNUBBULL
0x09, // SPECIES_GRANBULL
0x0d, // SPECIES_QWILFISH
0x15, // SPECIES_SCIZOR
0x13, // SPECIES_SHUCKLE
0x15, // SPECIES_HERACROSS
0x0f, // SPECIES_SNEASEL
0x13, // SPECIES_TEDDIURSA
0x09, // SPECIES_URSARING
0x17, // SPECIES_SLUGMA
0x17, // SPECIES_MAGCARGO
0x0a, // SPECIES_SWINUB
0x08, // SPECIES_PILOSWINE
0x02, // SPECIES_CORSOLA
0x02, // SPECIES_REMORAID
0x05, // SPECIES_OCTILLERY
0x0f, // SPECIES_DELIBIRD
0x02, // SPECIES_MANTINE
0x15, // SPECIES_SKARMORY
0x09, // SPECIES_HOUNDOUR
0x09, // SPECIES_HOUNDOOM
0x19, // SPECIES_KINGDRA
0x15, // SPECIES_PHANPY
0x0e, // SPECIES_DONPHAN
0x01, // SPECIES_PORYGON2
0x13, // SPECIES_STANTLER
0x02, // SPECIES_SMEARGLE
0x0f, // SPECIES_TYROGUE
0x07, // SPECIES_HITMONTOP
0x02, // SPECIES_SMOOCHUM
0x08, // SPECIES_ELEKID
0x17, // SPECIES_MAGBY
0x02, // SPECIES_MILTANK
0x13, // SPECIES_BLISSEY
0x16, // SPECIES_RAIKOU
0x17, // SPECIES_ENTEI
0x19, // SPECIES_SUICUNE
0x0e, // SPECIES_LARVITAR
0x09, // SPECIES_PUPITAR
0x0e, // SPECIES_TYRANITAR
0x19, // SPECIES_LUGIA
0x17, // SPECIES_HO_OH
0x18, // SPECIES_CELEBI
0x00, // SPECIES_OLD_UNOWN_B
0x00, // SPECIES_OLD_UNOWN_C
0x00, // SPECIES_OLD_UNOWN_D
0x00, // SPECIES_OLD_UNOWN_E
0x00, // SPECIES_OLD_UNOWN_F
0x00, // SPECIES_OLD_UNOWN_G
0x00, // SPECIES_OLD_UNOWN_H
0x00, // SPECIES_OLD_UNOWN_I
0x00, // SPECIES_OLD_UNOWN_J
0x00, // SPECIES_OLD_UNOWN_K
0x00, // SPECIES_OLD_UNOWN_L
0x00, // SPECIES_OLD_UNOWN_M
0x00, // SPECIES_OLD_UNOWN_N
0x00, // SPECIES_OLD_UNOWN_O
0x00, // SPECIES_OLD_UNOWN_P
0x00, // SPECIES_OLD_UNOWN_Q
0x00, // SPECIES_OLD_UNOWN_R
0x00, // SPECIES_OLD_UNOWN_S
0x00, // SPECIES_OLD_UNOWN_T
0x00, // SPECIES_OLD_UNOWN_U
0x00, // SPECIES_OLD_UNOWN_V
0x00, // SPECIES_OLD_UNOWN_W
0x00, // SPECIES_OLD_UNOWN_X
0x00, // SPECIES_OLD_UNOWN_Y
0x00, // SPECIES_OLD_UNOWN_Z
0x10, // SPECIES_TREECKO
0x15, // SPECIES_GROVYLE
0x09, // SPECIES_SCEPTILE
0x12, // SPECIES_TORCHIC
0x10, // SPECIES_COMBUSKEN
0x17, // SPECIES_BLAZIKEN
0x02, // SPECIES_MUDKIP
0x12, // SPECIES_MARSHTOMP
0x19, // SPECIES_SWAMPERT
0x12, // SPECIES_POOCHYENA
0x08, // SPECIES_MIGHTYENA
0x0f, // SPECIES_ZIGZAGOON
0x15, // SPECIES_LINOONE
0x0b, // SPECIES_WURMPLE
0x08, // SPECIES_SILCOON
0x11, // SPECIES_BEAUTIFLY
0x08, // SPECIES_CASCOON
0x0f, // SPECIES_DUSTOX
0x02, // SPECIES_LOTAD
0x10, // SPECIES_LOMBRE
0x10, // SPECIES_LUDICOLO
0x13, // SPECIES_SEEDOT
0x09, // SPECIES_NUZLEAF
0x14, // SPECIES_SHIFTRY
0x0a, // SPECIES_NINCADA
0x01, // SPECIES_NINJASK
0x14, // SPECIES_SHEDINJA
0x12, // SPECIES_TAILLOW
0x15, // SPECIES_SWELLOW
0x13, // SPECIES_SHROOMISH
0x15, // SPECIES_BRELOOM
0x07, // SPECIES_SPINDA
0x11, // SPECIES_WINGULL
0x11, // SPECIES_PELIPPER
0x03, // SPECIES_SURSKIT
0x11, // SPECIES_MASQUERAIN
0x19, // SPECIES_WAILMER
0x19, // SPECIES_WAILORD
0x13, // SPECIES_SKITTY
0x12, // SPECIES_DELCATTY
0x01, // SPECIES_KECLEON
0x13, // SPECIES_BALTOY
0x14, // SPECIES_CLAYDOL
0x0e, // SPECIES_NOSEPASS
0x17, // SPECIES_TORKOAL
0x01, // SPECIES_SABLEYE
0x0b, // SPECIES_BARBOACH
0x09, // SPECIES_WHISCASH
0x04, // SPECIES_LUVDISC
0x0f, // SPECIES_CORPHISH
0x15, // SPECIES_CRAWDAUNT
0x03, // SPECIES_FEEBAS
0x19, // SPECIES_MILOTIC
0x04, // SPECIES_CARVANHA
0x15, // SPECIES_SHARPEDO
0x13, // SPECIES_TRAPINCH
0x01, // SPECIES_VIBRAVA
0x0f, // SPECIES_FLYGON
0x0e, // SPECIES_MAKUHITA
0x0e, // SPECIES_HARIYAMA
0x15, // SPECIES_ELECTRIKE
0x09, // SPECIES_MANECTRIC
0x0e, // SPECIES_NUMEL
0x17, // SPECIES_CAMERUPT
0x13, // SPECIES_SPHEAL
0x09, // SPECIES_SEALEO
0x09, // SPECIES_WALREIN
0x0a, // SPECIES_CACNEA
0x08, // SPECIES_CACTURNE
0x0f, // SPECIES_SNORUNT
0x0f, // SPECIES_GLALIE
0x13, // SPECIES_LUNATONE
0x13, // SPECIES_SOLROCK
0x10, // SPECIES_AZURILL
0x10, // SPECIES_SPOINK
0x14, // SPECIES_GRUMPIG
0x12, // SPECIES_PLUSLE
0x12, // SPECIES_MINUN
0x09, // SPECIES_MAWILE
0x14, // SPECIES_MEDITITE
0x14, // SPECIES_MEDICHAM
0x11, // SPECIES_SWABLU
0x11, // SPECIES_ALTARIA
0x12, // SPECIES_WYNAUT
0x01, // SPECIES_DUSKULL
0x01, // SPECIES_DUSCLOPS
0x18, // SPECIES_ROSELIA
0x02, // SPECIES_SLAKOTH
0x10, // SPECIES_VIGOROTH
0x08, // SPECIES_SLAKING
0x0b, // SPECIES_GULPIN
0x0b, // SPECIES_SWALOT
0x0e, // SPECIES_TROPIUS
0x13, // SPECIES_WHISMUR
0x09, // SPECIES_LOUDRED
0x0d, // SPECIES_EXPLOUD
0x13, // SPECIES_CLAMPERL
0x11, // SPECIES_HUNTAIL
0x11, // SPECIES_GOREBYSS
0x14, // SPECIES_ABSOL
0x01, // SPECIES_SHUPPET
0x01, // SPECIES_BANETTE
0x0b, // SPECIES_SEVIPER
0x15, // SPECIES_ZANGOOSE
0x02, // SPECIES_RELICANTH
0x15, // SPECIES_ARON
0x09, // SPECIES_LAIRON
0x0e, // SPECIES_AGGRON
0x11, // SPECIES_CASTFORM
0x11, // SPECIES_VOLBEAT
0x11, // SPECIES_ILLUMISE
0x0c, // SPECIES_LILEEP
0x0b, // SPECIES_CRADILY
0x0f, // SPECIES_ANORITH
0x09, // SPECIES_ARMALDO
0x14, // SPECIES_RALTS
0x14, // SPECIES_KIRLIA
0x14, // SPECIES_GARDEVOIR
0x09, // SPECIES_BAGON
0x09, // SPECIES_SHELGON
0x08, // SPECIES_SALAMENCE
0x0f, // SPECIES_BELDUM
0x15, // SPECIES_METANG
0x09, // SPECIES_METAGROSS
0x09, // SPECIES_REGIROCK
0x09, // SPECIES_REGICE
0x09, // SPECIES_REGISTEEL
0x19, // SPECIES_KYOGRE
0x17, // SPECIES_GROUDON
0x0d, // SPECIES_RAYQUAZA
0x01, // SPECIES_LATIAS
0x01, // SPECIES_LATIOS
0x11, // SPECIES_JIRACHI
0x14, // SPECIES_DEOXYS
0x11, // SPECIES_CHIMECHO
[SPECIES_BULBASAUR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_IVYSAUR] = BACK_ANIM_H_SLIDE,
[SPECIES_VENUSAUR] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_CHARMANDER] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CHARMELEON] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_CHARIZARD] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SQUIRTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_WARTORTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_BLASTOISE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_CATERPIE] = BACK_ANIM_H_SLIDE,
[SPECIES_METAPOD] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BUTTERFREE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WEEDLE] = BACK_ANIM_H_SLIDE,
[SPECIES_KAKUNA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BEEDRILL] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_PIDGEY] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_PIDGEOTTO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_PIDGEOT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_RATTATA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_RATICATE] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_SPEAROW] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_FEAROW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_EKANS] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_ARBOK] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_PIKACHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_RAICHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_SANDSHREW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SANDSLASH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_NIDORAN_F] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_NIDORINA] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_NIDOQUEEN] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_NIDORAN_M] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_NIDORINO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_NIDOKING] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CLEFAIRY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLEFABLE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_VULPIX] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_NINETALES] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_JIGGLYPUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_WIGGLYTUFF] = BACK_ANIM_GROW_1,
[SPECIES_ZUBAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOLBAT] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_ODDISH] = BACK_ANIM_H_SLIDE,
[SPECIES_GLOOM] = BACK_ANIM_H_SLIDE,
[SPECIES_VILEPLUME] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PARAS] = BACK_ANIM_H_SLIDE,
[SPECIES_PARASECT] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_VENONAT] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_VENOMOTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_DIGLETT] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DUGTRIO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEOWTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_PERSIAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_PSYDUCK] = BACK_ANIM_H_SLIDE,
[SPECIES_GOLDUCK] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MANKEY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_PRIMEAPE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GROWLITHE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_ARCANINE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_POLIWAG] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_POLIWHIRL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_POLIWRATH] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_ABRA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KADABRA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_ALAKAZAM] = BACK_ANIM_GROW_2,
[SPECIES_MACHOP] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MACHOKE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MACHAMP] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_BELLSPROUT] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_WEEPINBELL] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_VICTREEBEL] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_TENTACOOL] = BACK_ANIM_H_SLIDE,
[SPECIES_TENTACRUEL] = BACK_ANIM_H_SLIDE,
[SPECIES_GEODUDE] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_GRAVELER] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_GOLEM] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_PONYTA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_RAPIDASH] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SLOWPOKE] = BACK_ANIM_H_SLIDE,
[SPECIES_SLOWBRO] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_MAGNEMITE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MAGNETON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_FARFETCHD] = BACK_ANIM_H_SLIDE,
[SPECIES_DODUO] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_DODRIO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SEEL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_DEWGONG] = BACK_ANIM_H_SLIDE,
[SPECIES_GRIMER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_MUK] = BACK_ANIM_HORIZONTAL_STRETCH,
[SPECIES_SHELLDER] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLOYSTER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GASTLY] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_HAUNTER] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_GENGAR] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_ONIX] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DROWZEE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HYPNO] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KRABBY] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_KINGLER] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_VOLTORB] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_ELECTRODE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_EXEGGCUTE] = BACK_ANIM_H_SLIDE,
[SPECIES_EXEGGUTOR] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_CUBONE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MAROWAK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HITMONLEE] = BACK_ANIM_H_SLIDE,
[SPECIES_HITMONCHAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LICKITUNG] = BACK_ANIM_H_SLIDE,
[SPECIES_KOFFING] = BACK_ANIM_GROW_1,
[SPECIES_WEEZING] = BACK_ANIM_GROW_1,
[SPECIES_RHYHORN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_RHYDON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CHANSEY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_TANGELA] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_KANGASKHAN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_HORSEA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SEADRA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOLDEEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SEAKING] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_STARYU] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_STARMIE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_MR_MIME] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SCYTHER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_JYNX] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_ELECTABUZZ] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_MAGMAR] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_PINSIR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_TAUROS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_MAGIKARP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GYARADOS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_LAPRAS] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_DITTO] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_EEVEE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_VAPOREON] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_JOLTEON] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_FLAREON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_PORYGON] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_OMANYTE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_OMASTAR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_KABUTO] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_KABUTOPS] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_AERODACTYL] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SNORLAX] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_ARTICUNO] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_ZAPDOS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_MOLTRES] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_DRATINI] = BACK_ANIM_H_SLIDE,
[SPECIES_DRAGONAIR] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_DRAGONITE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEWTWO] = BACK_ANIM_GROW_2,
[SPECIES_MEW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CHIKORITA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_BAYLEEF] = BACK_ANIM_H_SLIDE,
[SPECIES_MEGANIUM] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CYNDAQUIL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_QUILAVA] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_TYPHLOSION] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_TOTODILE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_CROCONAW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_FERALIGATR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SENTRET] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_FURRET] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HOOTHOOT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_NOCTOWL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LEDYBA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_LEDIAN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SPINARAK] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_ARIADOS] = BACK_ANIM_H_SLIDE,
[SPECIES_CROBAT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_CHINCHOU] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_LANTURN] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_PICHU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CLEFFA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_IGGLYBUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_TOGEPI] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_TOGETIC] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_NATU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_XATU] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MAREEP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_FLAAFFY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_AMPHAROS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_BELLOSSOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_MARILL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_AZUMARILL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SUDOWOODO] = BACK_ANIM_H_SLIDE,
[SPECIES_POLITOED] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HOPPIP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SKIPLOOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_JUMPLUFF] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_AIPOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SUNKERN] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SUNFLORA] = BACK_ANIM_H_SLIDE,
[SPECIES_YANMA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WOOPER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_QUAGSIRE] = BACK_ANIM_H_SLIDE,
[SPECIES_ESPEON] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_UMBREON] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MURKROW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SLOWKING] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_MISDREAVUS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_UNOWN] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_WOBBUFFET] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_GIRAFARIG] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PINECO] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_FORRETRESS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DUNSPARCE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GLIGAR] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_STEELIX] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SNUBBULL] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_GRANBULL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_QWILFISH] = BACK_ANIM_GROW_2,
[SPECIES_SCIZOR] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SHUCKLE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HERACROSS] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SNEASEL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_TEDDIURSA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_URSARING] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SLUGMA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MAGCARGO] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SWINUB] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_PILOSWINE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_CORSOLA] = BACK_ANIM_H_SLIDE,
[SPECIES_REMORAID] = BACK_ANIM_H_SLIDE,
[SPECIES_OCTILLERY] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_DELIBIRD] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MANTINE] = BACK_ANIM_H_SLIDE,
[SPECIES_SKARMORY] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_HOUNDOUR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_HOUNDOOM] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_KINGDRA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_PHANPY] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_DONPHAN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_PORYGON2] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_STANTLER] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SMEARGLE] = BACK_ANIM_H_SLIDE,
[SPECIES_TYROGUE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_HITMONTOP] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
[SPECIES_SMOOCHUM] = BACK_ANIM_H_SLIDE,
[SPECIES_ELEKID] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_MAGBY] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MILTANK] = BACK_ANIM_H_SLIDE,
[SPECIES_BLISSEY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_RAIKOU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_ENTEI] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SUICUNE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_LARVITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_PUPITAR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_TYRANITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_LUGIA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_HO_OH] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_CELEBI] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
[SPECIES_TREECKO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GROVYLE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SCEPTILE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_TORCHIC] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_COMBUSKEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_BLAZIKEN] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MUDKIP] = BACK_ANIM_H_SLIDE,
[SPECIES_MARSHTOMP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SWAMPERT] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_POOCHYENA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MIGHTYENA] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_ZIGZAGOON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LINOONE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_WURMPLE] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_SILCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_BEAUTIFLY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_CASCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_DUSTOX] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LOTAD] = BACK_ANIM_H_SLIDE,
[SPECIES_LOMBRE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_LUDICOLO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SEEDOT] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_NUZLEAF] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SHIFTRY] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_NINCADA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_NINJASK] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_SHEDINJA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_TAILLOW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SWELLOW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SHROOMISH] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BRELOOM] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SPINDA] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
[SPECIES_WINGULL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_PELIPPER] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SURSKIT] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
[SPECIES_MASQUERAIN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WAILMER] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_WAILORD] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_SKITTY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_DELCATTY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_KECLEON] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BALTOY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLAYDOL] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_NOSEPASS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_TORKOAL] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SABLEYE] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BARBOACH] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_WHISCASH] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_LUVDISC] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
[SPECIES_CORPHISH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_CRAWDAUNT] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_FEEBAS] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
[SPECIES_MILOTIC] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_CARVANHA] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
[SPECIES_SHARPEDO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_TRAPINCH] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_VIBRAVA] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_FLYGON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MAKUHITA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_HARIYAMA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_ELECTRIKE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MANECTRIC] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_NUMEL] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CAMERUPT] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SPHEAL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SEALEO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_WALREIN] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CACNEA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_CACTURNE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_SNORUNT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GLALIE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LUNATONE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SOLROCK] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_AZURILL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SPOINK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GRUMPIG] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PLUSLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MINUN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MAWILE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEDITITE] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MEDICHAM] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SWABLU] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ALTARIA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WYNAUT] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_DUSKULL] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_DUSCLOPS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_ROSELIA] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
[SPECIES_SLAKOTH] = BACK_ANIM_H_SLIDE,
[SPECIES_VIGOROTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SLAKING] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_GULPIN] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_SWALOT] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_TROPIUS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_WHISMUR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_LOUDRED] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_EXPLOUD] = BACK_ANIM_GROW_2,
[SPECIES_CLAMPERL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HUNTAIL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOREBYSS] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ABSOL] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SHUPPET] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BANETTE] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_SEVIPER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_ZANGOOSE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_RELICANTH] = BACK_ANIM_H_SLIDE,
[SPECIES_ARON] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_LAIRON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_AGGRON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CASTFORM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_VOLBEAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ILLUMISE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_LILEEP] = BACK_ANIM_HORIZONTAL_STRETCH,
[SPECIES_CRADILY] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_ANORITH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_ARMALDO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_RALTS] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KIRLIA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_GARDEVOIR] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_BAGON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SHELGON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SALAMENCE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_BELDUM] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_METANG] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_METAGROSS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGIROCK] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGICE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGISTEEL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_KYOGRE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_GROUDON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_RAYQUAZA] = BACK_ANIM_GROW_2,
[SPECIES_LATIAS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_LATIOS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_JIRACHI] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_DEOXYS] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_CHIMECHO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
};
static const u8 sUnknown_0860AA64[][2] =

View File

@@ -314,7 +314,7 @@ static const s8 gUnknown_0861CC1C[] = {0, 2, 3, 1, 4, 5};
static const struct WindowTemplate gUnknown_0861CC24[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -323,7 +323,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -332,7 +332,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 23,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -341,7 +341,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 45,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -350,7 +350,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 67,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -359,7 +359,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 89,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -368,7 +368,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 105,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -377,7 +377,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 121,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 0,
@@ -386,7 +386,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 18,
@@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 6,
.width = 18,
@@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 173,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 7,
.width = 6,
@@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 209,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 7,
.width = 5,
@@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 245,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 14,
.width = 11,
@@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 275,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 18,
.width = 6,
@@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 319,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 9,
@@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 331,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 5,
@@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 367,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 0,
@@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 2,
.width = 4,
@@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 9,
@@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 395,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 14,
.width = 9,
@@ -498,7 +498,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
static const struct WindowTemplate gUnknown_0861CCCC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 11,
@@ -507,7 +507,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 7,
@@ -516,7 +516,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 471,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 9,
.width = 18,
@@ -525,7 +525,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 485,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 14,
.width = 18,
@@ -537,7 +537,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
static const struct WindowTemplate gUnknown_0861CCEC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 4,
.width = 10,
@@ -546,7 +546,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 20,
.tilemapTop = 4,
.width = 10,
@@ -555,7 +555,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 469,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 7,
.width = 6,
@@ -564,7 +564,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 489,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 27,
.tilemapTop = 7,
.width = 3,
@@ -573,7 +573,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 525,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 14,
.width = 6,
@@ -585,7 +585,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
static const struct WindowTemplate gUnknown_0861CD14[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 4,
.width = 9,
@@ -594,7 +594,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 4,
.width = 6,
@@ -603,7 +603,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 539,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 15,
.width = 20,

405
src/psychic.c Normal file
View File

@@ -0,0 +1,405 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_80A77C8(struct Sprite *);
extern void sub_810F1EC(struct Sprite *);
extern void sub_810F1EC(struct Sprite *);
extern void sub_810F58C(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_810F634(struct Sprite *);
extern void sub_810F6B0(struct Sprite *);
extern void sub_810FBA8(struct Sprite *);
extern void sub_810FDF0(struct Sprite *);
extern void sub_80A77C8(struct Sprite *);
extern void sub_8110240(struct Sprite *);
const union AffineAnimCmd gUnknown_0859652C[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFE, 0xFFFE, -10, 120),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596544[] =
{
gUnknown_0859652C,
};
const struct SpriteTemplate gUnknown_08596548 =
{
.tileTag = ANIM_TAG_SPIRAL,
.paletteTag = ANIM_TAG_SPIRAL,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596544,
.callback = sub_80A77C8,
};
const struct SpriteTemplate gUnknown_08596560 =
{
.tileTag = ANIM_TAG_GREEN_LIGHT_WALL,
.paletteTag = ANIM_TAG_GREEN_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_08596578 =
{
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_08596590 =
{
.tileTag = ANIM_TAG_RED_LIGHT_WALL,
.paletteTag = ANIM_TAG_RED_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_085965A8 =
{
.tileTag = ANIM_TAG_GRAY_LIGHT_WALL,
.paletteTag = ANIM_TAG_GRAY_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_085965C0 =
{
.tileTag = ANIM_TAG_ORANGE_LIGHT_WALL,
.paletteTag = ANIM_TAG_ORANGE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const union AnimCmd gUnknown_085965D8[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085965F0[] =
{
gUnknown_085965D8,
};
const struct SpriteTemplate gUnknown_085965F4 =
{
.tileTag = ANIM_TAG_SPARKLE_4,
.paletteTag = ANIM_TAG_SPARKLE_4,
.oam = &gUnknown_08524914,
.anims = gUnknown_085965F0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F58C,
};
const union AnimCmd gUnknown_0859660C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(12, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596620[] =
{
gUnknown_0859660C,
};
const struct SpriteTemplate gUnknown_08596624 =
{
.tileTag = ANIM_TAG_SPARKLE_3,
.paletteTag = ANIM_TAG_SPARKLE_3,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08596620,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F58C,
};
const struct SpriteTemplate gUnknown_0859663C =
{
.tileTag = ANIM_TAG_GOLD_RING,
.paletteTag = ANIM_TAG_GOLD_RING,
.oam = &gUnknown_08524954,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const union AnimCmd gUnknown_08596654[] =
{
ANIMCMD_FRAME(8, 60, .hFlip = TRUE),
ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
ANIMCMD_LOOP(0),
ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_LOOP(1),
ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
ANIMCMD_FRAME(24, 3, .hFlip = TRUE),
ANIMCMD_FRAME(32, 3, .hFlip = TRUE),
ANIMCMD_FRAME(40, 22, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596694[] =
{
ANIMCMD_FRAME(8, 60),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 22),
ANIMCMD_LOOP(0),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_LOOP(1),
ANIMCMD_FRAME(8, 22),
ANIMCMD_FRAME(24, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(40, 22),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085966D4[] =
{
gUnknown_08596654,
gUnknown_08596694,
};
const struct SpriteTemplate gUnknown_085966DC =
{
.tileTag = ANIM_TAG_BENT_SPOON,
.paletteTag = ANIM_TAG_BENT_SPOON,
.oam = &gUnknown_08524954,
.anims = gUnknown_085966D4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F634,
};
const union AnimCmd gUnknown_085966F4[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_FRAME(64, 6),
ANIMCMD_FRAME(80, 6),
ANIMCMD_FRAME(96, 18),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596714[] =
{
gUnknown_085966F4,
};
const union AffineAnimCmd gUnknown_08596718[] =
{
AFFINEANIMCMD_FRAME(0, 0, 4, 4),
AFFINEANIMCMD_FRAME(0, 0, -4, 8),
AFFINEANIMCMD_FRAME(0, 0, 4, 4),
AFFINEANIMCMD_LOOP(2),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596740[] =
{
gUnknown_08596718,
};
const struct SpriteTemplate gUnknown_08596744 =
{
.tileTag = ANIM_TAG_AMNESIA,
.paletteTag = ANIM_TAG_AMNESIA,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596714,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F6B0,
};
const union AffineAnimCmd gUnknown_0859675C[] =
{
AFFINEANIMCMD_FRAME(-8, 10, 0, 16),
AFFINEANIMCMD_FRAME(18, -18, 0, 16),
AFFINEANIMCMD_FRAME(-20, 16, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_0859677C[] =
{
AFFINEANIMCMD_FRAME(64, -4, 0, 20),
AFFINEANIMCMD_FRAME(0, 0, 0, -56),
AFFINEANIMCMD_END,
};
const struct SpriteTemplate gUnknown_08596794 =
{
.tileTag = ANIM_TAG_HOLLOW_ORB,
.paletteTag = ANIM_TAG_HOLLOW_ORB,
.oam = &gUnknown_08524A2C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
const struct SpriteTemplate gUnknown_085967AC =
{
.tileTag = 10250,
.paletteTag = 10250,
.oam = &gUnknown_0852491C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810FBA8,
};
const union AffineAnimCmd gUnknown_085967C4[] =
{
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_085967DC[] =
{
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd gUnknown_08596804[] =
{
AFFINEANIMCMD_FRAME(0xD0, 0xD0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd gUnknown_0859682C[] =
{
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596854[] =
{
gUnknown_085967C4,
gUnknown_085967DC,
gUnknown_08596804,
gUnknown_0859682C,
};
const struct SpriteTemplate gUnknown_08596864 =
{
.tileTag = ANIM_TAG_BLUEGREEN_ORB,
.paletteTag = ANIM_TAG_BLUEGREEN_ORB,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596854,
.callback = sub_810FDF0,
};
const union AffineAnimCmd gUnknown_0859687C[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 120),
AFFINEANIMCMD_END_ALT(1),
};
const union AffineAnimCmd *const gUnknown_08596894[] =
{
gUnknown_0859687C,
};
const struct SpriteTemplate gUnknown_08596898 =
{
.tileTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596894,
.callback = sub_80A77C8,
};
const union AffineAnimCmd gUnknown_085968B0[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 17),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
AFFINEANIMCMD_LOOP(4),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 5),
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 5),
AFFINEANIMCMD_LOOP(7),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596908[] =
{
AFFINEANIMCMD_FRAME(0xFFEC, 0x18, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596918[] =
{
gUnknown_085968B0,
gUnknown_08596908,
};
const struct SpriteTemplate gUnknown_08596920 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596918,
.callback = sub_8110240,
};

293
src/rock.c Normal file
View File

@@ -0,0 +1,293 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_81109F0(struct Sprite *);
extern void sub_8110AB4(struct Sprite *);
extern void sub_8110B38(struct Sprite *);
extern void sub_8110E4C(struct Sprite *);
extern void sub_8110F30(struct Sprite *);
extern void sub_811131C(struct Sprite *);
extern void sub_8111388(struct Sprite *);
extern void sub_8111418(struct Sprite *);
extern void sub_8111444(struct Sprite *);
extern void sub_80FF268(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern const union AnimCmd *const gUnknown_085950E0[];
extern const union AnimCmd *const gUnknown_085954D0[];
const union AnimCmd gUnknown_08596AE0[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596AE8[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596AF0[] =
{
ANIMCMD_FRAME(64, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596AF8[] =
{
gUnknown_08596AE0,
gUnknown_08596AE8,
gUnknown_08596AF0,
};
const struct SpriteTemplate gUnknown_08596B04 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596AF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81109F0,
};
const struct SpriteTemplate gUnknown_08596B1C =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596AF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110AB4,
};
const struct SpriteTemplate gUnknown_08596B34 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110B38,
};
const union AffineAnimCmd gUnknown_08596B4C[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
AFFINEANIMCMD_FRAME(0x2, 0xFFFD, 0, 5),
AFFINEANIMCMD_FRAME(0xFFFE, 0x3, 0, 5),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596B6C[] =
{
gUnknown_08596B4C,
};
const struct SpriteTemplate gUnknown_08596B70 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_08596B6C,
.callback = sub_8110B38,
};
const struct SpriteTemplate gUnknown_08596B88 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110B38,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596BA0 =
{
.tileTag = ANIM_TAG_FLYING_DIRT,
.paletteTag = ANIM_TAG_FLYING_DIRT,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110E4C,
};
const struct Subsprite gUnknown_08596BB8[] =
{
{.x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 0, .priority = 1},
{.x = 16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 8, .priority = 1},
};
const struct SubspriteTable gUnknown_08596BC0[] =
{
{ARRAY_COUNT(gUnknown_08596BB8), gUnknown_08596BB8},
};
const union AnimCmd gUnknown_08596BC8[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BD0[] =
{
ANIMCMD_FRAME(16, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BD8[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BE0[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BE8[] =
{
ANIMCMD_FRAME(64, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BF0[] =
{
ANIMCMD_FRAME(80, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596BF8[] =
{
gUnknown_08596BC8,
gUnknown_08596BD0,
};
const union AnimCmd *const gUnknown_08596C00[] =
{
gUnknown_08596BD8,
gUnknown_08596BE0,
};
const union AnimCmd *const gUnknown_08596C08[] =
{
gUnknown_08596BE8,
gUnknown_08596BF0,
};
const struct SpriteTemplate gUnknown_08596C10 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110F30,
};
const struct SpriteTemplate gUnknown_08596C28 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811131C,
};
const struct SpriteTemplate gUnknown_08596C40 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811131C,
};
const struct SpriteTemplate gUnknown_08596C58 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8111388,
};
const union AffineAnimCmd gUnknown_08596C70[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08596C80[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596C90[] =
{
gUnknown_08596C70,
gUnknown_08596C80,
};
const struct SpriteTemplate gUnknown_08596C98 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_8111418,
};
const struct SpriteTemplate gUnknown_08596CB0 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_8111444,
};
const struct SpriteTemplate gUnknown_08596CC8 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596C08,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_80FF268,
};
const struct SpriteTemplate gUnknown_08596CE0 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596C00,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_80A8EE4,
};

View File

@@ -95,7 +95,7 @@ static const struct BgTemplate gUnknown_085EFD88[3] =
static const struct WindowTemplate gUnknown_085EFD94[] =
{
{
.priority = 255,
.bg = 255,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 0,
@@ -108,7 +108,7 @@ static const struct WindowTemplate gUnknown_085EFD94[] =
static const struct WindowTemplate gUnknown_085EFD9C[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 28,
@@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_085EFD9C[] =
static const struct WindowTemplate gUnknown_085EFDA4[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 9,
.width = 2,

View File

@@ -95,14 +95,14 @@ static const struct YesNoFuncTable sShopPurchaseYesNoFuncs =
BuyMenuReturnToItemList
};
static const struct MenuAction sShopMenuActions_BuySellQuit[] =
static const struct MenuAction sShopMenuActions_BuySellQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopSell, {.void_u8=Task_HandleShopMenuSell} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
};
static const struct MenuAction sShopMenuActions_BuyQuit[] =
static const struct MenuAction sShopMenuActions_BuyQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
@@ -111,7 +111,7 @@ static const struct MenuAction sShopMenuActions_BuyQuit[] =
static const struct WindowTemplate sShopMenuWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -120,7 +120,7 @@ static const struct WindowTemplate sShopMenuWindowTemplates[] =
.baseBlock = 0x0008,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -195,7 +195,7 @@ static const struct BgTemplate sShopBuyMenuBgTemplates[] =
static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@@ -204,7 +204,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x001E,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -213,7 +213,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0032,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -222,7 +222,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0122,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 11,
.width = 12,
@@ -231,7 +231,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0176,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@@ -240,7 +240,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x018E,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -251,9 +251,9 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
DUMMY_WIN_TEMPLATE
};
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -808,7 +808,7 @@ static void BuyMenuCollectEventObjectData(void)
gShopDataPtr->viewportObjects[r8][X_COORD] = x;
gShopDataPtr->viewportObjects[r8][Y_COORD] = y;
gShopDataPtr->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y);
switch (gEventObjects[eventObjId].facingDirection)
{
case DIR_SOUTH:
@@ -850,7 +850,7 @@ static void BuyMenuDrawEventObjects(void)
(u16)gShopDataPtr->viewportObjects[i][X_COORD] * 16 + 8,
(u16)gShopDataPtr->viewportObjects[i][Y_COORD] * 16 + 48 - graphicsInfo->height / 2,
2);
if (BuyMenuCheckIfEventObjectOverlapsMenuBg(gShopDataPtr->viewportObjects[i]) == TRUE)
{
gSprites[spriteId].subspriteTableNum = 4;
@@ -867,7 +867,7 @@ static bool8 BuyMenuCheckIfEventObjectOverlapsMenuBg(s16 *object)
{
return TRUE;
}
else
else
{
return FALSE;
}
@@ -1000,7 +1000,7 @@ static void Task_BuyHowManyDialogueInit(u8 taskId)
{
gShopDataPtr->maxQuantity = maxQuantity;
}
gTasks[taskId].func = Task_BuyHowManyDialogueHandleInput;
}

View File

@@ -73,10 +73,10 @@ const u32 gUnknown_085B18AC[] = INCBIN_U32("graphics/misc/birch_ballarrow.4bpp.l
const u32 gUnknown_085B1BCC[] = INCBIN_U32("graphics/misc/birch_circle.4bpp.lz");
static const struct WindowTemplate gUnknown_085B1DCC[] =
static const struct WindowTemplate gUnknown_085B1DCC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 24,
@@ -87,9 +87,9 @@ static const struct WindowTemplate gUnknown_085B1DCC[] =
DUMMY_WIN_TEMPLATE,
};
static const struct WindowTemplate gUnknown_085B1DDC =
static const struct WindowTemplate gUnknown_085B1DDC =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,
@@ -98,9 +98,9 @@ static const struct WindowTemplate gUnknown_085B1DDC =
.baseBlock = 0x0260
};
static const struct WindowTemplate gUnknown_085B1DE4 =
static const struct WindowTemplate gUnknown_085B1DE4 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 13,

View File

@@ -93,7 +93,7 @@ const struct TilesPal *GetWindowFrameTilesPal(u8 id)
void LoadMessageBoxGfx(u8 windowId, u16 destOffset, u8 palOffset)
{
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), gMessageBox_Gfx, 0x1C0, destOffset);
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gMessageBox_Gfx, 0x1C0, destOffset);
LoadPalette(GetOverworldTextboxPalettePtr(), palOffset, 0x20);
}
@@ -104,7 +104,7 @@ void LoadUserWindowBorderGfx_(u8 windowId, u16 destOffset, u8 palOffset)
void LoadWindowGfx(u8 windowId, u8 frameId, u16 destOffset, u8 palOffset)
{
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), sWindowFrames[frameId].tiles, 0x120, destOffset);
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), sWindowFrames[frameId].tiles, 0x120, destOffset);
LoadPalette(sWindowFrames[frameId].pal, palOffset, 0x20);
}
@@ -115,7 +115,7 @@ void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset)
void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@@ -133,7 +133,7 @@ void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@@ -151,7 +151,7 @@ void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
void rbox_fill_rectangle(u8 windowId)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);

View File

@@ -60,10 +60,10 @@ static void SpriteCB_PMIndicator(struct Sprite *sprite);
static const u32 sUnknown_085B1F58[] = INCBIN_U32("graphics/wallclock/graphics_85b1f58.4bpp.lz");
static const u16 sUnknown_085B21D4[] = INCBIN_U16("graphics/wallclock/palette_85b21d4.gbapal");
static const struct WindowTemplate gUnknown_085B21DC[] =
static const struct WindowTemplate gUnknown_085B21DC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 17,
.width = 24,
@@ -72,7 +72,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
.baseBlock = 512
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 24,
.tilemapTop = 16,
.width = 6,
@@ -84,7 +84,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
};
static const struct WindowTemplate gUnknown_085B21F4 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,

442
src/water.c Normal file
View File

@@ -0,0 +1,442 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810721C(struct Sprite *);
extern void sub_8107260(struct Sprite *);
extern void sub_810744C(struct Sprite *);
extern void sub_81075EC(struct Sprite *);
extern void sub_8107730(struct Sprite *);
extern void sub_81077C0(struct Sprite *);
extern void sub_80A78AC(struct Sprite *);
extern void sub_8107894(struct Sprite *);
extern void sub_81078D0(struct Sprite *);
extern void sub_8108034(struct Sprite *);
extern void sub_810851C(struct Sprite *);
extern void sub_8108BE0(struct Sprite *);
extern void sub_8108C54(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern const union AffineAnimCmd *const gUnknown_08593420[];
extern const union AffineAnimCmd *const gUnknown_08596208[];
extern const union AnimCmd *const gUnknown_08595AB8[];
// what is this?
const u8 gUnknown_8593C80[] = INCBIN_U8("graphics/unknown/unknown_593C80.4bpp");
const u8 gUnknown_8593FFC[] = INCBIN_U8("graphics/unknown/unknown_593FFC.bin");
const union AnimCmd gUnknown_08594FFC[] =
{
ANIMCMD_FRAME(0, 2),
ANIMCMD_FRAME(8, 2),
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(24, 6),
ANIMCMD_FRAME(32, 2),
ANIMCMD_FRAME(40, 2),
ANIMCMD_FRAME(48, 2),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859501C[] =
{
gUnknown_08594FFC,
};
const struct SpriteTemplate gUnknown_08595020 =
{
.tileTag = ANIM_TAG_RAIN_DROPS,
.paletteTag = ANIM_TAG_RAIN_DROPS,
.oam = &gUnknown_08524954,
.anims = gUnknown_0859501C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810721C,
};
const union AffineAnimCmd gUnknown_08595038[] =
{
AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 10),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595050[] =
{
gUnknown_08595038,
};
const union AnimCmd gUnknown_08595054[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595064[] =
{
gUnknown_08595054,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8595068 =
{
.tileTag = ANIM_TAG_BUBBLE,
.paletteTag = ANIM_TAG_BUBBLE,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_08595064,
.images = NULL,
.affineAnims = gUnknown_08595050,
.callback = sub_8107260,
};
const union AnimCmd gUnknown_08595080[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595088[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595090[] =
{
gUnknown_08595080,
gUnknown_08595088,
};
const union AffineAnimCmd gUnknown_08595098[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_FRAME(0x60, 0x60, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085950B0[] =
{
gUnknown_08595098,
};
// Multi-colored rings used in Aurora Beam.
const struct SpriteTemplate gUnknown_085950B4 =
{
.tileTag = ANIM_TAG_RAINBOW_RINGS,
.paletteTag = ANIM_TAG_RAINBOW_RINGS,
.oam = &gUnknown_08524A04,
.anims = gUnknown_08595090,
.images = NULL,
.affineAnims = gUnknown_085950B0,
.callback = sub_810744C,
};
const union AnimCmd gUnknown_085950CC[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(4, 1),
ANIMCMD_FRAME(8, 1),
ANIMCMD_FRAME(12, 1),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085950E0[] =
{
gUnknown_085950CC,
};
const struct SpriteTemplate gUnknown_085950E4 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_085950FC =
{
.tileTag = ANIM_TAG_BROWN_ORB,
.paletteTag = ANIM_TAG_BROWN_ORB,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_08595114 =
{
.tileTag = ANIM_TAG_GLOWY_RED_ORB,
.paletteTag = ANIM_TAG_GLOWY_RED_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_0859512C =
{
.tileTag = ANIM_TAG_GLOWY_GREEN_ORB,
.paletteTag = ANIM_TAG_GLOWY_GREEN_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const union AnimCmd gUnknown_08595144[] =
{
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(32, 2),
ANIMCMD_FRAME(48, 2),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595154[] =
{
gUnknown_08595144,
};
const struct SpriteTemplate gUnknown_08595158 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595154,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_08595170 =
{
.tileTag = ANIM_TAG_BLUE_RING,
.paletteTag = ANIM_TAG_BLUE_RING,
.oam = &gUnknown_08524A14,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08593420,
.callback = sub_81075EC,
};
const union AffineAnimCmd gUnknown_08595188[] =
{
AFFINEANIMCMD_FRAME(0x3, 0x3, 10, 50),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 10),
AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, -10, 20),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085951A8[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085951B8[] =
{
gUnknown_08595188,
};
const union AffineAnimCmd *const gUnknown_085951BC[] =
{
gUnknown_085951A8,
};
const struct SpriteTemplate gUnknown_085951C0 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_085951B8,
.callback = sub_8107730,
};
const struct SpriteTemplate gUnknown_085951D8 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_085951BC,
.callback = sub_81077C0,
};
const union AnimCmd gUnknown_085951F0[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085951F8[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595200[] =
{
gUnknown_085951F0,
};
const union AnimCmd *const gUnknown_08595204[] =
{
gUnknown_085951F8,
};
const struct SpriteTemplate gUnknown_08595208 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_08595200,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A78AC,
};
const struct SpriteTemplate gUnknown_08595220 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_08595204,
.images = NULL,
.affineAnims = gUnknown_08596208,
.callback = sub_8107894,
};
const struct SpriteTemplate gUnknown_08595238 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81078D0,
};
const struct SpriteTemplate gUnknown_08595250 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108034,
};
const struct SpriteTemplate gUnknown_08595268 =
{
.tileTag = ANIM_TAG_GLOWY_BLUE_ORB,
.paletteTag = ANIM_TAG_GLOWY_BLUE_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810851C,
};
const union AnimCmd gUnknown_08595280[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595288[] =
{
ANIMCMD_FRAME(9, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595290[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595298[] =
{
gUnknown_08595280,
gUnknown_08595288,
};
const union AnimCmd *const gUnknown_085952A0[] =
{
gUnknown_08595290,
};
const union AffineAnimCmd gUnknown_085952A4[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085952BC[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085952D4[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085952EC[] =
{
gUnknown_085952A4,
gUnknown_085952BC,
};
const union AffineAnimCmd *const gUnknown_085952F4[] =
{
gUnknown_085952D4,
};
const struct SpriteTemplate gUnknown_085952F8 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595298,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108BE0,
};
const struct SpriteTemplate gUnknown_08595310 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524964,
.anims = gUnknown_08595298,
.images = NULL,
.affineAnims = gUnknown_085952EC,
.callback = sub_8108C54,
};
const struct SpriteTemplate gUnknown_08595328 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852496C,
.anims = gUnknown_085952A0,
.images = NULL,
.affineAnims = gUnknown_085952F4,
.callback = sub_80A8EE4,
};

View File

@@ -52,7 +52,7 @@ bool16 InitWindows(const struct WindowTemplate *templates)
gWindows[i].tileData = NULL;
}
for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].priority; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].priority)
for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].bg; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].bg)
{
if (gUnneededFireRedVariable == 1)
{
@@ -121,14 +121,14 @@ u16 AddWindow(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
if ((bgLayer = gWindows[win].window.priority) == 0xFF)
if ((bgLayer = gWindows[win].window.bg) == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@@ -190,14 +190,14 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
if (gWindows[win].window.priority == 0xFF)
if (gWindows[win].window.bg == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@@ -221,7 +221,7 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
void RemoveWindow(u8 windowId)
{
u8 bgLayer = gWindows[windowId].window.priority;
u8 bgLayer = gWindows[windowId].window.bg;
if (gUnneededFireRedVariable == 1)
{
@@ -277,14 +277,14 @@ void CopyWindowToVram(u8 windowId, u8 mode)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(windowLocal.window.priority);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
break;
case 3:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
CopyBgTilemapBufferToVram(windowLocal.window.priority);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@@ -309,14 +309,14 @@ void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(windowLocal.window.priority);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
break;
case 3:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
CopyBgTilemapBufferToVram(windowLocal.window.priority);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@@ -327,8 +327,8 @@ void PutWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
GetBgAttribute(windowLocal.window.priority, 0xA) + windowLocal.window.baseBlock,
windowLocal.window.bg,
GetBgAttribute(windowLocal.window.bg, 0xA) + windowLocal.window.baseBlock,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
windowLocal.window.width,
@@ -340,13 +340,13 @@ void PutWindowTilemap(u8 windowId)
void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 palette)
{
struct Window windowLocal = gWindows[windowId];
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@@ -364,7 +364,7 @@ void ClearWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
FillBgTilemapBufferRect(
windowLocal.window.priority,
windowLocal.window.bg,
gUnknown_03002F60,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
@@ -376,13 +376,13 @@ void ClearWindowTilemap(u8 windowId)
void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height)
{
struct Window windowLocal = gWindows[windowId];
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@@ -529,7 +529,7 @@ void ScrollWindow(u8 windowId, u8 direction, u8 distance, u8 fillValue)
void CallWindowFunction(u8 windowId, void ( *func)(u8, u8, u8, u8, u8, u8))
{
struct WindowTemplate window = gWindows[windowId].window;
func(window.priority, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
func(window.bg, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
}
bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
@@ -551,7 +551,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
case WINDOW_TILE_DATA:
gWindows[windowId].tileData = (u8*)(value);
return TRUE;
case WINDOW_PRIORITY:
case WINDOW_BG:
case WINDOW_WIDTH:
case WINDOW_HEIGHT:
default:
@@ -563,8 +563,8 @@ u32 GetWindowAttribute(u8 windowId, u8 attributeId)
{
switch (attributeId)
{
case WINDOW_PRIORITY:
return gWindows[windowId].window.priority;
case WINDOW_BG:
return gWindows[windowId].window.bg;
case WINDOW_TILEMAP_LEFT:
return gWindows[windowId].window.tilemapLeft;
case WINDOW_TILEMAP_TOP:
@@ -590,7 +590,7 @@ static u8 GetNumActiveWindowsOnBg(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
if (gWindows[i].window.priority == bgId)
if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;
@@ -609,12 +609,12 @@ u16 AddWindow8Bit(struct WindowTemplate *template)
for (windowId = 0; windowId < 32; windowId++)
{
if (gWindows[windowId].window.priority == 0xFF)
if (gWindows[windowId].window.bg == 0xFF)
break;
}
if (windowId == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
if (gUnknown_03002F70[bgLayer] == 0)
{
u16 attribute = GetBgAttribute(bgLayer, 8);
@@ -693,14 +693,14 @@ void CopyWindowToVram8Bit(u8 windowId, u8 mode)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
case 2:
LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
break;
case 3:
LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
}
}
@@ -711,7 +711,7 @@ static u8 GetNumActiveWindowsOnBg8Bit(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
if (gWindows[i].window.priority == bgId)
if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;