From fd7d1a9320453047e8657981ffbc92d7663b83dd Mon Sep 17 00:00:00 2001 From: Michieru Date: Mon, 29 Sep 2014 13:52:25 +0200 Subject: Emperium can not be move by vacuum (bug:8372) On renewal only double attack work on emperium --- src/map/battle.c | 3 ++- src/map/skill.c | 8 +++++--- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'src/map') diff --git a/src/map/battle.c b/src/map/battle.c index cbc9b2c78..bdd1b9bc9 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -3190,8 +3190,9 @@ int64 battle_calc_gvg_damage(struct block_list *src,struct block_list *bl,int64 switch (skill_id) { #ifndef RENEWAL case MO_TRIPLEATTACK: -#endif case HW_GRAVITATION: +#endif + case TF_DOUBLE: break; default: return 0; diff --git a/src/map/skill.c b/src/map/skill.c index e20a58429..67c766792 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -12194,9 +12194,11 @@ int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *bl, int6 sg->limit -= 100 * tstatus->str/20; sc_start(ss, bl, SC_VACUUM_EXTREME, 100, sg->skill_lv, sg->limit); - if (unit->movepos(bl, sg->val1, sg->val2, 0, 0)) { - clif->slide(bl, sg->val1, sg->val2); - clif->fixpos(bl); + if ( !map_flag_gvg(bl->m) && !map->list[bl->m].flag.battleground && !is_boss(bl) ) { + if (unit->movepos(bl, sg->val1, sg->val2, 0, 0)) { + clif->slide(bl, sg->val1, sg->val2); + clif->fixpos(bl); + } } } break; -- cgit v1.2.3-70-g09d2