diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-30 23:45:09 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-30 23:45:09 +0000 |
commit | 2d7d9fc43fde3605f7c0b2c7eeae86b544440a07 (patch) | |
tree | 7b57b58d195d6c9ca455e400febb3675dc44a426 /src | |
parent | 48b0ecb47ab3a8a59f881fba26ee3a4ee10095e8 (diff) | |
download | hercules-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.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/status.c | 2 | ||||
-rw-r--r-- | src/map/unit.c | 1 |
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;
}
|