mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-02-07 18:46:49 +01:00
Implement a new item drops system (#2112)
* 1 * Delete .gitattributes * implement * Update PacketDropHintNotify.java * Update PacketWorldChestOpenNotify.java * Update FileUtils.java * Update PacketDropHintNotify.java * Update WorldDataSystem.java --------- Co-authored-by: Magix <27646710+KingRainbow44@users.noreply.github.com>
This commit is contained in:
@@ -189,25 +189,26 @@ public final class GameData {
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<CookRecipeData> cookRecipeDataMap =
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<CompoundData> compoundDataMap = new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<DailyDungeonData> dailyDungeonDataMap =
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static final Int2ObjectMap<DropTableData> dropTableDataMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static final Int2ObjectMap<DropMaterialData> dropMaterialDataMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter
|
||||
private static final Int2ObjectMap<DungeonData> dungeonDataMap = new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<DungeonEntryData> dungeonEntryDataMap =
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<EnvAnimalGatherConfigData> envAnimalGatherConfigDataMap =
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@Getter
|
||||
private static final Int2ObjectMap<EquipAffixData> equipAffixDataMap =
|
||||
|
||||
12
src/main/java/emu/grasscutter/data/common/DropItemData.java
Normal file
12
src/main/java/emu/grasscutter/data/common/DropItemData.java
Normal file
@@ -0,0 +1,12 @@
|
||||
package emu.grasscutter.data.common;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public class DropItemData {
|
||||
@SerializedName(value="itemId")
|
||||
private int id;
|
||||
private String countRange;
|
||||
private int weight;
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import lombok.Getter;
|
||||
|
||||
@ResourceType(name = "DropMaterialExcelConfigData.json")
|
||||
@Getter
|
||||
public class DropMaterialData extends GameResource {
|
||||
@Getter(onMethod_ = @Override)
|
||||
private int id;
|
||||
private boolean useOnGain;
|
||||
private boolean disableFirstGainHint;
|
||||
private boolean autoPick;
|
||||
private boolean dropSeparately;
|
||||
private int groupId;
|
||||
private boolean forceGainHint;
|
||||
}
|
||||
25
src/main/java/emu/grasscutter/data/excels/DropTableData.java
Normal file
25
src/main/java/emu/grasscutter/data/excels/DropTableData.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import emu.grasscutter.data.ResourceType.LoadPriority;
|
||||
import emu.grasscutter.data.common.DropItemData;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ResourceType(name ={"DropTableExcelConfigData.json","DropSubTableExcelConfigData.json"} , loadPriority = LoadPriority.HIGH)
|
||||
@Getter
|
||||
public class DropTableData extends GameResource {
|
||||
@Getter(onMethod_ = @Override)
|
||||
private int id;
|
||||
private int randomType;
|
||||
private int dropLevel;
|
||||
private List<DropItemData> dropVec;
|
||||
private int nodeType;
|
||||
private boolean fallToGround;
|
||||
private int sourceType;
|
||||
private int everydayLimit;
|
||||
private int historyLimit;
|
||||
private int activityLimit;
|
||||
}
|
||||
Reference in New Issue
Block a user