From 4fcb38d69d1b61cc79b6b9af06918e5c228b242b Mon Sep 17 00:00:00 2001
From: Jared Adams <jaxad0127@gmail.com>
Date: Sun, 16 Aug 2009 09:57:14 -0600
Subject: Send GM flag to clients

---
 src/map/clif.c | 6 ++----
 src/map/pc.c   | 3 +++
 2 files changed, 5 insertions(+), 4 deletions(-)

(limited to 'src')

diff --git a/src/map/clif.c b/src/map/clif.c
index 908e9ff..050c1c9 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -756,8 +756,7 @@ static int clif_set0078(struct map_session_data *sd, unsigned char *buf) {
 	WBUFB(buf,45)=sd->sex;
 	WBUFPOS(buf,46,sd->bl.x,sd->bl.y);
 	WBUFB(buf,48)|=sd->dir&0x0f;
-	WBUFB(buf,49)=5;
-	WBUFB(buf,50)=5;
+	WBUFW(buf,49)=pc_isGM(sd) >= 60 ? 0x80 : 0;
 	WBUFB(buf,51)=sd->state.dead_sit;
 	WBUFW(buf,52)=((level = battle_get_lv(&sd->bl)) > battle_config.max_lv) ? battle_config.max_lv : level;
 
@@ -830,8 +829,7 @@ static int clif_set007b(struct map_session_data *sd,unsigned char *buf) {
 	WBUFB(buf,48)=sd->status.karma;
 	WBUFB(buf,49)=sd->sex;
 	WBUFPOS2(buf,50,sd->bl.x,sd->bl.y,sd->to_x,sd->to_y);
-	WBUFB(buf,55)=0;
-	WBUFB(buf,56)=5;
+	WBUFW(buf,55)=pc_isGM(sd) >= 60 ? 0x80 : 0;
 	WBUFB(buf,57)=5;
 	WBUFW(buf,58)=(sd->status.base_level>battle_config.max_lv)?battle_config.max_lv:sd->status.base_level;
 
diff --git a/src/map/pc.c b/src/map/pc.c
index e0b4c89..7aec359 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -790,7 +790,10 @@ int pc_authok(int id, int login_id2, time_t connect_until_time, short tmw_versio
 	pc_calcstatus(sd,1);
 
 	if (pc_isGM(sd))
+	{
 		printf("Connection accepted: character '%s' (account: %d; GM level %d).\n", sd->status.name, sd->status.account_id, pc_isGM(sd));
+		clif_updatestatus(sd, SP_GM);
+	}
 	else
 		printf("Connection accepted: Character '%s' (account: %d).\n", sd->status.name, sd->status.account_id);
 
-- 
cgit v1.2.3-70-g09d2