package config; import manager.STableManager; import manager.Table; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @Table(name ="TaskConfig") public class STaskConfig implements BaseConfig { private int id; private int taskType; private int[][] taskValue; private int[][] reward; private int[] jump; private static Map sTaskConfigMap; private static Map> sTaskConfigByTypeMap; @Override public void init() throws Exception { Map config = STableManager.getConfig(STaskConfig.class); Map> configTmp = new HashMap<>(); for(STaskConfig sTaskConfig : config.values()){ int taskType = sTaskConfig.getTaskType(); if(!configTmp.containsKey(taskType)){ configTmp.put(taskType,new ArrayList<>()); } configTmp.get(taskType).add(sTaskConfig); } sTaskConfigMap = config; sTaskConfigByTypeMap = configTmp; } public static STaskConfig getsTaskConfigById(int missionId) { return sTaskConfigMap.get(missionId); } public static List getsTaskConfigByType(int type) { return sTaskConfigByTypeMap.get(type); } public int getId() { return id; } public int getTaskType() { return taskType; } public int[][] getTaskValue() { return taskValue; } public int[][] getReward() { return reward; } public int[] getJump() { return jump; } }