mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-17 01:15:52 +01:00
implement furniture make system
This commit is contained in:
@@ -87,6 +87,8 @@ public class GameData {
|
||||
private static final Int2ObjectMap<TowerLevelData> towerLevelDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<TowerScheduleData> towerScheduleDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<ForgeData> forgeDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<HomeWorldLevelData> homeWorldLevelDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<FurnitureMakeConfigData> furnitureMakeConfigDataMap = new Int2ObjectOpenHashMap<>();
|
||||
|
||||
// Cache
|
||||
private static Map<Integer, List<Integer>> fetters = new HashMap<>();
|
||||
@@ -377,4 +379,10 @@ public class GameData {
|
||||
public static Int2ObjectMap<ForgeData> getForgeDataMap() {
|
||||
return forgeDataMap;
|
||||
}
|
||||
public static Int2ObjectMap<HomeWorldLevelData> getHomeWorldLevelDataMap() {
|
||||
return homeWorldLevelDataMap;
|
||||
}
|
||||
public static Int2ObjectMap<FurnitureMakeConfigData> getFurnitureMakeConfigDataMap() {
|
||||
return furnitureMakeConfigDataMap;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import emu.grasscutter.data.common.ItemParamData;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Getter;
|
||||
import lombok.experimental.FieldDefaults;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@FieldDefaults(level = AccessLevel.PRIVATE)
|
||||
@ResourceType(name = {"FurnitureMakeExcelConfigData.json"})
|
||||
public class FurnitureMakeConfigData extends GameResource {
|
||||
|
||||
int configID;
|
||||
int furnitureItemID;
|
||||
int count;
|
||||
int exp;
|
||||
List<ItemParamData> materialItems;
|
||||
int makeTime;
|
||||
int maxAccelerateTime;
|
||||
int quickFetchMaterialNum;
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return configID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
this.materialItems = materialItems.stream()
|
||||
.filter(x -> x.getId() > 0)
|
||||
.toList();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Getter;
|
||||
import lombok.experimental.FieldDefaults;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@FieldDefaults(level = AccessLevel.PRIVATE)
|
||||
@ResourceType(name = {"HomeworldLevelExcelConfigData.json"})
|
||||
public class HomeWorldLevelData extends GameResource {
|
||||
|
||||
int level;
|
||||
int exp;
|
||||
int homeCoinStoreLimit;
|
||||
int homeFetterExpStoreLimit;
|
||||
int rewardId;
|
||||
int furnitureMakeSlotCount;
|
||||
int outdoorUnlockBlockCount;
|
||||
int freeUnlockModuleCount;
|
||||
int deployNpcCount;
|
||||
int limitShopGoodsCount;
|
||||
List<String> levelFuncs;
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
super.onLoad();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user