From 2b4787d78f47142d979cb568e179387fb4befc7b Mon Sep 17 00:00:00 2001 From: skotlex Date: Tue, 28 Mar 2006 15:49:36 +0000 Subject: - Fixed summon mobs being able to cast "summon" skills. - Summoned mobs will inherit the size and ai properties of the master. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5790 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/mob.c | 2 ++ src/map/unit.c | 9 +++++++++ 2 files changed, 11 insertions(+) (limited to 'src') diff --git a/src/map/mob.c b/src/map/mob.c index 034aca215..a344375b1 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -2503,6 +2503,8 @@ int mob_summonslave(struct mob_data *md2,int *value,int amount,int skill_id) data.x = md2->bl.x; data.y = md2->bl.y; data.num = 1; + data.state.size = md2->special_state.size; + data.state.ai = md2->special_state.ai; if(mobdb_checkid(value[0]) == 0) return 0; diff --git a/src/map/unit.c b/src/map/unit.c index fe62c5da4..605a8bc24 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -773,6 +773,15 @@ int unit_skilluse_id2(struct block_list *src, int target_id, int skill_num, int if (!skill_check_condition(sd, skill_num, skill_lv, 0)) return 0; } + //TODO: Add type-independant skill_check_condition function. + if (src->type == BL_MOB) { + switch (skill_num) { + case NPC_SUMMONSLAVE: + case NPC_SUMMONMONSTER: + if (((TBL_MOB*)src)->master_id) + return 0; + } + } if(src->id != target_id && !battle_check_range(src,target,skill_get_range2(src, skill_num,skill_lv) -- cgit v1.2.3-60-g2f50