diff options
author | shennetsind <ind@henn.et> | 2013-05-15 20:10:45 -0300 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2013-05-15 20:10:45 -0300 |
commit | c811ddb181a15eae8a6d01a6956ae7c654f424b2 (patch) | |
tree | 85d2885f01af61c00ff0466e1fb6ab506af3455f /src/map/clif.c | |
parent | 9837043bef79e7767018a3735233c3fd573977eb (diff) | |
download | hercules-c811ddb181a15eae8a6d01a6956ae7c654f424b2.tar.gz hercules-c811ddb181a15eae8a6d01a6956ae7c654f424b2.tar.bz2 hercules-c811ddb181a15eae8a6d01a6956ae7c654f424b2.tar.xz hercules-c811ddb181a15eae8a6d01a6956ae7c654f424b2.zip |
Fixed Bug #7230
http://hercules.ws/board/tracker/issue-7230-color-in-messages/
Special Thanks to Beret
Signed-off-by: shennetsind <ind@henn.et>
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 06f180a35..5b32be54a 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -3339,6 +3339,10 @@ void clif_changelook(struct block_list *bl,int type,int val) WBUFL(buf,7)=val; } clif->send(buf,packet_len(0x1d7),bl,target); + if( disguised(bl) && ((TBL_PC*)sd)->fontcolor ) { + WBUFL(buf,2)=-bl->id; + clif->send(buf,packet_len(0x1d7),bl,SELF); + } #endif } @@ -5789,9 +5793,14 @@ void clif_resurrection(struct block_list *bl,int type) WBUFL(buf,2)=bl->id; WBUFW(buf,6)=0; - clif->send(buf,packet_len(0x148),bl,type==1 ? AREA : AREA_WOS); - if (disguised(bl)) - clif->spawn(bl); + clif->send(buf,packet_len(0x148),bl, type == 1 ? AREA : AREA_WOS); + if (disguised(bl)) { + if( ((TBL_PC*)bl)->fontcolor ) { + WBUFL(buf,2)=-bl->id; + clif->send(buf,packet_len(0x148),bl, SELF); + } else + clif->spawn(bl); + } } @@ -9874,6 +9883,8 @@ void clif_parse_GlobalMessage(int fd, struct map_session_data* sd) if( sd->disguise == -1 ) { pc_disguise(sd,sd->status.class_); + if( pc_isdead(sd) ) + clif_clearunit_single(-sd->bl.id, CLR_DEAD, sd->fd); sd->fontcolor_tid = add_timer(gettick()+5000, clif->undisguise_timer, sd->bl.id, 0); } else if ( sd->disguise == sd->status.class_ && sd->fontcolor_tid != INVALID_TIMER ) { const struct TimerData *timer; |