diff options
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index af64f74b5..d626c94b1 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -4047,6 +4047,8 @@ void clif_getareachar_unit(struct map_session_data* sd,struct block_list *bl) clif_specialeffect_single(bl,421,sd->fd); if( tsd->bg_id && map[tsd->bl.m].flag.battleground ) clif_sendbgemblem_single(sd->fd,tsd); + if( tsd->sc.data[SC_CAMOUFLAGE] ) + clif_status_load(bl,SI_CAMOUFLAGE,1); } break; case BL_MER: // Devotion Effects @@ -4130,6 +4132,7 @@ int clif_damage(struct block_list* src, struct block_list* dst, unsigned int tic { unsigned char buf[33]; struct status_change *sc; + int dir=0; #if PACKETVER < 20071113 const int cmd = 0x8a; #else @@ -4148,6 +4151,8 @@ int clif_damage(struct block_list* src, struct block_list* dst, unsigned int tic } } + dir = unit_getdir(src); + WBUFW(buf,0)=cmd; WBUFL(buf,2)=src->id; WBUFL(buf,6)=dst->id; @@ -4195,6 +4200,9 @@ int clif_damage(struct block_list* src, struct block_list* dst, unsigned int tic #endif clif_send(buf,packet_len(cmd),src,SELF); } + + if(src == dst) + unit_setdir(src,dir); //Return adjusted can't walk delay for further processing. return clif_calc_walkdelay(dst,ddelay,type,damage+damage2,div); } |