summaryrefslogtreecommitdiff
path: root/src/map/npc.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-07 17:43:53 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-07 17:43:53 +0000
commit184f0ed51d24cbc1eac68becfadfa6c7e50e9403 (patch)
treeb1d213b9be05f21108fac92b86fb1b8eb8ef2f81 /src/map/npc.c
parent1af5eb4ad8b5a03e430772ececf37f3986d0d537 (diff)
downloadhercules-184f0ed51d24cbc1eac68becfadfa6c7e50e9403.tar.gz
hercules-184f0ed51d24cbc1eac68becfadfa6c7e50e9403.tar.bz2
hercules-184f0ed51d24cbc1eac68becfadfa6c7e50e9403.tar.xz
hercules-184f0ed51d24cbc1eac68becfadfa6c7e50e9403.zip
- Cleaned some of mpeg's updated work.
- Fixed HT_BLITZBEAT hitting neutral characters when it auto-triggers. - Simplified the Tatami Gaeshi code. - Fixed AS_SPLASHER doing full damage on everyone except targetted char instead of the other way around. - Fixed KAENSIN clearing out SUITON cells and viceversa. - The spawn area is now seen as range rather than absolute for mob spawn lines. This means that x,y,10,10 will spawn the mob on a 21x21 grid around the given x,y point. - Some clean up of the mob-spawn code. Now you can specify negative areas, so that a spawn location such as 100,150,0,-1 will spawn a mob always on x=100, but any Y value of the current map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8165 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/npc.c')
-rw-r--r--src/map/npc.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/map/npc.c b/src/map/npc.c
index 0ebec7aaf..90345feea 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -2209,17 +2209,18 @@ int npc_parse_mob (char *w1, char *w2, char *w3, char *w4)
mob.class_ = (short) class_;
mob.x = (unsigned short)x;
mob.y = (unsigned short)y;
- mob.xs = (unsigned short)xs;
- mob.ys = (unsigned short)ys;
+ mob.xs = (signed short)xs;
+ mob.ys = (signed short)ys;
if (mob.num > 1 && battle_config.mob_count_rate != 100) {
if ((mob.num = mob.num * battle_config.mob_count_rate / 100) < 1)
mob.num = 1;
}
- if (battle_config.force_random_spawn)
+ if (battle_config.force_random_spawn || (mob.x == 0 && mob.y == 0))
{ //Force a random spawn anywhere on the map.
- mob.x = mob.y = mob.xs = mob.ys = 0;
+ mob.x = mob.y = 0;
+ mob.xs = mob.ys = -1;
}
//Apply the spawn delay fix [Skotlex]