summaryrefslogtreecommitdiff
path: root/example/graphics/sprites
diff options
context:
space:
mode:
Diffstat (limited to 'example/graphics/sprites')
-rw-r--r--example/graphics/sprites/equipment/chest/chest-leather-female.pngbin0 -> 11692 bytes
-rw-r--r--example/graphics/sprites/equipment/chest/chest-leather-female.xml104
-rw-r--r--example/graphics/sprites/equipment/chest/chest-leather-male.pngbin0 -> 19688 bytes
-rw-r--r--example/graphics/sprites/equipment/chest/chest-leather-male.xml104
-rw-r--r--example/graphics/sprites/equipment/feet/boots-female.pngbin0 -> 8734 bytes
-rw-r--r--example/graphics/sprites/equipment/feet/boots-female.xml8
-rw-r--r--example/graphics/sprites/equipment/feet/boots-male.pngbin0 -> 8662 bytes
-rw-r--r--example/graphics/sprites/equipment/feet/boots-male.xml104
-rw-r--r--example/graphics/sprites/equipment/legs/pants-female.pngbin0 -> 19817 bytes
-rw-r--r--example/graphics/sprites/equipment/legs/pants-female.xml104
-rw-r--r--example/graphics/sprites/equipment/legs/pants-male.pngbin0 -> 55222 bytes
-rw-r--r--example/graphics/sprites/equipment/legs/pants-male.xml104
-rw-r--r--example/graphics/sprites/error.pngbin0 -> 347 bytes
-rw-r--r--example/graphics/sprites/error.xml10
-rw-r--r--example/graphics/sprites/icons/icon-feather.pngbin0 -> 513 bytes
-rw-r--r--example/graphics/sprites/icons/icon-feather.xml10
-rw-r--r--example/graphics/sprites/icons/icon-poison.pngbin0 -> 1832 bytes
-rw-r--r--example/graphics/sprites/icons/icon-poison.xml18
-rw-r--r--example/graphics/sprites/monsters/monster-maggot.pngbin0 -> 4541 bytes
-rw-r--r--example/graphics/sprites/monsters/monster-maggot.xml66
-rw-r--r--example/graphics/sprites/monsters/monster-scorpion.pngbin0 -> 7855 bytes
-rw-r--r--example/graphics/sprites/monsters/monster-scorpion.xml70
-rw-r--r--example/graphics/sprites/monsters/monster-slime.pngbin0 -> 13722 bytes
-rw-r--r--example/graphics/sprites/monsters/monster-slime.xml55
-rw-r--r--example/graphics/sprites/npcs/static-npcs.pngbin0 -> 29932 bytes
-rw-r--r--example/graphics/sprites/npcs/static-npcs.xml10
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle0.xml6
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle1.pngbin0 -> 733 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle1.xml143
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle10.pngbin0 -> 3127 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle10.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle11.pngbin0 -> 3708 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle11.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle12.pngbin0 -> 1668 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle12.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle13.pngbin0 -> 1525 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle13.xml143
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle14.pngbin0 -> 2905 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle14.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle15.pngbin0 -> 3217 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle15.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle16.pngbin0 -> 2302 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle16.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle2.pngbin0 -> 1073 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle2.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle3.pngbin0 -> 1121 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle3.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle4.pngbin0 -> 1312 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle4.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle5.pngbin0 -> 1872 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle5.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle6.pngbin0 -> 1092 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle6.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle7.pngbin0 -> 1017 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle7.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle8.pngbin0 -> 2532 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle8.xml8
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle9.pngbin0 -> 2280 bytes
-rw-r--r--example/graphics/sprites/races/humans/hairstyles/hairstyle9.xml8
-rw-r--r--example/graphics/sprites/races/humans/human_female_base.pngbin0 -> 60055 bytes
-rw-r--r--example/graphics/sprites/races/humans/human_female_base.xml104
-rw-r--r--example/graphics/sprites/races/humans/human_male_base.pngbin0 -> 55885 bytes
-rw-r--r--example/graphics/sprites/races/humans/human_male_base.xml110
-rw-r--r--example/graphics/sprites/weapons/weapon-bow.pngbin0 -> 5751 bytes
-rw-r--r--example/graphics/sprites/weapons/weapon-bow.xml26
-rw-r--r--example/graphics/sprites/weapons/weapon-dagger.xml27
-rw-r--r--example/graphics/sprites/weapons/weapon-fist.xml7
-rw-r--r--example/graphics/sprites/weapons/weapon-sword.pngbin0 -> 2016 bytes
-rw-r--r--example/graphics/sprites/weapons/weapon-sword.xml27
69 files changed, 1472 insertions, 0 deletions
diff --git a/example/graphics/sprites/equipment/chest/chest-leather-female.png b/example/graphics/sprites/equipment/chest/chest-leather-female.png
new file mode 100644
index 00000000..a6efbf9b
--- /dev/null
+++ b/example/graphics/sprites/equipment/chest/chest-leather-female.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/chest/chest-leather-female.xml b/example/graphics/sprites/equipment/chest/chest-leather-female.xml
new file mode 100644
index 00000000..b44be8ab
--- /dev/null
+++ b/example/graphics/sprites/equipment/chest/chest-leather-female.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/chest/chest-leather-female.png|W;R" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/equipment/chest/chest-leather-male.png b/example/graphics/sprites/equipment/chest/chest-leather-male.png
new file mode 100644
index 00000000..bc5a3c65
--- /dev/null
+++ b/example/graphics/sprites/equipment/chest/chest-leather-male.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/chest/chest-leather-male.xml b/example/graphics/sprites/equipment/chest/chest-leather-male.xml
new file mode 100644
index 00000000..fd46be28
--- /dev/null
+++ b/example/graphics/sprites/equipment/chest/chest-leather-male.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/chest/chest-leather-male.png|W;R" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/equipment/feet/boots-female.png b/example/graphics/sprites/equipment/feet/boots-female.png
new file mode 100644
index 00000000..ba984324
--- /dev/null
+++ b/example/graphics/sprites/equipment/feet/boots-female.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/feet/boots-female.xml b/example/graphics/sprites/equipment/feet/boots-female.xml
new file mode 100644
index 00000000..4bb2fffe
--- /dev/null
+++ b/example/graphics/sprites/equipment/feet/boots-female.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/feet/boots-female.png|W" width="64" height="64" />
+
+ <include file="equipment/feet/boots-male.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/equipment/feet/boots-male.png b/example/graphics/sprites/equipment/feet/boots-male.png
new file mode 100644
index 00000000..f441c5b0
--- /dev/null
+++ b/example/graphics/sprites/equipment/feet/boots-male.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/feet/boots-male.xml b/example/graphics/sprites/equipment/feet/boots-male.xml
new file mode 100644
index 00000000..7edbcef6
--- /dev/null
+++ b/example/graphics/sprites/equipment/feet/boots-male.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/feet/boots-male.png|W" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/equipment/legs/pants-female.png b/example/graphics/sprites/equipment/legs/pants-female.png
new file mode 100644
index 00000000..ad8c2e0e
--- /dev/null
+++ b/example/graphics/sprites/equipment/legs/pants-female.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/legs/pants-female.xml b/example/graphics/sprites/equipment/legs/pants-female.xml
new file mode 100644
index 00000000..4f5dbcdf
--- /dev/null
+++ b/example/graphics/sprites/equipment/legs/pants-female.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/legs/pants-female.png" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/equipment/legs/pants-male.png b/example/graphics/sprites/equipment/legs/pants-male.png
new file mode 100644
index 00000000..f8415753
--- /dev/null
+++ b/example/graphics/sprites/equipment/legs/pants-male.png
Binary files differ
diff --git a/example/graphics/sprites/equipment/legs/pants-male.xml b/example/graphics/sprites/equipment/legs/pants-male.xml
new file mode 100644
index 00000000..3a90c6aa
--- /dev/null
+++ b/example/graphics/sprites/equipment/legs/pants-male.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/equipment/legs/pants-male.png" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/error.png b/example/graphics/sprites/error.png
new file mode 100644
index 00000000..108ad0e4
--- /dev/null
+++ b/example/graphics/sprites/error.png
Binary files differ
diff --git a/example/graphics/sprites/error.xml b/example/graphics/sprites/error.xml
new file mode 100644
index 00000000..3504bd01
--- /dev/null
+++ b/example/graphics/sprites/error.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/error.png" width="29" height="9" />
+
+ <action name="default" imageset="base">
+ <animation direction="default">
+ <frame index="0" />
+ </animation>
+ </action>
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/icons/icon-feather.png b/example/graphics/sprites/icons/icon-feather.png
new file mode 100644
index 00000000..425fb286
--- /dev/null
+++ b/example/graphics/sprites/icons/icon-feather.png
Binary files differ
diff --git a/example/graphics/sprites/icons/icon-feather.xml b/example/graphics/sprites/icons/icon-feather.xml
new file mode 100644
index 00000000..715a2f82
--- /dev/null
+++ b/example/graphics/sprites/icons/icon-feather.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/icons/icon-feather.png" width="13" height="20" />
+
+ <action name="default" imageset="base">
+ <animation direction="default">
+ <frame index="0" offsetY="-12" delay="100"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/example/graphics/sprites/icons/icon-poison.png b/example/graphics/sprites/icons/icon-poison.png
new file mode 100644
index 00000000..b7803cd9
--- /dev/null
+++ b/example/graphics/sprites/icons/icon-poison.png
Binary files differ
diff --git a/example/graphics/sprites/icons/icon-poison.xml b/example/graphics/sprites/icons/icon-poison.xml
new file mode 100644
index 00000000..0a8f751a
--- /dev/null
+++ b/example/graphics/sprites/icons/icon-poison.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/icons/icon-poison.png" width="12" height="20" />
+
+ <action name="default" imageset="base">
+ <animation direction="default">
+ <frame index="0" offsetY="-12" delay="80"/>
+ <frame index="1" offsetY="-12" delay="80"/>
+ <frame index="2" offsetY="-12" delay="80"/>
+ <frame index="3" offsetY="-12" delay="80"/>
+ <frame index="4" offsetY="-12" delay="80"/>
+ <frame index="5" offsetY="-12" delay="80"/>
+ <frame index="6" offsetY="-12" delay="80"/>
+ <frame index="7" offsetY="-12" delay="80"/>
+ <frame index="8" offsetY="-12" delay="80"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/example/graphics/sprites/monsters/monster-maggot.png b/example/graphics/sprites/monsters/monster-maggot.png
new file mode 100644
index 00000000..64474f94
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-maggot.png
Binary files differ
diff --git a/example/graphics/sprites/monsters/monster-maggot.xml b/example/graphics/sprites/monsters/monster-maggot.xml
new file mode 100644
index 00000000..f603b8db
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-maggot.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/monsters/monster-maggot.png" width="20" height="15" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetY ="-8" />
+ </animation>
+ <animation direction="left">
+ <frame index="10" offsetY ="-11" />
+ </animation>
+ <animation direction="up">
+ <frame index="20" offsetY ="-10" />
+ </animation>
+ <animation direction="right">
+ <frame index="30" offsetY ="-11" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="4" delay="150" offsetY ="-8" />
+ </animation>
+ <animation direction="left">
+ <sequence start="11" end="14" delay="150" offsetY ="-11" />
+ </animation>
+ <animation direction="up">
+ <sequence start="21" end="24" delay="150" offsetY ="-10" />
+ </animation>
+ <animation direction="right">
+ <sequence start="31" end="34" delay="150" offsetY ="-11" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="9" offsetY ="-8" />
+ </animation>
+ <animation direction="left" >
+ <frame index="19" offsetY ="-11" />
+ </animation>
+ <animation direction="up">
+ <frame index="29" offsetY ="-10" />
+ </animation>
+ <animation direction="right">
+ <frame index="39" offsetY ="-11" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="5" end="8" delay="150" offsetY ="-8" />
+ </animation>
+ <animation direction="left">
+ <sequence start="15" end="18" delay="150" offsetY ="-11" />
+ </animation>
+ <animation direction="up">
+ <sequence start="25" end="28" delay="150" offsetY ="-10" />
+ </animation>
+ <animation direction="right">
+ <sequence start="35" end="38" delay="150" offsetY ="-11" />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/monsters/monster-scorpion.png b/example/graphics/sprites/monsters/monster-scorpion.png
new file mode 100644
index 00000000..0bd693fd
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-scorpion.png
Binary files differ
diff --git a/example/graphics/sprites/monsters/monster-scorpion.xml b/example/graphics/sprites/monsters/monster-scorpion.xml
new file mode 100644
index 00000000..ab1986a3
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-scorpion.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/monsters/monster-scorpion.png|W" width="48" height="45" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetY ="2" />
+ </animation>
+ <animation direction="left">
+ <frame index="10" offsetY ="2" />
+ </animation>
+ <animation direction="up">
+ <frame index="20" offsetX ="-1" offsetY ="3" />
+ </animation>
+ <animation direction="right">
+ <frame index="30" offsetY ="2" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="4" delay="75" offsetY ="2" />
+ </animation>
+ <animation direction="left">
+ <sequence start="11" end="14" delay="75" offsetY ="2" />
+ </animation>
+ <animation direction="up">
+ <sequence start="21" end="24" delay="75" offsetX ="-1" offsetY ="3" />
+ </animation>
+ <animation direction="right">
+ <sequence start="31" end="34" delay="75" offsetY ="2" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="9" offsetY ="2" />
+ </animation>
+ <animation direction="left">
+ <frame index="19" offsetY ="2" />
+ </animation>
+ <animation direction="up">
+ <frame index="29" offsetX ="-1" offsetY ="3" />
+ </animation>
+ <animation direction="right">
+ <frame index="39" offsetY ="2" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="5" end="8" delay="75" offsetY ="2" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="15" end="18" delay="75" offsetY ="2" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="25" end="28" delay="75" offsetX ="-1" offsetY ="3" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="35" end="38" delay="75" offsetY ="2" />
+ <end />
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/monsters/monster-slime.png b/example/graphics/sprites/monsters/monster-slime.png
new file mode 100644
index 00000000..ab14bbb5
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-slime.png
Binary files differ
diff --git a/example/graphics/sprites/monsters/monster-slime.xml b/example/graphics/sprites/monsters/monster-slime.xml
new file mode 100644
index 00000000..220a8e25
--- /dev/null
+++ b/example/graphics/sprites/monsters/monster-slime.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/monsters/monster-slime.png|W" width="52" height="24" />
+
+ <action name="stand" imageset="base">
+ <animation>
+ <frame index="0" offsetY="-4" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="0" end="3" delay="200" offsetY="-4" />
+ </animation>
+ <animation direction="left">
+ <frame index="0" delay="200" offsetY="-4" />
+ <sequence start="10" end="12" delay="200" offsetY="-4" />
+ </animation>
+ <animation direction="up">
+ <frame index="0" delay="200" offsetY="-4" />
+ <sequence start="19" end="21" delay="200" offsetY="-4" />
+ </animation>
+ <animation direction="right">
+ <frame index="0" delay="200" offsetY="-4" />
+ <sequence start="28" end="30" delay="200" offsetY="-4" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation>
+ <frame index="8" offsetY="-4" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="4" end="7" delay="100" offsetY="-4" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="4" end="7" delay="100" offsetY="-4" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="22" end="25" delay="100" offsetY="-4" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="22" end="25" delay="100" offsetY="-4" />
+ <end />
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/npcs/static-npcs.png b/example/graphics/sprites/npcs/static-npcs.png
new file mode 100644
index 00000000..812c88d5
--- /dev/null
+++ b/example/graphics/sprites/npcs/static-npcs.png
Binary files differ
diff --git a/example/graphics/sprites/npcs/static-npcs.xml b/example/graphics/sprites/npcs/static-npcs.xml
new file mode 100644
index 00000000..2cb4d08c
--- /dev/null
+++ b/example/graphics/sprites/npcs/static-npcs.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<sprite variants="100" variant_offset="1">
+ <imageset name="base" src="graphics/sprites/npcs/static-npcs.png" width="50" height="80" />
+
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <frame index="0" />
+ </animation>
+ </action>
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle0.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle0.xml
new file mode 100644
index 00000000..5f06bb2c
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle0.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<sprite>
+ <!--
+ This is the bald hairstyle, hence it should need no imageset and no actions.
+ -->
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle1.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle1.png
new file mode 100644
index 00000000..6bb2657e
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle1.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle1.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle1.xml
new file mode 100644
index 00000000..44b1d4e7
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle1.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle1.png|M" width="40" height="40" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="0" offsetY ="-29" />
+ </animation>
+ <animation direction="left">
+ <frame index="1" offsetX="0" offsetY ="-29"/>
+ </animation>
+ <animation direction="up">
+ <frame index="2" offsetX="-1" offsetY ="-25"/>
+ </animation>
+ <animation direction="right">
+ <frame index="3" offsetX="0" offsetY ="-29"/>
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="0" offsetX="0" offsetY ="-29" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-29" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-29" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-29" delay="75" />
+ </animation>
+ <animation direction="left">
+ <frame index="1" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="1" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="1" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="1" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="1" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="1" offsetX="0" offsetY ="-29" delay="75"/>
+ </animation>
+ <animation direction="up">
+ <frame index="2" offsetX="-1" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-26" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-26" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-26" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-26" delay="75"/>
+ </animation>
+ <animation direction="right">
+ <frame index="3" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-29" delay="75"/>
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="0" offsetY ="-27" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-25" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-24" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <frame index="1" offsetX="4" offsetY ="-30" delay="75" />
+ <frame index="1" offsetX="4" offsetY ="-31" delay="75" />
+ <frame index="1" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="1" offsetX="-1" offsetY ="-27" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <frame index="2" offsetX="-2" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-23" delay="75"/>
+ <end />
+ </animation>
+ <animation direction="right">
+ <frame index="3" offsetX="-3" offsetY ="-30" delay="75"/>
+ <frame index="3" offsetX="-3" offsetY ="-31" delay="75"/>
+ <frame index="3" offsetX="0" offsetY ="-28" delay="75"/>
+ <frame index="3" offsetX="1" offsetY ="-27" delay="75"/>
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-27" delay="75" />
+ <frame index="0" offsetX="0" offsetY ="-28" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <frame index="1" offsetX="3" offsetY ="-29" delay="75" />
+ <frame index="1" offsetX="3" offsetY ="-29" delay="75" />
+ <frame index="1" offsetX="3" offsetY ="-29" delay="75" />
+ <frame index="1" offsetX="5" offsetY ="-30" delay="75" />
+ <frame index="1" offsetX="5" offsetY ="-30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <frame index="2" offsetX="-1" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-1" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-25" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-24" delay="75"/>
+ <frame index="2" offsetX="-2" offsetY ="-25" delay="75"/>
+ <end />
+ </animation>
+ <animation direction="right">
+ <frame index="3" offsetX="-3" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="-3" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="-3" offsetY ="-29" delay="75"/>
+ <frame index="3" offsetX="-5" offsetY ="-30" delay="75"/>
+ <frame index="3" offsetX="-5" offsetY ="-30" delay="75"/>
+ <end />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="0" offsetY ="-17" />
+ </animation>
+ <animation direction="left">
+ <frame index="1" offsetX="4" offsetY ="-20"/>
+ </animation>
+ <animation direction="up">
+ <frame index="2" offsetX="0" offsetY ="-17"/>
+ </animation>
+ <animation direction="right">
+ <frame index="3" offsetX="-6" offsetY ="-20"/>
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="default">
+ <frame index="4" offsetX="21" offsetY="-4"/>
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle10.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle10.png
new file mode 100644
index 00000000..d52924be
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle10.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle10.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle10.xml
new file mode 100644
index 00000000..6460d09f
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle10.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle10.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle11.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle11.png
new file mode 100644
index 00000000..284772de
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle11.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle11.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle11.xml
new file mode 100644
index 00000000..dc73a464
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle11.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle11.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle12.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle12.png
new file mode 100644
index 00000000..03096379
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle12.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle12.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle12.xml
new file mode 100644
index 00000000..f4bea1f9
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle12.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle12.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle13.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle13.png
new file mode 100644
index 00000000..0421089a
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle13.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle13.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle13.xml
new file mode 100644
index 00000000..56caee00
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle13.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle13.png|W" width="32" height="32" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="3" offsetY ="-33" />
+ </animation>
+ <animation direction="left">
+ <frame index="3" offsetX="3" offsetY ="-33"/>
+ </animation>
+ <animation direction="up">
+ <frame index="6" offsetX="3" offsetY ="-33"/>
+ </animation>
+ <animation direction="right">
+ <frame index="9" offsetX="3" offsetY ="-33"/>
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="1" offsetX="3" offsetY ="-33" delay="75" />
+ <frame index="1" offsetX="3" offsetY ="-33" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75" />
+ <frame index="2" offsetX="3" offsetY ="-33" delay="75" />
+ <frame index="2" offsetX="3" offsetY ="-33" delay="75" />
+ </animation>
+ <animation direction="left">
+ <frame index="3" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="4" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="4" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="3" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="5" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="5" offsetX="3" offsetY ="-33" delay="75"/>
+ </animation>
+ <animation direction="up">
+ <frame index="6" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="7" offsetX="3" offsetY ="-34" delay="75"/>
+ <frame index="7" offsetX="3" offsetY ="-34" delay="75"/>
+ <frame index="6" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="8" offsetX="3" offsetY ="-34" delay="75"/>
+ <frame index="8" offsetX="3" offsetY ="-34" delay="75"/>
+ </animation>
+ <animation direction="right">
+ <frame index="9" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="10" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="10" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="9" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="11" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="11" offsetX="3" offsetY ="-33" delay="75"/>
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="3" offsetY ="-30" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-31" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-28" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-27" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <frame index="3" offsetX="7" offsetY ="-34" delay="75" />
+ <frame index="3" offsetX="7" offsetY ="-35" delay="75" />
+ <frame index="3" offsetX="3" offsetY ="-32" delay="75" />
+ <frame index="3" offsetX="2" offsetY ="-31" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <frame index="6" offsetX="2" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-31" delay="75"/>
+ <end />
+ </animation>
+ <animation direction="right">
+ <frame index="9" offsetX="0" offsetY ="-34" delay="75"/>
+ <frame index="9" offsetX="0" offsetY ="-35" delay="75"/>
+ <frame index="9" offsetX="3" offsetY ="-32" delay="75"/>
+ <frame index="9" offsetX="4" offsetY ="-31" delay="75"/>
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-31" delay="75" />
+ <frame index="0" offsetX="3" offsetY ="-32" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <frame index="3" offsetX="6" offsetY ="-33" delay="75" />
+ <frame index="3" offsetX="6" offsetY ="-33" delay="75" />
+ <frame index="3" offsetX="6" offsetY ="-33" delay="75" />
+ <frame index="3" offsetX="8" offsetY ="-34" delay="75" />
+ <frame index="3" offsetX="8" offsetY ="-34" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <frame index="6" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="3" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-33" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-32" delay="75"/>
+ <frame index="6" offsetX="2" offsetY ="-33" delay="75"/>
+ <end />
+ </animation>
+ <animation direction="right">
+ <frame index="9" offsetX="0" offsetY ="-33" delay="75"/>
+ <frame index="9" offsetX="0" offsetY ="-33" delay="75"/>
+ <frame index="9" offsetX="0" offsetY ="-33" delay="75"/>
+ <frame index="9" offsetX="-2" offsetY ="-34" delay="75"/>
+ <frame index="9" offsetX="-2" offsetY ="-34" delay="75"/>
+ <end />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="0" offsetX="3" offsetY ="-21" />
+ </animation>
+ <animation direction="left">
+ <frame index="3" offsetX="7" offsetY ="-24"/>
+ </animation>
+ <animation direction="up">
+ <frame index="6" offsetX="4" offsetY ="-25"/>
+ </animation>
+ <animation direction="right">
+ <frame index="9" offsetX="-3" offsetY ="-24"/>
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="default">
+ <frame index="12" offsetX="23" offsetY="-8"/>
+ </animation>
+ </action>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle14.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle14.png
new file mode 100644
index 00000000..7b4cddd0
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle14.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle14.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle14.xml
new file mode 100644
index 00000000..bc329d02
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle14.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle14.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle15.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle15.png
new file mode 100644
index 00000000..cd77639c
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle15.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle15.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle15.xml
new file mode 100644
index 00000000..0ce52c6c
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle15.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle15.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle16.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle16.png
new file mode 100644
index 00000000..fc13907b
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle16.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle16.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle16.xml
new file mode 100644
index 00000000..9ce2d53a
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle16.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle16.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle2.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle2.png
new file mode 100644
index 00000000..f80ad787
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle2.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle2.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle2.xml
new file mode 100644
index 00000000..c2caf497
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle2.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle2.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle3.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle3.png
new file mode 100644
index 00000000..b04df515
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle3.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle3.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle3.xml
new file mode 100644
index 00000000..f0f0bcda
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle3.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle3.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle4.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle4.png
new file mode 100644
index 00000000..b004080f
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle4.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle4.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle4.xml
new file mode 100644
index 00000000..7943d685
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle4.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle4.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle5.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle5.png
new file mode 100644
index 00000000..d034fe67
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle5.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle5.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle5.xml
new file mode 100644
index 00000000..5a02327b
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle5.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle5.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle6.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle6.png
new file mode 100644
index 00000000..b8710253
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle6.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle6.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle6.xml
new file mode 100644
index 00000000..0ad652c2
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle6.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle6.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle7.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle7.png
new file mode 100644
index 00000000..c3a27ddc
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle7.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle7.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle7.xml
new file mode 100644
index 00000000..aa385f74
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle7.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle7.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle8.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle8.png
new file mode 100644
index 00000000..3c81a1a8
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle8.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle8.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle8.xml
new file mode 100644
index 00000000..c2be3b02
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle8.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle8.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle9.png b/example/graphics/sprites/races/humans/hairstyles/hairstyle9.png
new file mode 100644
index 00000000..01bc3606
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle9.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/hairstyles/hairstyle9.xml b/example/graphics/sprites/races/humans/hairstyles/hairstyle9.xml
new file mode 100644
index 00000000..787df6d4
--- /dev/null
+++ b/example/graphics/sprites/races/humans/hairstyles/hairstyle9.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<sprite>
+
+ <imageset name="base" src="graphics/sprites/races/humans/hairstyles/hairstyle9.png|W" width="40" height="40" />
+
+ <include file="races/humans/hairstyles/hairstyle1.xml"/>
+
+</sprite>
diff --git a/example/graphics/sprites/races/humans/human_female_base.png b/example/graphics/sprites/races/humans/human_female_base.png
new file mode 100644
index 00000000..c4c0a80b
--- /dev/null
+++ b/example/graphics/sprites/races/humans/human_female_base.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/human_female_base.xml b/example/graphics/sprites/races/humans/human_female_base.xml
new file mode 100644
index 00000000..1d0ffeaa
--- /dev/null
+++ b/example/graphics/sprites/races/humans/human_female_base.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base" src="graphics/sprites/races/humans/human_female_base.png" width="64" height="64" />
+
+ <action name="stand" imageset="base">
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/races/humans/human_male_base.png b/example/graphics/sprites/races/humans/human_male_base.png
new file mode 100644
index 00000000..72b9b375
--- /dev/null
+++ b/example/graphics/sprites/races/humans/human_male_base.png
Binary files differ
diff --git a/example/graphics/sprites/races/humans/human_male_base.xml b/example/graphics/sprites/races/humans/human_male_base.xml
new file mode 100644
index 00000000..fe495ddc
--- /dev/null
+++ b/example/graphics/sprites/races/humans/human_male_base.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+
+ <imageset name="base"
+ src= "graphics/sprites/races/humans/human_male_base.png"
+ width= "64"
+ height= "64"
+ />
+
+ <action name = "stand"
+ imageset = "base"
+ >
+ <animation direction="down">
+ <frame index="0" />
+ </animation>
+ <animation direction="left">
+ <frame index="18" />
+ </animation>
+ <animation direction="up">
+ <frame index="36" />
+ </animation>
+ <animation direction="right">
+ <frame index="54" />
+ </animation>
+ </action>
+
+ <action name="walk" imageset="base">
+ <animation direction="down">
+ <sequence start="1" end="6" delay="75" />
+ </animation>
+ <animation direction="left">
+ <sequence start="19" end="24" delay="75" />
+ </animation>
+ <animation direction="up">
+ <sequence start="37" end="42" delay="75" />
+ </animation>
+ <animation direction="right">
+ <sequence start="55" end="60" delay="75" />
+ </animation>
+ </action>
+
+ <action name="sit" imageset="base">
+ <animation direction="down">
+ <frame index="7" />
+ </animation>
+ <animation direction="left">
+ <frame index="25" />
+ </animation>
+ <animation direction="up">
+ <frame index="43" />
+ </animation>
+ <animation direction="right">
+ <frame index="61" />
+ </animation>
+ </action>
+
+ <action name="dead" imageset="base">
+ <animation direction="down">
+ <frame index="8" />
+ </animation>
+ <animation direction="left">
+ <frame index="26" />
+ </animation>
+ <animation direction="up">
+ <frame index="44" />
+ </animation>
+ <animation direction="right">
+ <frame index="62" />
+ </animation>
+ </action>
+
+ <action name="attack" imageset="base">
+ <animation direction="down">
+ <sequence start="9" end="12" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="27" end="30" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="45" end="48" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="63" end="66" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+ <action name="attack_bow" imageset="base">
+ <animation direction="down">
+ <sequence start="13" end="17" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="31" end="35" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="49" end="53" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="67" end="71" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/weapons/weapon-bow.png b/example/graphics/sprites/weapons/weapon-bow.png
new file mode 100644
index 00000000..b5f8a68e
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-bow.png
Binary files differ
diff --git a/example/graphics/sprites/weapons/weapon-bow.xml b/example/graphics/sprites/weapons/weapon-bow.xml
new file mode 100644
index 00000000..7580776c
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-bow.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+ <imageset name="bow" src="graphics/sprites/weapons/weapon-bow.png" width="64" height="64" />
+
+ <action name="default" imageset="bow">
+ </action>
+
+ <action name="attack_bow" imageset="bow">
+ <animation direction="down">
+ <sequence start="0" end="4" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="5" end="9" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="10" end="14" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="15" end="19" delay="75" />
+ <end />
+ </animation>
+ </action>
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/weapons/weapon-dagger.xml b/example/graphics/sprites/weapons/weapon-dagger.xml
new file mode 100644
index 00000000..1909aff6
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-dagger.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+ <imageset name="dagger" src="graphics/sprites/weapons/weapon-sword.png" width="64" height="64" />
+
+ <action name="default" imageset="dagger">
+ </action>
+
+ <action name="attack_stab" imageset="dagger">
+ <animation direction="down">
+ <sequence start="0" end="3" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="4" end="7" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="8" end="11" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="12" end="15" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/weapons/weapon-fist.xml b/example/graphics/sprites/weapons/weapon-fist.xml
new file mode 100644
index 00000000..324dfd5b
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-fist.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+ <imageset name="dagger" src="graphics/sprites/weapon-sword.png" width="64" height="64" />
+
+ <action name="default" imageset="dagger">
+ </action>
+</sprite> \ No newline at end of file
diff --git a/example/graphics/sprites/weapons/weapon-sword.png b/example/graphics/sprites/weapons/weapon-sword.png
new file mode 100644
index 00000000..f691ef3f
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-sword.png
Binary files differ
diff --git a/example/graphics/sprites/weapons/weapon-sword.xml b/example/graphics/sprites/weapons/weapon-sword.xml
new file mode 100644
index 00000000..1909aff6
--- /dev/null
+++ b/example/graphics/sprites/weapons/weapon-sword.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<sprite name="player" action="stand">
+ <imageset name="dagger" src="graphics/sprites/weapons/weapon-sword.png" width="64" height="64" />
+
+ <action name="default" imageset="dagger">
+ </action>
+
+ <action name="attack_stab" imageset="dagger">
+ <animation direction="down">
+ <sequence start="0" end="3" delay="75" />
+ <end />
+ </animation>
+ <animation direction="left">
+ <sequence start="4" end="7" delay="75" />
+ <end />
+ </animation>
+ <animation direction="up">
+ <sequence start="8" end="11" delay="75" />
+ <end />
+ </animation>
+ <animation direction="right">
+ <sequence start="12" end="15" delay="75" />
+ <end />
+ </animation>
+ </action>
+
+</sprite> \ No newline at end of file