summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml6
-rwxr-xr-x.tools/contributors.sh24
-rw-r--r--LICENSE16
-rw-r--r--graphics/sprites/npcs/sprite/chronos.pngbin0 -> 3603 bytes
-rw-r--r--graphics/sprites/npcs/sprite/creepysurgeon.pngbin0 -> 26154 bytes
-rw-r--r--graphics/sprites/npcs/sprite/cryingchild.pngbin0 -> 3547 bytes
-rw-r--r--graphics/sprites/npcs/sprite/ghost-beerguy.pngbin0 -> 9806 bytes
-rw-r--r--graphics/sprites/npcs/sprite/ghost-innkeeper.pngbin0 -> 20925 bytes
-rw-r--r--graphics/sprites/npcs/sprite/hangman.pngbin0 -> 12564 bytes
-rw-r--r--graphics/sprites/npcs/sprite/headlessman.pngbin0 -> 8615 bytes
-rw-r--r--graphics/sprites/npcs/sprite/lightman.pngbin0 -> 27192 bytes
-rw-r--r--graphics/sprites/npcs/sprite/unanimated-legacy-tall.pngbin19362 -> 33209 bytes
-rw-r--r--graphics/sprites/npcs/sprite/unanimated-legacy.pngbin144045 -> 173325 bytes
-rw-r--r--graphics/sprites/npcs/sprite/undead-banker.pngbin0 -> 3288 bytes
-rw-r--r--graphics/sprites/npcs/sprite/undead-guard.pngbin0 -> 14101 bytes
-rw-r--r--graphics/sprites/npcs/sprite/undead-mouboo-master.pngbin0 -> 14809 bytes
-rw-r--r--graphics/sprites/npcs/sprite/undead-receptionist.pngbin0 -> 7885 bytes
-rw-r--r--graphics/sprites/npcs/xml/chronos.xml18
-rw-r--r--graphics/sprites/npcs/xml/creepysurgeon.xml28
-rw-r--r--graphics/sprites/npcs/xml/cryingchild.xml15
-rw-r--r--graphics/sprites/npcs/xml/ghost-beerguy.xml21
-rw-r--r--graphics/sprites/npcs/xml/ghost-innkeeper.xml25
-rw-r--r--graphics/sprites/npcs/xml/hangman.xml29
-rw-r--r--graphics/sprites/npcs/xml/headlessman.xml29
-rw-r--r--graphics/sprites/npcs/xml/lightman.xml29
-rw-r--r--graphics/sprites/npcs/xml/unanimated-legacy-tall.xml2
-rw-r--r--graphics/sprites/npcs/xml/unanimated-legacy.xml2
-rw-r--r--graphics/sprites/npcs/xml/undead-banker.xml16
-rw-r--r--graphics/sprites/npcs/xml/undead-guard.xml22
-rw-r--r--graphics/sprites/npcs/xml/undead-mouboomaster.xml33
-rw-r--r--graphics/sprites/npcs/xml/undead-receptionist.xml18
-rw-r--r--items.xml4
-rw-r--r--npcs.xml131
-rw-r--r--sfx/weapons/knife-setzer/hit1.oggbin0 -> 9201 bytes
-rw-r--r--sfx/weapons/knife-setzer/hit2.oggbin0 -> 11311 bytes
-rw-r--r--sfx/weapons/knife-setzer/hit3.oggbin0 -> 10372 bytes
36 files changed, 436 insertions, 32 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cad8194a..df624bd7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -14,12 +14,6 @@ testxml:
- ./.tools/testxml.sh
- pwd
-contributors:
- stage: test
- script:
- - ./.tools/contributors.sh
- - pwd
-
pngcheck:
stage: test
script:
diff --git a/.tools/contributors.sh b/.tools/contributors.sh
deleted file mode 100755
index 487c3cb4..00000000
--- a/.tools/contributors.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/bash
-
-source ./.tools/init.sh
-
-clientdata_init
-
-aptget_update
-aptget_install git-core gcc ca-certificates libxml2-utils make xsltproc
-rm -rf tools
-gitclone https://gitlab.com/evol evol-tools.git tools
-
-cd tools/contrib_xsl
-
-make about-server
-check_error $?
-
-cd ../../clientdata
-
-export RES=$(git diff)
-if [[ -n "${RES}" ]]; then
- echo "Contributors list not updated"
- git diff
- exit 1
-fi
diff --git a/LICENSE b/LICENSE
index d9a688c8..b4dfa293 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1118,7 +1118,10 @@ legal@themanaworld.org
graphics/sprites/npcs/sprite/chest.png (Hal9000) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/chest2.png (Hal9000) (CC BY-SA 3.0) (Micksha)
graphics/sprites/npcs/sprite/chest-big.png (Hal9000) (CC BY-SA 3.0) (-)
+ graphics/sprites/npcs/sprite/chronos.png (Lien) (GPLv2) (-)
graphics/sprites/npcs/sprite/cookiemaster.png (Hal9000, Reid) (CC BY-SA 3.0) (Alige)
+ graphics/sprites/npcs/sprite/creepysurgeon.png (Modanung) (CC BY-SA 3.0, GPLv2) (-)
+ graphics/sprites/npcs/sprite/cryingchild.png (Lien, Reid) (GPLv2) (-)
graphics/sprites/npcs/sprite/edouard.png (Kr0n0) (CC BY-SA 3.0) (Alige, Reid)
graphics/sprites/npcs/sprite/elmo.png (Reid) (CC BY-SA 3.0) (Modanung, Talaroc)
graphics/sprites/npcs/sprite/eugene.png (Reid) (CC BY-SA 3.0) (Kansu)
@@ -1126,16 +1129,21 @@ legal@themanaworld.org
graphics/sprites/npcs/sprite/flag-small.png (Micksha) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/flask.png (Hal9000) (CC BY-SA 3.0) (Reid)
graphics/sprites/npcs/sprite/galimatia.png (Micksha) (CC BY-SA 3.0) (-)
+ graphics/sprites/npcs/sprite/ghost-beerguy.png (Reid, Skipy) (GPLv2) (-)
+ graphics/sprites/npcs/sprite/ghost-innkeeper.png (Reid) (CC BY-SA 3.0, GPLv2) (-)
graphics/sprites/npcs/sprite/gugli.png (Reid) (CC BY-SA 3.0) (Modanung, Talaroc)
graphics/sprites/npcs/sprite/harbour.png (EJlol, Reid) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/hammock.png (IvanMorve) (CC BY-SA 3.0) (Reid)
graphics/sprites/npcs/sprite/hammock-animated.png (IvanMorve) (CC BY-SA 3.0) (Reid)
+ graphics/sprites/npcs/sprite/hangman.png (Reid, Skipy) (GPLv2) (-)
+ graphics/sprites/npcs/sprite/headlessman.png (Reid, Skipy) (GPLv2) (-)
graphics/sprites/npcs/sprite/hinnak.png (Micksha) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/interactive.png (Hal9000, Modanung, Reid) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/jenna.png (Reid) (CC BY-SA 3.0) (-)
graphics/sprites/npcs/sprite/jukebox.png (Hocus) (MIT) (Hocus)
graphics/sprites/npcs/sprite/julia.png (Reid) (CC BY-SA 3.0) (Modanung)
graphics/sprites/npcs/sprite/koga.png (?) (GPLv2) (Micksha)
+ graphics/sprites/npcs/sprite/lightman.png (Lien) (GPLv2) (-)
graphics/sprites/npcs/sprite/lumberjack.png (Crush) (CC BY-SA 3.0) (Micksha)
graphics/sprites/npcs/sprite/lydon.png (Reid) (CC BY-SA 3.0) (Modanung)
graphics/sprites/npcs/sprite/magicarpan.png (Reid) (CC BY-SA 3.0) (Len, Modanung)
@@ -1163,6 +1171,10 @@ legal@themanaworld.org
graphics/sprites/npcs/sprite/unanimated-legacy.png (LEGACY) (GPLv2?) (Micksha)
graphics/sprites/npcs/sprite/unanimated-legacy-tall.png (LEGACY) (GPLv2?) (-)
graphics/sprites/npcs/sprite/unanimated-tall.png (Modanung, Nard, Reid) (GPLv2) (Yuuki)
+ graphics/sprites/npcs/sprite/undead-banker.png (Reid) (CC BY-SA 3.0, GPLv2) (-)
+ graphics/sprites/npcs/sprite/undead-guard.png (Skipy) (GPLv2) (-)
+ graphics/sprites/npcs/sprite/undead-mouboo-master.png (LEGACY) (GPLv2) (-)
+ graphics/sprites/npcs/sprite/undead-receptionist.png (Skipy) (GPLv2) (-)
graphics/sprites/npcs/sprite/valia.png (LEGACY) (GPLv2) (Micksha)
## Races
graphics/sprites/races/demon-female.png (Modanung, Talaroc) (CC BY-SA 3.0) (Alige, Reid, Saphy)
@@ -1581,6 +1593,10 @@ legal@themanaworld.org
### Knife
sfx/weapons/knife/hit1.ogg (Cosmostrator) (CC BY-SA 3.0) (Socapex)
sfx/weapons/knife/miss1.ogg (Cosmostrator) (CC BY-SA 3.0) (Socapex)
+### Setzer
+ sfx/weapons/knife-setzer/hit1.ogg (Ledmitz) (CC BY-SA 3.0) (Ledmitz)
+ sfx/weapons/knife-setzer/hit2.ogg (Ledmitz) (CC BY-SA 3.0) (Ledmitz)
+ sfx/weapons/knife-setzer/hit3.ogg (Ledmitz) (CC BY-SA 3.0) (Ledmitz)
### Piouslayer
sfx/weapons/piouslayer/hit1.ogg (Cosmostrator) (CC BY-SA 3.0) (Socapex)
sfx/weapons/piouslayer/miss1.ogg (Cosmostrator) (CC BY-SA 3.0) (Socapex)
diff --git a/graphics/sprites/npcs/sprite/chronos.png b/graphics/sprites/npcs/sprite/chronos.png
new file mode 100644
index 00000000..fd9eb845
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/chronos.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/creepysurgeon.png b/graphics/sprites/npcs/sprite/creepysurgeon.png
new file mode 100644
index 00000000..60c650d0
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/creepysurgeon.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/cryingchild.png b/graphics/sprites/npcs/sprite/cryingchild.png
new file mode 100644
index 00000000..e839bd01
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/cryingchild.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/ghost-beerguy.png b/graphics/sprites/npcs/sprite/ghost-beerguy.png
new file mode 100644
index 00000000..5b614ac6
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/ghost-beerguy.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/ghost-innkeeper.png b/graphics/sprites/npcs/sprite/ghost-innkeeper.png
new file mode 100644
index 00000000..e78b88e8
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/ghost-innkeeper.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/hangman.png b/graphics/sprites/npcs/sprite/hangman.png
new file mode 100644
index 00000000..90973a7d
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/hangman.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/headlessman.png b/graphics/sprites/npcs/sprite/headlessman.png
new file mode 100644
index 00000000..c5370b8c
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/headlessman.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/lightman.png b/graphics/sprites/npcs/sprite/lightman.png
new file mode 100644
index 00000000..a91afec7
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/lightman.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/unanimated-legacy-tall.png b/graphics/sprites/npcs/sprite/unanimated-legacy-tall.png
index 3de447f6..01080ca1 100644
--- a/graphics/sprites/npcs/sprite/unanimated-legacy-tall.png
+++ b/graphics/sprites/npcs/sprite/unanimated-legacy-tall.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/unanimated-legacy.png b/graphics/sprites/npcs/sprite/unanimated-legacy.png
index f0f6ec0a..8a4fe984 100644
--- a/graphics/sprites/npcs/sprite/unanimated-legacy.png
+++ b/graphics/sprites/npcs/sprite/unanimated-legacy.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/undead-banker.png b/graphics/sprites/npcs/sprite/undead-banker.png
new file mode 100644
index 00000000..54691e5d
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/undead-banker.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/undead-guard.png b/graphics/sprites/npcs/sprite/undead-guard.png
new file mode 100644
index 00000000..60319fbc
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/undead-guard.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/undead-mouboo-master.png b/graphics/sprites/npcs/sprite/undead-mouboo-master.png
new file mode 100644
index 00000000..ca14a6d4
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/undead-mouboo-master.png
Binary files differ
diff --git a/graphics/sprites/npcs/sprite/undead-receptionist.png b/graphics/sprites/npcs/sprite/undead-receptionist.png
new file mode 100644
index 00000000..8d8fa2ca
--- /dev/null
+++ b/graphics/sprites/npcs/sprite/undead-receptionist.png
Binary files differ
diff --git a/graphics/sprites/npcs/xml/chronos.xml b/graphics/sprites/npcs/xml/chronos.xml
new file mode 100644
index 00000000..603c4f42
--- /dev/null
+++ b/graphics/sprites/npcs/xml/chronos.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/chronos.png" width="50" height="64"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Chronos -->
+ <frame index="0" delay="1000"/>
+ <frame index="1" delay="1000"/>
+ <frame index="2" delay="1000"/>
+ <frame index="3" delay="1000"/>
+ <frame index="4" delay="1000"/>
+ <frame index="5" delay="1000"/>
+ <frame index="6" delay="1000"/>
+ <frame index="7" delay="1000"/>
+ <frame index="8" delay="1000"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/creepysurgeon.xml b/graphics/sprites/npcs/xml/creepysurgeon.xml
new file mode 100644
index 00000000..50be6f8d
--- /dev/null
+++ b/graphics/sprites/npcs/xml/creepysurgeon.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/creepysurgeon.png" width="50" height="70"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Scissor demonstration -->
+ <sequence start="1" end="9" delay="200"/>
+ <frame index="10" delay="500"/>
+ <frame index="11" delay="500"/>
+ <frame index="10" delay="500"/>
+ <frame index="11" delay="500"/>
+ <frame index="10" delay="500"/>
+ <frame index="11" delay="500"/>
+ <frame index="10" delay="500"/>
+ <frame index="12" delay="300"/>
+ <frame index="13" delay="1000"/>
+ <sequence start="14" end="16" delay="400"/>
+ <frame index="0" delay="3000"/>
+ <!-- blinking -->
+ <frame index="19" delay="500"/>
+ <frame index="0" delay="3000"/>
+ <!-- checking pocket -->
+ <frame index="12" delay="1000"/>
+ <sequence start="14" end="16" delay="400"/>
+ <frame index="0" delay="3000"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/cryingchild.xml b/graphics/sprites/npcs/xml/cryingchild.xml
new file mode 100644
index 00000000..b8ebee48
--- /dev/null
+++ b/graphics/sprites/npcs/xml/cryingchild.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/cryingchild.png" width="30" height="50"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Crying child animation -->
+ <frame index="0" delay="180"/>
+ <frame index="1" delay="180"/>
+ <frame index="2" delay="180"/>
+ <frame index="3" delay="180"/>
+ <frame index="4" delay="180"/>
+ <frame index="5" delay="180"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/ghost-beerguy.xml b/graphics/sprites/npcs/xml/ghost-beerguy.xml
new file mode 100644
index 00000000..a2169fb2
--- /dev/null
+++ b/graphics/sprites/npcs/xml/ghost-beerguy.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/ghost-beerguy.png" width="32" height="118"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Ghost beer -->
+ <frame index="0" delay="225"/>
+ <frame index="1" delay="225"/>
+ <frame index="2" delay="225"/>
+ <frame index="3" delay="225"/>
+ <frame index="4" delay="225"/>
+ <frame index="5" delay="225"/>
+ <frame index="6" delay="225"/>
+ <frame index="7" delay="225"/>
+ <frame index="8" delay="225"/>
+ <frame index="9" delay="225"/>
+ <frame index="10" delay="225"/>
+ <frame index="11" delay="225"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/ghost-innkeeper.xml b/graphics/sprites/npcs/xml/ghost-innkeeper.xml
new file mode 100644
index 00000000..1baf5f9e
--- /dev/null
+++ b/graphics/sprites/npcs/xml/ghost-innkeeper.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/ghost-innkeeper.png" width="64" height="96"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Ghost -->
+ <frame index="0" delay="190"/>
+ <frame index="1" delay="190"/>
+ <frame index="2" delay="190"/>
+ <frame index="3" delay="190"/>
+ <frame index="4" delay="190"/>
+ <frame index="5" delay="190"/>
+ <frame index="6" delay="190"/>
+ <frame index="7" delay="190"/>
+ <frame index="8" delay="190"/>
+ <frame index="9" delay="190"/>
+ <frame index="10" delay="190"/>
+ <frame index="11" delay="190"/>
+ <frame index="12" delay="190"/>
+ <frame index="13" delay="190"/>
+ <frame index="14" delay="190"/>
+ <frame index="15" delay="190"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/hangman.xml b/graphics/sprites/npcs/xml/hangman.xml
new file mode 100644
index 00000000..ed1b9c88
--- /dev/null
+++ b/graphics/sprites/npcs/xml/hangman.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/hangman.png" width="33" height="70"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Hanghead -->
+ <frame index="0" delay="500"/>
+ <frame index="1" delay="100"/>
+ <frame index="2" delay="100"/>
+ <frame index="3" delay="100"/>
+ <frame index="4" delay="100"/>
+ <frame index="5" delay="100"/>
+ <frame index="7" delay="100"/>
+ <frame index="6" delay="80"/>
+ <frame index="7" delay="300"/>
+ <frame index="5" delay="100"/>
+ <frame index="4" delay="100"/>
+ <frame index="3" delay="100"/>
+ <frame index="2" delay="100"/>
+ <frame index="1" delay="100"/>
+ <frame index="9" delay="80"/>
+ <frame index="8" delay="100"/>
+ <frame index="9" delay="80"/>
+ <frame index="8" delay="100"/>
+ <frame index="9" delay="80"/>
+ <frame index="0" delay="100"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/headlessman.xml b/graphics/sprites/npcs/xml/headlessman.xml
new file mode 100644
index 00000000..47500ffb
--- /dev/null
+++ b/graphics/sprites/npcs/xml/headlessman.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/headlessman.png" width="40" height="60"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Head animation -->
+ <frame index="0" delay="300"/>
+ <frame index="1" delay="100"/>
+ <frame index="2" delay="100"/>
+ <frame index="3" delay="100"/>
+ <frame index="4" delay="100"/>
+ <frame index="5" delay="100"/>
+ <frame index="6" delay="100"/>
+ <frame index="7" delay="100"/>
+ <frame index="8" delay="100"/>
+ <frame index="9" delay="200"/>
+ <frame index="19" delay="200"/>
+ <frame index="18" delay="100"/>
+ <frame index="17" delay="100"/>
+ <frame index="16" delay="100"/>
+ <frame index="15" delay="100"/>
+ <frame index="14" delay="100"/>
+ <frame index="13" delay="100"/>
+ <frame index="12" delay="100"/>
+ <frame index="11" delay="100"/>
+ <frame index="10" delay="100"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/lightman.xml b/graphics/sprites/npcs/xml/lightman.xml
new file mode 100644
index 00000000..baa9d7c9
--- /dev/null
+++ b/graphics/sprites/npcs/xml/lightman.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/lightman.png" width="50" height="80"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Light animation -->
+ <frame index="0" delay="80"/>
+ <frame index="1" delay="80"/>
+ <frame index="2" delay="80"/>
+ <frame index="3" delay="80"/>
+ <frame index="4" delay="80"/>
+ <frame index="5" delay="80"/>
+ <frame index="6" delay="80"/>
+ <frame index="7" delay="80"/>
+ <frame index="8" delay="80"/>
+ <frame index="9" delay="80"/>
+ <frame index="10" delay="80"/>
+ <frame index="11" delay="80"/>
+ <frame index="12" delay="80"/>
+ <frame index="13" delay="80"/>
+ <frame index="14" delay="80"/>
+ <frame index="15" delay="80"/>
+ <frame index="16" delay="80"/>
+ <frame index="17" delay="80"/>
+ <frame index="18" delay="80"/>
+ <frame index="19" delay="80"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/unanimated-legacy-tall.xml b/graphics/sprites/npcs/xml/unanimated-legacy-tall.xml
index ac4bb5e6..0880f183 100644
--- a/graphics/sprites/npcs/xml/unanimated-legacy-tall.xml
+++ b/graphics/sprites/npcs/xml/unanimated-legacy-tall.xml
@@ -2,7 +2,7 @@
<!-- Author: Reid, Micksha
Copyright (C) 2015-2018 Evol Online -->
-<sprite variants="7" variant_offset="1">
+<sprite variants="10" variant_offset="1">
<imageset name="npc"
src="graphics/sprites/npcs/sprite/unanimated-legacy-tall.png"
width="64"
diff --git a/graphics/sprites/npcs/xml/unanimated-legacy.xml b/graphics/sprites/npcs/xml/unanimated-legacy.xml
index d8ee127b..72b29557 100644
--- a/graphics/sprites/npcs/xml/unanimated-legacy.xml
+++ b/graphics/sprites/npcs/xml/unanimated-legacy.xml
@@ -2,7 +2,7 @@
<!-- Author: Reid, Micksha
Copyright (C) 2018 Evol Online -->
-<sprite variants="59" variant_offset="1">
+<sprite variants="70" variant_offset="1">
<imageset name="npc"
src="graphics/sprites/npcs/sprite/unanimated-legacy.png|S"
width="64"
diff --git a/graphics/sprites/npcs/xml/undead-banker.xml b/graphics/sprites/npcs/xml/undead-banker.xml
new file mode 100644
index 00000000..6ba358d7
--- /dev/null
+++ b/graphics/sprites/npcs/xml/undead-banker.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/undead-banker.png" width="32" height="64"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Banker Blood -->
+ <frame index="0" delay="500"/>
+ <frame index="1" delay="80"/>
+ <frame index="2" delay="80"/>
+ <frame index="3" delay="80"/>
+ <frame index="4" delay="80"/>
+ <frame index="5" delay="80"/>
+ <frame index="6" delay="80"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/undead-guard.xml b/graphics/sprites/npcs/xml/undead-guard.xml
new file mode 100644
index 00000000..097c16d3
--- /dev/null
+++ b/graphics/sprites/npcs/xml/undead-guard.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/undead-guard.png" width="67" height="68"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Bloody Eyes -->
+ <frame index="0" delay="500"/>
+ <frame index="1" delay="90"/>
+ <frame index="2" delay="90"/>
+ <frame index="3" delay="90"/>
+ <frame index="4" delay="90"/>
+ <frame index="5" delay="90"/>
+ <frame index="6" delay="90"/>
+ <frame index="7" delay="90"/>
+ <frame index="8" delay="90"/>
+ <frame index="9" delay="90"/>
+ <frame index="10" delay="90"/>
+ <frame index="11" delay="90"/>
+ <frame index="12" delay="90"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/undead-mouboomaster.xml b/graphics/sprites/npcs/xml/undead-mouboomaster.xml
new file mode 100644
index 00000000..c8603793
--- /dev/null
+++ b/graphics/sprites/npcs/xml/undead-mouboomaster.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Author: Micksha
+Copyright (C) 2020 Evol Online -->
+
+<sprite>
+ <imageset name="npc"
+ src="graphics/sprites/npcs/sprite/undead-mouboo-master.png"
+ width="160"
+ height="64"/>
+
+ <action name="stand" imageset="npc">
+ <animation direction="default">
+ <label name="start"/>
+ <goto label="static" rand="90"/>
+ <goto label="pull" rand="100"/>
+
+ <!-- static -->
+ <label name="static"/>
+ <frame index="2" delay="2000"/>
+ <goto label="start"/>
+
+ <!-- pull -->
+ <label name="pull"/>
+ <frame index="2" delay="200"/>
+ <frame index="1" delay="100"/>
+ <frame index="0" delay="100"/>
+ <frame index="1" delay="100"/>
+ <frame index="2" delay="200"/>
+ <goto label="start"/>
+
+ </animation>
+ </action>
+</sprite>
diff --git a/graphics/sprites/npcs/xml/undead-receptionist.xml b/graphics/sprites/npcs/xml/undead-receptionist.xml
new file mode 100644
index 00000000..bbc78b80
--- /dev/null
+++ b/graphics/sprites/npcs/xml/undead-receptionist.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<sprite>
+ <imageset name="base" src="graphics/sprites/npcs/sprite/undead-receptionist.png" width="32" height="64"/>
+ <action name="stand" imageset="base">
+ <animation direction="default">
+ <!-- Bloody body -->
+ <frame index="0" delay="500"/>
+ <frame index="1" delay="370"/>
+ <frame index="2" delay="330"/>
+ <frame index="3" delay="320"/>
+ <frame index="4" delay="340"/>
+ <frame index="5" delay="320"/>
+ <frame index="6" delay="330"/>
+ <frame index="7" delay="370"/>
+ <frame index="8" delay="500"/>
+ </animation>
+ </action>
+</sprite>
diff --git a/items.xml b/items.xml
index 2fbf1405..f6e6b0da 100644
--- a/items.xml
+++ b/items.xml
@@ -3545,6 +3545,10 @@ Colors for dyeable equipments or items are now set up by itemcolors.xml.
attack-action="attack"
weight="250">
<sprite>equipment/weapons/piouslayer.xml</sprite>
+ <sound event="hit">weapons/knife-setzer/hit1.ogg</sound>
+ <sound event="hit">weapons/knife-setzer/hit2.ogg</sound>
+ <sound event="hit">weapons/knife-setzer/hit3.ogg</sound>
+ <sound event="miss">weapons/knife/miss1.ogg</sound>
</item>
<item id="3510"
image="equipment/weapons/pickaxe.png"
diff --git a/npcs.xml b/npcs.xml
index 8bc8a139..c8367ed1 100644
--- a/npcs.xml
+++ b/npcs.xml
@@ -668,6 +668,76 @@ IDs 900-999 = Special
<sprite>npcs/xml/tiki.xml</sprite>
<menu name="Talk" command="talk 'NAME'"/>
</npc>
+ <npc id="231">
+ <!-- Golbenez. No more info required. -->
+ <sprite variant="7">npcs/xml/unanimated-legacy-tall.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="232">
+ <!-- Chef, The undead chef. -->
+ <sprite variant="8">npcs/xml/unanimated-legacy-tall.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="233">
+ <!-- Archibald, Chef's Apprentice. -->
+ <sprite variant="8">npcs/xml/unanimated-legacy-tall.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="234">
+ <!-- Leofwin, the Asphodel Moor Alchemist. -->
+ <sprite variant="59">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="235">
+ <!-- Umfrey, a trader in Asphodel Moor. -->
+ <sprite variant="60">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="236">
+ <!-- Lovers, laying in a bed in Asphodel Moor. -->
+ <sprite variant="61">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="237">
+ <!-- Barbara, a skel Lady in Asphodel Moor. -->
+ <sprite variant="62">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="238">
+ <!-- Wolfgang, a game-addicted werewolf in Asphodel Moor. -->
+ <sprite variant="63">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="239">
+ <!-- Bennet, a skeleton behind a desk. -->
+ <sprite variant="64">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="240">
+ <!-- Edwin, another skeleton behind a desk. -->
+ <sprite variant="65">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="241">
+ <!-- Darnel, a totally drunk undead..? After all, he still got beer. -->
+ <sprite variant="66">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="242">
+ <!-- Estrilda, Waitress in the Inn in Asphodel Moor. -->
+ <sprite variant="67">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="243">
+ <!-- The one and only Caretaker. -->
+ <sprite variant="68">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="244">
+ <!-- The Caretaker's Wife. A bit not so alive, unfortunately. -->
+ <sprite variant="69">npcs/xml/unanimated-legacy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
<!-- Animated NPCs -->
@@ -1178,6 +1248,67 @@ IDs 900-999 = Special
<particlefx>graphics/particles/circle-magic.xml</particlefx>
<menu name="Summon" command="talk 'NAME'"/>
</npc>
+ <npc id="479">
+ <!-- The formerly unused undead Mouboo Master. Mmh undead Mouboo steak. -->
+ <sprite>npcs/xml/undead-mouboomaster.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="480">
+ <!-- The undead receptionist, formerly known as Barbara Grey. -->
+ <sprite>npcs/xml/undead-receptionist.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="481">
+ <!-- The strange guards from Asphodel Moor. Feel free to not use them. -->
+ <sprite>npcs/xml/undead-guard.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="482">
+ <!-- J.P. Morbid, the undead banker in Asphodel Moor. -->
+ <sprite>npcs/xml/undead-banker.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="483">
+ <!-- Hamond, the man holding a lantern in the Moor. -->
+ <sprite>npcs/xml/lightman.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="484">
+ <!-- Thurstan, that weird guy carrying his head around. In his hands. -->
+ <sprite>npcs/xml/headlessman.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="485">
+ <!-- Nothing to see here, just some guy formerly known as Savaric hanging around. -->
+ <sprite>npcs/xml/hangman.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="486">
+ <!-- Reid's Ghost. -->
+ <sprite>npcs/xml/ghost-innkeeper.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="487">
+ <!-- Nigel. If there is still any question if alcohol is bad - yes, it is. -->
+ <sprite>npcs/xml/ghost-beerguy.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="488">
+ <!-- Eurni. Need boobs? Three of them? A whale's dick? Eurni cares about you. -->
+ <sprite>npcs/xml/creepysurgeon.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="489">
+ <!-- Chronos. Formerly unused I think, but if you need to travel in time he may be the guy to ask. -->
+ <sprite>npcs/xml/chronos.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+ <npc id="490">
+ <!-- A crying child. Did not see much sun lately. -->
+ <sprite>npcs/xml/cryingchild.xml</sprite>
+ <menu name="Talk" command="talk 'NAME'"/>
+ </npc>
+
<!-- Test NPCs -->
diff --git a/sfx/weapons/knife-setzer/hit1.ogg b/sfx/weapons/knife-setzer/hit1.ogg
new file mode 100644
index 00000000..26695069
--- /dev/null
+++ b/sfx/weapons/knife-setzer/hit1.ogg
Binary files differ
diff --git a/sfx/weapons/knife-setzer/hit2.ogg b/sfx/weapons/knife-setzer/hit2.ogg
new file mode 100644
index 00000000..b9409ec5
--- /dev/null
+++ b/sfx/weapons/knife-setzer/hit2.ogg
Binary files differ
diff --git a/sfx/weapons/knife-setzer/hit3.ogg b/sfx/weapons/knife-setzer/hit3.ogg
new file mode 100644
index 00000000..91ee7ad4
--- /dev/null
+++ b/sfx/weapons/knife-setzer/hit3.ogg
Binary files differ