diff options
author | shennetsind <ind@henn.et> | 2013-11-26 18:59:27 -0200 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2013-11-26 18:59:27 -0200 |
commit | 41a1f804e02aca52bf941dd12e4bf08e03e91dca (patch) | |
tree | da827963f80c63034cb57444b11392b25bd2e959 /src/map | |
parent | 7ee782c0d3df09ed494dd310489d3512f4e87ad0 (diff) | |
download | hercules-41a1f804e02aca52bf941dd12e4bf08e03e91dca.tar.gz hercules-41a1f804e02aca52bf941dd12e4bf08e03e91dca.tar.bz2 hercules-41a1f804e02aca52bf941dd12e4bf08e03e91dca.tar.xz hercules-41a1f804e02aca52bf941dd12e4bf08e03e91dca.zip |
Fixed Bug 7859
magic reflect now nullifies any knockback.
Special Thanks to Yommy.
http://hercules.ws/board/tracker/issue-7859-magic-reflect-knock-back/
Signed-off-by: shennetsind <ind@henn.et>
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/skill.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 8cce62f94..698252d18 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -2116,7 +2116,7 @@ int skill_attack(int attack_type, struct block_list* src, struct block_list *dsr struct map_session_data *sd, *tsd; int type; int64 damage; - int8 rmdamage=0;//magic reflected + bool rmdamage = false;//magic reflected bool additional_effects = true, shadow_flag = false; if(skill_id > 0 && !skill_lv) return 0; @@ -2173,7 +2173,7 @@ int skill_attack(int attack_type, struct block_list* src, struct block_list *dsr if( (dmg.damage || dmg.damage2) && (type = skill->magic_reflect(src, bl, src==dsrc)) ) { //Magic reflection, switch caster/target struct block_list *tbl = bl; - rmdamage = 1; + rmdamage = true; bl = src; src = tbl; dsrc = tbl; @@ -2184,7 +2184,8 @@ int skill_attack(int attack_type, struct block_list* src, struct block_list *dsr sc = NULL; //Don't need it. /* bugreport:2564 flag&2 disables double casting trigger */ flag |= 2; - + /* bugreport:7859 magical reflect'd zeroes blewcount */ + dmg.blewcount = 0; //Spirit of Wizard blocks Kaite's reflection if( type == 2 && sc && sc->data[SC_SOULLINK] && sc->data[SC_SOULLINK]->val2 == SL_WIZARD ) { //Consume one Fragment per hit of the casted skill? [Skotlex] |