summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-05-30 23:45:09 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-05-30 23:45:09 +0000
commit2d7d9fc43fde3605f7c0b2c7eeae86b544440a07 (patch)
tree7b57b58d195d6c9ca455e400febb3675dc44a426 /src
parent48b0ecb47ab3a8a59f881fba26ee3a4ee10095e8 (diff)
downloadhercules-2d7d9fc43fde3605f7c0b2c7eeae86b544440a07.tar.gz
hercules-2d7d9fc43fde3605f7c0b2c7eeae86b544440a07.tar.bz2
hercules-2d7d9fc43fde3605f7c0b2c7eeae86b544440a07.tar.xz
hercules-2d7d9fc43fde3605f7c0b2c7eeae86b544440a07.zip
- Call Slave now invokes slaves on a 5x5 area around master.
- AL_TELEPORT will fail when used by slave mobs. - Added NPC_ENERGYDRAIN, NPC_MENTALBREAKER to the list of undodgeable attacks. - slaves inherit speed setting will now work regardless of whether the slave or master has the MD_CANMOVE mode bit. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6865 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/battle.c2
-rw-r--r--src/map/skill.c4
-rw-r--r--src/map/status.c2
-rw-r--r--src/map/unit.c1
4 files changed, 6 insertions, 3 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 8b05e544b..0ab436bd3 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -995,6 +995,8 @@ static struct Damage battle_calc_weapon_attack(
case SG_MOON_WARM:
case SG_STAR_WARM:
case NPC_BLOODDRAIN:
+ case NPC_ENERGYDRAIN:
+ case NPC_MENTALBREAKER:
flag.hit = 1;
break;
case CR_SHIELDBOOMERANG:
diff --git a/src/map/skill.c b/src/map/skill.c
index 14ba8bbb1..15b222160 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -4833,8 +4833,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
mob_summonslave(md,md->db->skill[md->skillidx].val,skilllv,skillid);
break;
- case NPC_CALLSLAVE: //取り巻き呼び戻し
- mob_warpslave(src,AREA_SIZE/2);
+ case NPC_CALLSLAVE:
+ mob_warpslave(src,2);
break;
case NPC_RANDOMMOVE:
diff --git a/src/map/status.c b/src/map/status.c
index 9b1e43268..6d80712cd 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -1052,7 +1052,7 @@ int status_calc_mob(struct mob_data* md, int first)
if (flag&8 && mbl) {
struct status_data *mstatus = status_get_base_status(mbl);
- if (mstatus && mstatus->mode&MD_CANMOVE && status->mode&MD_CANMOVE)
+ if (mstatus)
status->speed = mstatus->speed;
}
diff --git a/src/map/unit.c b/src/map/unit.c
index 879a73beb..a8c1e269e 100644
--- a/src/map/unit.c
+++ b/src/map/unit.c
@@ -810,6 +810,7 @@ int unit_skilluse_id2(struct block_list *src, int target_id, int skill_num, int
switch (skill_num) {
case NPC_SUMMONSLAVE:
case NPC_SUMMONMONSTER:
+ case AL_TELEPORT:
if (((TBL_MOB*)src)->master_id)
return 0;
}