Permalink
Browse files

Fixed Reflect Damage not reflecting damage (#3848)

* Fixes #3801.
* Fixed a timer type issue causing Reflect Damage to no properly distribute damage.
* Corrected some final tick leftovers that may cause issues with other skills.
Thanks to @Angelic234 and @rAthenaCN!
  • Loading branch information...
aleos89 committed Jan 11, 2019
1 parent 13d814e commit 7282dd87352a273d1bcce60dcad41fc26feed2ff
Showing with 6 additions and 6 deletions.
  1. +1 −1 src/map/battle.cpp
  2. +1 −1 src/map/mob.cpp
  3. +4 −4 src/map/skill.cpp
@@ -7093,7 +7093,7 @@ int battle_damage_area(struct block_list *bl, va_list ap) {

nullpo_ret(bl);

tick = va_arg(ap, unsigned int);
tick = va_arg(ap, t_tick);
src = va_arg(ap,struct block_list *);
amotion = va_arg(ap,int);
dmotion = va_arg(ap,int);
@@ -1002,7 +1002,7 @@ int mob_linksearch(struct block_list *bl,va_list ap)
md=(struct mob_data *)bl;
mob_id = va_arg(ap, int);
target = va_arg(ap, struct block_list *);
tick=va_arg(ap, unsigned int);
tick=va_arg(ap, t_tick);

if (md->mob_id == mob_id && DIFF_TICK(md->last_linktime, tick) < MIN_MOBLINKTIME
&& !md->target_id)
@@ -17144,7 +17144,7 @@ int skill_frostjoke_scream(struct block_list *bl, va_list ap)
skill_lv = va_arg(ap,int);
if(!skill_lv)
return 0;
tick = va_arg(ap,unsigned int);
tick = va_arg(ap,t_tick);

if (src == bl || status_isdead(bl))
return 0;
@@ -17202,7 +17202,7 @@ int skill_attack_area(struct block_list *bl, va_list ap)
dsrc = va_arg(ap,struct block_list*);
skill_id = va_arg(ap,int);
skill_lv = va_arg(ap,int);
tick = va_arg(ap,unsigned int);
tick = va_arg(ap,t_tick);
flag = va_arg(ap,int);
type = va_arg(ap,int);

@@ -17587,7 +17587,7 @@ static int skill_trap_splash(struct block_list *bl, va_list ap)
{
struct block_list *src = va_arg(ap,struct block_list *);
struct skill_unit *unit = NULL;
int tick = va_arg(ap,int);
t_tick tick = va_arg(ap,t_tick);
struct skill_unit_group *sg;
struct block_list *ss; //Skill src bl

@@ -20086,7 +20086,7 @@ static int skill_destroy_trap(struct block_list *bl, va_list ap)

nullpo_ret(su);

tick = va_arg(ap, unsigned int);
tick = va_arg(ap, t_tick);

if (su->alive && (sg = su->group) && skill_get_inf2(sg->skill_id)&INF2_TRAP) {
switch( sg->unit_id ) {

0 comments on commit 7282dd8

Please sign in to comment.