summaryrefslogtreecommitdiff
path: root/src/map/clif.c
diff options
context:
space:
mode:
authorSara <Sara@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-03-24 01:56:16 +0000
committerSara <Sara@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-03-24 01:56:16 +0000
commit35d7b2c7661bad6596a48c81f24a044a91fa346b (patch)
treeba243d910a1aeda54169e536f73e66c7785c542e /src/map/clif.c
parent227a195447ddca43b40555952552c6bfc1381c2e (diff)
downloadhercules-35d7b2c7661bad6596a48c81f24a044a91fa346b.tar.gz
hercules-35d7b2c7661bad6596a48c81f24a044a91fa346b.tar.bz2
hercules-35d7b2c7661bad6596a48c81f24a044a91fa346b.tar.xz
hercules-35d7b2c7661bad6596a48c81f24a044a91fa346b.zip
* Added support for new status change packet, uses new setting display_status_timers in client.conf.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13613 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/clif.c')
-rw-r--r--src/map/clif.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/map/clif.c b/src/map/clif.c
index 063240899..c6fcb924b 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -4531,20 +4531,36 @@ int clif_status_load(struct block_list *bl,int type, int flag)
/*==========================================
* 状態異常アイコン/メッセージ表示
*------------------------------------------*/
-int clif_status_change(struct block_list *bl,int type,int flag)
+int clif_status_change(struct block_list *bl,int type,int flag,unsigned int tick)
{
unsigned char buf[16];
if (type == SI_BLANK) //It shows nothing on the client...
return 0;
-
+
nullpo_retr(0, bl);
- WBUFW(buf,0)=0x0196;
+ if (type == SI_BLANK || type == SI_MAXIMIZEPOWER || type == SI_RIDING ||
+ type == SI_FALCON || type == SI_TRICKDEAD || type == SI_BROKENARMOR ||
+ type == SI_BROKENWEAPON || type == SI_WEIGHT50 || type == SI_WEIGHT90 ||
+ type == SI_TENSIONRELAX || type == SI_LANDENDOW || type == SI_AUTOBERSERK ||
+ type == SI_BUMP || type == SI_READYSTORM || type == SI_READYDOWN ||
+ type == SI_READYTURN || type == SI_READYCOUNTER || type == SI_DODGE ||
+ type == SI_DEVIL || type == SI_NIGHT || type == SI_INTRAVISION)
+ tick=0;
+ if( battle_config.display_skill_timers && tick>0 )
+ WBUFW(buf,0)=0x043f;
+ else
+ WBUFW(buf,0)=0x0196;
WBUFW(buf,2)=type;
WBUFL(buf,4)=bl->id;
WBUFB(buf,8)=flag;
- clif_send(buf,packet_len(0x196),bl,AREA);
+ if( battle_config.display_skill_timers && tick>0 )
+ clif_send(buf,packet_len(0x196),bl,AREA);
+ else {
+ WBUFL(buf,9)=tick;
+ clif_send(buf,packet_len(0x43f),bl,AREA);
+ }
return 0;
}