mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-15 08:25:21 +01:00
Deleting mail + a bit of cleanup
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package emu.grasscutter.game;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.util.*;
|
||||
|
||||
import dev.morphia.annotations.*;
|
||||
@@ -609,8 +610,9 @@ public class GenshinPlayer {
|
||||
Mail message = getMailById(mailId);
|
||||
|
||||
if(message != null) {
|
||||
this.mail.remove(message);
|
||||
this.save();
|
||||
int index = getMailIndex(message);
|
||||
message.expireTime = (int) Instant.now().getEpochSecond(); // Just set the mail as expired for now. I don't want to implement a counter specifically for an account...
|
||||
this.replaceMailByIndex(index, message);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -625,9 +627,10 @@ public class GenshinPlayer {
|
||||
return this.mail.indexOf(message);
|
||||
}
|
||||
|
||||
public boolean replaceMailByIndex(int mailId, Mail message) {
|
||||
if(getMailById(mailId) != null) {
|
||||
this.mail.set(mailId, message);
|
||||
public boolean replaceMailByIndex(int index, Mail message) {
|
||||
if(getMailById(index) != null) {
|
||||
this.mail.set(index, message);
|
||||
this.save();
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -25,14 +25,14 @@ public class Mail {
|
||||
itemList = new ArrayList<>();
|
||||
sendTime = 0;
|
||||
expireTime = 0;
|
||||
importance = 1;
|
||||
importance = 0; // Starred mail, 0 = No star, 1 = Star.
|
||||
isRead = true;
|
||||
isAttachmentGot = true;
|
||||
stateValue = 1;
|
||||
stateValue = 1; // Different mailboxes, 1 = Default, 3 = Gift-box.
|
||||
}
|
||||
|
||||
public Mail(MailContent mailContent, List<MailItem> itemList, long expireTime) {
|
||||
this(mailContent, itemList, expireTime, 1);
|
||||
this(mailContent, itemList, expireTime, 0);
|
||||
}
|
||||
|
||||
public Mail(MailContent mailContent, List<MailItem> itemList, long expireTime, int importance) {
|
||||
@@ -90,19 +90,24 @@ public class Mail {
|
||||
public static class MailItem {
|
||||
public int itemId;
|
||||
public int itemCount;
|
||||
public int itemLevel;
|
||||
|
||||
public MailItem() {
|
||||
this.itemId = 11101;
|
||||
this.itemCount = 1;
|
||||
this.itemLevel = 1;
|
||||
}
|
||||
|
||||
public MailItem(int itemId) {
|
||||
this(itemId, 1);
|
||||
}
|
||||
|
||||
public MailItem(int itemId, int itemCount) {
|
||||
public MailItem(int itemId, int itemCount) { this(itemId, itemCount, 1); }
|
||||
|
||||
public MailItem(int itemId, int itemCount, int itemLevel) {
|
||||
this.itemId = itemId;
|
||||
this.itemCount = itemCount;
|
||||
this.itemLevel = itemLevel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user