ZC_ACK_REQNAME_BYGID
This commit is contained in:
parent
6edc930f4a
commit
11d84fb634
@ -7004,25 +7004,20 @@ void clif_wis_end( map_session_data& sd, e_ack_whisper result ){
|
||||
}
|
||||
|
||||
|
||||
/// Returns character name requested by char_id (ZC_ACK_REQNAME_BYGID).
|
||||
/// 0194 <char id>.L <name>.24B
|
||||
/// 0af7 <flag>.W <char id>.L <name>.24B
|
||||
void clif_solved_charname(int fd, int charid, const char* name)
|
||||
{
|
||||
/// Returns character name requested by char_id.
|
||||
/// 0194 <char id>.L <name>.24B (ZC_ACK_REQNAME_BYGID)
|
||||
/// 0af7 <flag>.W <char id>.L <name>.24B (ZC_ACK_REQNAME_BYGID)
|
||||
void clif_solved_charname( map_session_data& sd, uint32 charid, const char* name ){
|
||||
PACKET_ZC_ACK_REQNAME_BYGID packet{};
|
||||
|
||||
packet.packetType = HEADER_ZC_ACK_REQNAME_BYGID;
|
||||
#if PACKETVER >= 20180221
|
||||
WFIFOHEAD(fd,packet_len(0xaf7));
|
||||
WFIFOW(fd,0) = 0xaf7;
|
||||
WFIFOW(fd,2) = name[0] ? 3 : 2;
|
||||
WFIFOL(fd,4) = charid;
|
||||
safestrncpy(WFIFOCP(fd, 8), name, NAME_LENGTH);
|
||||
WFIFOSET(fd,packet_len(0x0af7));
|
||||
#else
|
||||
WFIFOHEAD(fd,packet_len(0x194));
|
||||
WFIFOW(fd,0)=0x194;
|
||||
WFIFOL(fd,2)=charid;
|
||||
safestrncpy(WFIFOCP(fd,6), name, NAME_LENGTH);
|
||||
WFIFOSET(fd,packet_len(0x194));
|
||||
packet.flag = name[0] ? 3 : 2;
|
||||
#endif
|
||||
packet.CID = charid;
|
||||
safestrncpy( packet.name, name, NAME_LENGTH );
|
||||
|
||||
clif_send( &packet, sizeof( packet ), &sd.bl, SELF );
|
||||
}
|
||||
|
||||
|
||||
@ -8175,7 +8170,7 @@ void clif_movetoattack( map_session_data& sd, block_list& bl ){
|
||||
void clif_produceeffect(map_session_data* sd,int flag, t_itemid nameid){
|
||||
nullpo_retv( sd );
|
||||
|
||||
clif_solved_charname( sd->fd, sd->status.char_id, sd->status.name );
|
||||
clif_solved_charname( *sd, sd->status.char_id, sd->status.name );
|
||||
|
||||
struct PACKET_ZC_ACK_REQMAKINGITEM p;
|
||||
|
||||
|
||||
@ -952,7 +952,7 @@ void clif_efst_status_change_sub(struct block_list *tbl, struct block_list *bl,
|
||||
void clif_wis_message(map_session_data* sd, const char* nick, const char* mes, size_t mes_len, int gmlvl);
|
||||
void clif_wis_end( map_session_data& sd, e_ack_whisper result );
|
||||
|
||||
void clif_solved_charname(int fd, int charid, const char* name);
|
||||
void clif_solved_charname( map_session_data& sd, uint32 charid, const char* name );
|
||||
void clif_name( struct block_list* src, struct block_list *bl, send_target target );
|
||||
#define clif_name_self(bl) clif_name( (bl), (bl), SELF )
|
||||
#define clif_name_area(bl) clif_name( (bl), (bl), AREA )
|
||||
|
||||
@ -238,7 +238,6 @@
|
||||
packet( HEADER_ZC_TALKBOX_CHATCONTENTS, sizeof( struct PACKET_ZC_TALKBOX_CHATCONTENTS ) );
|
||||
packet(0x0192,24);
|
||||
parseable_packet(0x0193,6,clif_parse_SolveCharName,2);
|
||||
packet(0x0194,30);
|
||||
packet( HEADER_ZC_ACK_REQNAMEALL, sizeof( struct PACKET_ZC_ACK_REQNAMEALL ) );
|
||||
packet(0x0196,9);
|
||||
parseable_packet(0x0197,4,clif_parse_ResetChar,2);
|
||||
@ -2228,7 +2227,6 @@
|
||||
// 2018-02-21aRagexeRE or 2018-02-21bRagexeRE
|
||||
#if PACKETVER >= 20180221
|
||||
packet(0x0206,35); // ZC_FRIENDS_STATE
|
||||
packet(0x0af7,32);
|
||||
#endif
|
||||
|
||||
// 2018-03-07bRagexeRE
|
||||
|
||||
@ -1939,8 +1939,8 @@ void map_addnickdb(int charid, const char* nick)
|
||||
req = p->requests;
|
||||
p->requests = req->next;
|
||||
sd = map_charid2sd(req->charid);
|
||||
if( sd )
|
||||
clif_solved_charname(sd->fd, charid, p->nick);
|
||||
if( sd != nullptr )
|
||||
clif_solved_charname( *sd, charid, p->nick );
|
||||
aFree(req);
|
||||
}
|
||||
}
|
||||
@ -1961,8 +1961,8 @@ void map_delnickdb(int charid, const char* name)
|
||||
req = p->requests;
|
||||
p->requests = req->next;
|
||||
sd = map_charid2sd(req->charid);
|
||||
if( sd )
|
||||
clif_solved_charname(sd->fd, charid, name);
|
||||
if( sd != nullptr )
|
||||
clif_solved_charname( *sd, charid, name );
|
||||
aFree(req);
|
||||
}
|
||||
aFree(p);
|
||||
@ -1980,16 +1980,16 @@ void map_reqnickdb(map_session_data * sd, int charid)
|
||||
nullpo_retv(sd);
|
||||
|
||||
tsd = map_charid2sd(charid);
|
||||
if( tsd )
|
||||
if( tsd != nullptr )
|
||||
{
|
||||
clif_solved_charname(sd->fd, charid, tsd->status.name);
|
||||
clif_solved_charname( *sd, charid, tsd->status.name );
|
||||
return;
|
||||
}
|
||||
|
||||
p = (struct charid2nick*)idb_ensure(nick_db, charid, create_charid2nick);
|
||||
if( *p->nick )
|
||||
{
|
||||
clif_solved_charname(sd->fd, charid, p->nick);
|
||||
clif_solved_charname( *sd, charid, p->nick );
|
||||
return;
|
||||
}
|
||||
// not in cache, request it
|
||||
|
||||
@ -1058,6 +1058,23 @@ struct PACKET_ZC_MONSTER_INFO {
|
||||
} __attribute__((packed));
|
||||
DEFINE_PACKET_HEADER(ZC_MONSTER_INFO, 0x18c);
|
||||
|
||||
#if PACKETVER >= 20180221
|
||||
struct PACKET_ZC_ACK_REQNAME_BYGID {
|
||||
int16 packetType;
|
||||
uint16 flag;
|
||||
uint32 CID;
|
||||
char name[NAME_LENGTH];
|
||||
} __attribute__((packed));
|
||||
DEFINE_PACKET_HEADER(ZC_ACK_REQNAME_BYGID, 0xaf7);
|
||||
#else
|
||||
struct PACKET_ZC_ACK_REQNAME_BYGID {
|
||||
int16 packetType;
|
||||
uint32 CID;
|
||||
char name[NAME_LENGTH];
|
||||
} __attribute__((packed));
|
||||
DEFINE_PACKET_HEADER(ZC_ACK_REQNAME_BYGID, 0x194);
|
||||
#endif
|
||||
|
||||
// NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute
|
||||
#if !defined( sun ) && ( !defined( __NETBSD__ ) || __NetBSD_Version__ >= 600000000 )
|
||||
#pragma pack( pop )
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user