- Added separated packets for get and set attachment on mail system.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11693 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
009ce06822
commit
3575f9ad9a
@ -6,6 +6,7 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||
2007/11/07
|
||||
* Some updates on the mail system packets [Zephyrus]
|
||||
- Corrected the mail database structure on main.sql
|
||||
- Added separated packets for get and set attachment on mail system.
|
||||
2007/11/06
|
||||
* Fixed a crash caused by a mistake in the previous change
|
||||
2007/11/05
|
||||
|
@ -11298,11 +11298,11 @@ void clif_parse_AutoRevive(int fd, struct map_session_data *sd)
|
||||
*==========================================*/
|
||||
|
||||
/*------------------------------------------
|
||||
* Reply to an Attachment operation
|
||||
* Reply to Set Attachment operation
|
||||
* 0 : Successfully attached item to mail
|
||||
* 1 : Fail to set the attachment
|
||||
*------------------------------------------*/
|
||||
static void clif_Mail_attachment(int fd, int index, uint8 flag)
|
||||
static void clif_Mail_setattachment(int fd, int index, uint8 flag)
|
||||
{
|
||||
WFIFOHEAD(fd,packet_len(0x255));
|
||||
WFIFOW(fd,0) = 0x255;
|
||||
@ -11311,6 +11311,20 @@ static void clif_Mail_attachment(int fd, int index, uint8 flag)
|
||||
WFIFOSET(fd,packet_len(0x255));
|
||||
}
|
||||
|
||||
/*------------------------------------------
|
||||
* Reply to Get Attachment operation
|
||||
* 0 : Successfully added attachment to Inventory
|
||||
* 1 : Fail to set the item to inventory
|
||||
* 2 : Weight problems
|
||||
*------------------------------------------*/
|
||||
void clif_Mail_getattachment(int fd, uint8 flag)
|
||||
{
|
||||
WFIFOHEAD(fd,packet_len(0x245));
|
||||
WFIFOW(fd,0) = 0x245;
|
||||
WFIFOB(fd,2) = flag;
|
||||
WFIFOSET(fd,packet_len(0x245));
|
||||
}
|
||||
|
||||
/*------------------------------------------
|
||||
* Send Mail ack
|
||||
* 0 : Message Send Ok
|
||||
@ -11519,7 +11533,7 @@ void clif_parse_Mail_getattach(int fd, struct map_session_data *sd)
|
||||
weight = data->weight * sd->mail.inbox.msg[i].item.amount;
|
||||
if (weight > sd->max_weight - sd->weight)
|
||||
{
|
||||
// clif_Mail_attachment(fd, 2);
|
||||
clif_Mail_getattachment(fd, 2);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -11582,7 +11596,7 @@ void clif_parse_Mail_setattach(int fd, struct map_session_data *sd)
|
||||
flag = mail_setitem(sd, idx, amount);
|
||||
|
||||
if (idx > 0)
|
||||
clif_Mail_attachment(fd,idx,flag);
|
||||
clif_Mail_setattachment(fd,idx,flag);
|
||||
}
|
||||
|
||||
/*------------------------------------------
|
||||
|
@ -391,6 +391,7 @@ void clif_Mail_return(int fd, int mail_id, short fail);
|
||||
void clif_Mail_send(int fd, bool fail);
|
||||
void clif_Mail_new(int fd, int mail_id, const char *sender, const char *title);
|
||||
void clif_Mail_refreshinbox(struct map_session_data *sd);
|
||||
void clif_Mail_getattachment(int fd, uint8 flag);
|
||||
#endif
|
||||
|
||||
#endif /* _CLIF_H_ */
|
||||
|
@ -1568,7 +1568,10 @@ int intif_parse_Mail_getattach(int fd)
|
||||
|
||||
memcpy(&item, RFIFOP(fd,12), sizeof(struct item));
|
||||
if (item.nameid > 0 && item.amount > 0)
|
||||
{
|
||||
pc_additem(sd, &item, item.amount);
|
||||
clif_Mail_getattachment(sd->fd, 0);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user