diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/clif.c | 19 | ||||
-rw-r--r-- | src/map/clif.h | 2 |
2 files changed, 12 insertions, 9 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index e0fb480a9..574bb2c7d 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -6571,27 +6571,30 @@ int clif_guild_created(struct map_session_data *sd,int flag) WFIFOSET(fd,packet_len(0x167)); return 0; } -/*========================================== - * ギルド所属通知 - *------------------------------------------*/ -int clif_guild_belonginfo(struct map_session_data *sd, struct guild *g) + + +/// Notifies the client that it is belonging to a guild (ZC_UPDATE_GDID) +/// 016c <guild id>.L <emblem id>.L <mode>.L <ismaster>.B <inter sid>.L <guild name>.24B +void clif_guild_belonginfo(struct map_session_data *sd, struct guild *g) { int ps,fd; - nullpo_ret(sd); - nullpo_ret(g); + nullpo_retv(sd); + nullpo_retv(g); fd=sd->fd; ps=guild_getposition(g,sd); WFIFOHEAD(fd,packet_len(0x16c)); - memset(WFIFOP(fd,0),0,packet_len(0x16c)); WFIFOW(fd,0)=0x16c; WFIFOL(fd,2)=g->guild_id; WFIFOL(fd,6)=g->emblem_id; WFIFOL(fd,10)=g->position[ps].mode; + WFIFOB(fd,14)=(bool)(sd->state.gmaster_flag==g); + WFIFOL(fd,15)=0; // InterSID (unknown purpose) memcpy(WFIFOP(fd,19),g->name,NAME_LENGTH); WFIFOSET(fd,packet_len(0x16c)); - return 0; } + + /*========================================== * ギルドメンバログイン通知 *------------------------------------------*/ diff --git a/src/map/clif.h b/src/map/clif.h index 0feeb22b5..58196c152 100644 --- a/src/map/clif.h +++ b/src/map/clif.h @@ -419,7 +419,7 @@ int clif_hpmeter_sub(struct block_list *bl, va_list ap); // guild int clif_guild_created(struct map_session_data *sd,int flag); -int clif_guild_belonginfo(struct map_session_data *sd,struct guild *g); +void clif_guild_belonginfo(struct map_session_data *sd,struct guild *g); int clif_guild_masterormember(struct map_session_data *sd); int clif_guild_basicinfo(struct map_session_data *sd); int clif_guild_allianceinfo(struct map_session_data *sd); |