Refactor support for codex(aka archive) animal, weapon, reliquary

This commit is contained in:
ShiroSaki
2022-05-23 13:23:09 +08:00
committed by Melledy
parent 117a947b07
commit 2b799958d2
19 changed files with 466 additions and 42 deletions

View File

@@ -2,7 +2,6 @@ package emu.grasscutter.game.player;
import dev.morphia.annotations.*;
import emu.grasscutter.GameConstants;
import emu.grasscutter.Grasscutter;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.def.PlayerLevelData;
import emu.grasscutter.database.DatabaseHelper;
@@ -30,8 +29,6 @@ import emu.grasscutter.game.props.ActionReason;
import emu.grasscutter.game.props.EntityType;
import emu.grasscutter.game.props.PlayerProperty;
import emu.grasscutter.game.props.SceneType;
import emu.grasscutter.game.quest.GameMainQuest;
import emu.grasscutter.game.quest.GameQuest;
import emu.grasscutter.game.quest.QuestManager;
import emu.grasscutter.game.shop.ShopLimit;
import emu.grasscutter.game.managers.MapMarkManager.*;
@@ -80,6 +77,7 @@ public class Player {
private Position pos;
private Position rotation;
private PlayerBirthday birthday;
private PlayerCodex codex;
private Map<Integer, Integer> properties;
private Set<Integer> nameCardList;
@@ -189,6 +187,7 @@ public class Player {
this.birthday = new PlayerBirthday();
this.rewardedLevels = new HashSet<>();
this.moonCardGetTimes = new HashSet<>();
this.codex = new PlayerCodex();
this.shopLimit = new ArrayList<>();
this.expeditionInfo = new HashMap<>();
@@ -209,6 +208,7 @@ public class Player {
this.signature = "";
this.teamManager = new TeamManager(this);
this.birthday = new PlayerBirthday();
this.codex = new PlayerCodex();
this.setProperty(PlayerProperty.PROP_PLAYER_LEVEL, 1);
this.setProperty(PlayerProperty.PROP_IS_SPRING_AUTO_USE, 1);
this.setProperty(PlayerProperty.PROP_SPRING_AUTO_USE_PERCENT, 50);
@@ -758,7 +758,6 @@ public class Player {
return expeditionInfo.get(avaterGuid);
}
public List<ShopLimit> getShopLimit() {
return shopLimit;
}
@@ -984,6 +983,8 @@ public class Player {
return this.birthday.getDay() > 0;
}
public PlayerCodex getCodex(){ return this.codex; }
public Set<Integer> getRewardedLevels() {
return rewardedLevels;
}
@@ -1159,6 +1160,7 @@ public class Player {
@PostLoad
private void onLoad() {
this.getCodex().setPlayer(this);
this.getTeamManager().setPlayer(this);
this.getTowerManager().setPlayer(this);
}
@@ -1229,7 +1231,6 @@ public class Player {
session.send(new PacketFinishedParentQuestNotify(this));
session.send(new PacketQuestListNotify(this));
session.send(new PacketCodexDataFullNotify(this));
session.send(new PacketServerCondMeetQuestListUpdateNotify(this));
session.send(new PacketAllWidgetDataNotify(this));
session.send(new PacketWidgetGadgetAllDataNotify());
session.send(new PacketPlayerHomeCompInfoNotify(this));