Also commented the use of the field surrounding the struct initialization functions. SPRITEANIMSTRUCT_0C -> SPRITEANIMSTRUCT_VAR1 SPRITEANIMSTRUCT_0D -> SPRITEANIMSTRUCT_VAR2 SPRITEANIMSTRUCT_0E -> SPRITEANIMSTRUCT_VAR3 SPRITEANIMSTRUCT_0F -> SPRITEANIMSTRUCT_VAR4 BATTLEANIMSTRUCT_01 -> BATTLEANIMSTRUCT_OAMFLAGS BATTLEANIMSTRUCT_ANON_JT_INDEX -> BATTLEANIMSTRUCT_JUMPTABLE_INDEX BATTLEANIMSTRUCT_0F -> BATTLEANIMSTRUCT_VAR1 BATTLEANIMSTRUCT_10 -> BATTLEANIMSTRUCT_VAR2
wSpriteAnimCount starts at 0, keeps incrementing and never decrements. When it reaches $ff, the next value is 1. Its purpose is unknown, as this value is used nowhere else.
These were the wrong way around, as the function in home should not be prefixed