mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-17 09:25:06 +01:00
73 lines
1.9 KiB
Java
73 lines
1.9 KiB
Java
package emu.grasscutter.data.common;
|
|
|
|
import com.google.gson.annotations.SerializedName;
|
|
import emu.grasscutter.Grasscutter;
|
|
import emu.grasscutter.data.GameData;
|
|
import emu.grasscutter.data.excels.dungeon.DailyDungeonData;
|
|
import emu.grasscutter.game.world.Position;
|
|
import it.unimi.dsi.fastutil.ints.IntArrayList;
|
|
import it.unimi.dsi.fastutil.ints.IntList;
|
|
import lombok.Getter;
|
|
import lombok.Setter;
|
|
|
|
public final class PointData {
|
|
@Getter @Setter private int id;
|
|
@Getter private int areaId;
|
|
|
|
private String $type;
|
|
@Getter private Position tranPos;
|
|
@Getter private Position pos;
|
|
@Getter private Position rot;
|
|
@Getter private Position size;
|
|
|
|
@SerializedName(
|
|
value = "dungeonIds",
|
|
alternate = {"JHHFPGJNMIN"})
|
|
@Getter
|
|
private int[] dungeonIds;
|
|
|
|
@SerializedName(
|
|
value = "dungeonRandomList",
|
|
alternate = {"OIBKFJNBLHO"})
|
|
@Getter
|
|
private int[] dungeonRandomList;
|
|
|
|
@SerializedName(
|
|
value = "groupIDs",
|
|
alternate = {"HFOBOOHKBGF"})
|
|
@Getter
|
|
private int[] groupIDs;
|
|
|
|
@SerializedName(
|
|
value = "tranSceneId",
|
|
alternate = {"JHBICGBAPIH"})
|
|
@Getter
|
|
@Setter
|
|
private int tranSceneId;
|
|
|
|
public String getType() {
|
|
return $type;
|
|
}
|
|
|
|
public void updateDailyDungeon() {
|
|
if (this.dungeonRandomList == null || this.dungeonRandomList.length == 0) {
|
|
return;
|
|
}
|
|
|
|
IntList newDungeons = new IntArrayList();
|
|
int day = Grasscutter.getCurrentDayOfWeek();
|
|
|
|
for (int randomId : this.dungeonRandomList) {
|
|
DailyDungeonData data = GameData.getDailyDungeonDataMap().get(randomId);
|
|
|
|
if (data != null) {
|
|
for (int d : data.getDungeonsByDay(day)) {
|
|
newDungeons.add(d);
|
|
}
|
|
}
|
|
}
|
|
|
|
this.dungeonIds = newDungeons.toIntArray();
|
|
}
|
|
}
|