summaryrefslogtreecommitdiff
path: root/docs/pic_animations.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/pic_animations.md')
-rw-r--r--docs/pic_animations.md28
1 files changed, 28 insertions, 0 deletions
diff --git a/docs/pic_animations.md b/docs/pic_animations.md
new file mode 100644
index 000000000..a87932819
--- /dev/null
+++ b/docs/pic_animations.md
@@ -0,0 +1,28 @@
+# Pic Animations
+
+Pic animations are assembled in 3 parts:
+
+- Top-level animations:
+ - `frame` *#*, *duration*: Frame 0 is the original pic (no change)
+ - `setrepeat` *#*: Sets the number of times to repeat
+ - `dorepeat` *#*: Repeats from command *#* (starting from 0)
+ - `end`
+
+- Bitmasks:
+ Layered over the pic to designate affected tiles
+
+- Frame definitions:
+ first byte is the bitmask used for this frame
+ following bytes are tile ids mapped to each bit in the mask
+
+Animation data is in these files:
+
+- gfx/pics/anims.asm:
+ Main animations (played everywhere)
+
+- gfx/pics/extras.asm:
+ Extra animations, appended to the main animation.
+ Used in the status screen (blinking, tail wags etc.)
+
+- gfx/pics/unown_anims.asm and gfx/pics/unown_extras.asm:
+ Unown has its own animation data despite having an entry in the main tables.