mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-21 11:24:47 +01:00
Improvements and send all mail fix
Mail ID no longer exists and is handled by it's position in the mail array
This commit is contained in:
@@ -64,7 +64,7 @@ public class PacketGetAllMailRsp extends GenshinPacket {
|
||||
}
|
||||
|
||||
MailDataOuterClass.MailData.Builder mailData = MailDataOuterClass.MailData.newBuilder();
|
||||
mailData.setMailId(message._id);
|
||||
mailData.setMailId(player.getMailId(message));
|
||||
mailData.setMailTextContent(mailTextContent.build());
|
||||
mailData.addAllItemList(mailItems);
|
||||
mailData.setSendTime((int) message.sendTime);
|
||||
|
||||
@@ -25,8 +25,7 @@ public class PacketGetMailItemRsp extends GenshinPacket {
|
||||
GetMailItemRsp.Builder proto = GetMailItemRsp.newBuilder();
|
||||
|
||||
for (int mailId : mailList) {
|
||||
Mail message = player.getMailById(mailId);
|
||||
int messageIndex = player.getMailIndex(message);
|
||||
Mail message = player.getMail(mailId);
|
||||
|
||||
for(Mail.MailItem mailItem : message.itemList) {
|
||||
EquipParamOuterClass.EquipParam.Builder item = EquipParamOuterClass.EquipParam.newBuilder();
|
||||
@@ -62,10 +61,10 @@ public class PacketGetMailItemRsp extends GenshinPacket {
|
||||
message.isAttachmentGot = true;
|
||||
claimedMessages.add(message);
|
||||
|
||||
player.replaceMailByIndex(messageIndex, message);
|
||||
player.replaceMailByIndex(mailId, message);
|
||||
}
|
||||
|
||||
proto.addAllMailIdList(claimedMessages.stream().map(Mail::getId).collect(Collectors.toList()));
|
||||
proto.addAllMailIdList(claimedMessages.stream().map(message -> player.getMailId(message)).collect(Collectors.toList()));
|
||||
proto.addAllItemList(claimedItems);
|
||||
|
||||
this.setData(proto.build());
|
||||
|
||||
@@ -46,7 +46,7 @@ public class PacketMailChangeNotify extends GenshinPacket {
|
||||
}
|
||||
|
||||
MailDataOuterClass.MailData.Builder mailData = MailDataOuterClass.MailData.newBuilder();
|
||||
mailData.setMailId(message._id);
|
||||
mailData.setMailId(player.getMailId(message));
|
||||
mailData.setMailTextContent(mailTextContent.build());
|
||||
mailData.addAllItemList(mailItems);
|
||||
mailData.setSendTime((int) message.sendTime);
|
||||
|
||||
Reference in New Issue
Block a user