Read Open States from Excels (#1557)

* Make sure we never access PlayerOpenStateManager::map directly.

* Read OpenStates from excels.

* Add defaultState

* Replace hardcoded open states with the ones read from excels.

* Don't send change notify when unlocking on login.

* Add open state blacklist for default unlocks.

* Add a way to temporarily set open states for dev

* Remove old OpenState.java

* Fix UnlockAllCommand

* Change condType to an enum.
This commit is contained in:
GanyusLeftHorn
2022-07-24 09:12:07 +02:00
committed by GitHub
Unverified
parent 89717f3c15
commit d0edd39465
10 changed files with 260 additions and 154 deletions
@@ -2,10 +2,10 @@ package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode;
import emu.grasscutter.net.proto.SetOpenStateRspOuterClass.SetOpenStateRsp;
public class PacketSetOpenStateRsp extends BasePacket {
public PacketSetOpenStateRsp(int openState, int value) {
super(PacketOpcodes.SetOpenStateRsp);
@@ -15,4 +15,12 @@ public class PacketSetOpenStateRsp extends BasePacket {
this.setData(proto);
}
public PacketSetOpenStateRsp(Retcode retcode) {
super(PacketOpcodes.SetOpenStateRsp);
SetOpenStateRsp proto = SetOpenStateRsp.newBuilder()
.setRetcode(retcode.getNumber()).build();
this.setData(proto);
}
}