* Introduced /guildinvite for 2012 or newer clients. Also merged both guild invite functions. Fixes bugreport:7612
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17300 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
8e810c050c
commit
69508a5ffc
@ -1775,6 +1775,7 @@ packet_ver:31
|
|||||||
0x0368,6,solvecharname,2
|
0x0368,6,solvecharname,2
|
||||||
0x08E5,41,bookingregreq,2:4 //Added to prevent disconnections
|
0x08E5,41,bookingregreq,2:4 //Added to prevent disconnections
|
||||||
0x08d2,10
|
0x08d2,10
|
||||||
|
0x0916,26,guildinvite2,2
|
||||||
|
|
||||||
//2012-06-18
|
//2012-06-18
|
||||||
packet_ver: 32
|
packet_ver: 32
|
||||||
|
@ -12065,29 +12065,47 @@ void clif_parse_GuildChangeNotice(int fd, struct map_session_data* sd)
|
|||||||
guild_change_notice(sd, guild_id, msg1, msg2);
|
guild_change_notice(sd, guild_id, msg1, msg2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Helper function for guild invite functions
|
||||||
|
int
|
||||||
|
clif_sub_guild_invite(int fd, struct map_session_data *sd, struct map_session_data *t_sd) {
|
||||||
|
if (t_sd == NULL) {// not online or does not exist
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (map[sd->bl.m].flag.guildlock) {//Guild locked.
|
||||||
|
clif_displaymessage(fd, msg_txt(sd,228));
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(t_sd && t_sd->state.noask) {// @noask [LuzZza]
|
||||||
|
clif_noask_sub(sd, t_sd, 2);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
guild_invite(sd, t_sd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/// Guild invite request (CZ_REQ_JOIN_GUILD).
|
/// Guild invite request (CZ_REQ_JOIN_GUILD).
|
||||||
/// 0168 <account id>.L <inviter account id>.L <inviter char id>.L
|
/// 0168 <account id>.L <inviter account id>.L <inviter char id>.L
|
||||||
void clif_parse_GuildInvite(int fd,struct map_session_data *sd)
|
void clif_parse_GuildInvite(int fd,struct map_session_data *sd)
|
||||||
{
|
{
|
||||||
struct map_session_data *t_sd;
|
struct map_session_data *t_sd = map_id2sd(RFIFOL(fd,2));
|
||||||
|
|
||||||
if(map[sd->bl.m].flag.guildlock) { //Guild locked.
|
if (clif_sub_guild_invite(fd, sd, t_sd))
|
||||||
clif_displaymessage(fd, msg_txt(sd,228));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
t_sd = map_id2sd(RFIFOL(fd,2));
|
/// Guild invite request (/guildinvite)
|
||||||
|
/// 0916 <char name>.24B
|
||||||
|
void
|
||||||
|
clif_parse_GuildInvite2(int fd, struct map_session_data *sd) {
|
||||||
|
struct map_session_data *t_sd = map_nick2sd((char *)RFIFOP(fd, 2));
|
||||||
|
|
||||||
// @noask [LuzZza]
|
if (clif_sub_guild_invite(fd, sd, t_sd))
|
||||||
if(t_sd && t_sd->state.noask) {
|
|
||||||
clif_noask_sub(sd, t_sd, 2);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
guild_invite(sd,t_sd);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// Answer to guild invitation (CZ_JOIN_GUILD).
|
/// Answer to guild invitation (CZ_JOIN_GUILD).
|
||||||
/// 016b <guild id>.L <answer>.L
|
/// 016b <guild id>.L <answer>.L
|
||||||
@ -16941,6 +16959,7 @@ static int packetdb_readdb(void)
|
|||||||
{ clif_parse_cashshop_buy, "cashshopbuy" },
|
{ clif_parse_cashshop_buy, "cashshopbuy" },
|
||||||
/* */
|
/* */
|
||||||
{ clif_parse_MoveItem , "moveitem" },
|
{ clif_parse_MoveItem , "moveitem" },
|
||||||
|
{ clif_parse_GuildInvite2 , "guildinvite2" },
|
||||||
{NULL,NULL}
|
{NULL,NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user