76 lines
1.6 KiB
Java
76 lines
1.6 KiB
Java
package config;
|
|
|
|
import manager.STableManager;
|
|
import manager.Table;
|
|
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
@Table(name ="RingFireConfig")
|
|
public class SRingFireConfig implements BaseConfig {
|
|
|
|
private int id;
|
|
|
|
private int ringId;
|
|
|
|
private int ringQuality;
|
|
|
|
private int ringLevel;
|
|
|
|
private int playerLevel;
|
|
|
|
private int[] fireId;
|
|
|
|
private int[][] property;
|
|
|
|
private static Map<Integer,Map<Integer,SRingFireConfig>> sRingFireByRingIdAndLevelMap;
|
|
|
|
|
|
@Override
|
|
public void init() throws Exception {
|
|
Map<Integer, SRingFireConfig> config = STableManager.getConfig(SRingFireConfig.class);
|
|
sRingFireByRingIdAndLevelMap = new HashMap<>();
|
|
for(SRingFireConfig sRingFireConfig : config.values()){
|
|
int ringId = sRingFireConfig.getRingId();
|
|
int ringLevel = sRingFireConfig.getRingLevel();
|
|
sRingFireByRingIdAndLevelMap.computeIfAbsent(ringId,v->new HashMap<>()).put(ringLevel,sRingFireConfig);
|
|
}
|
|
}
|
|
|
|
public static SRingFireConfig getsRingFireByRingIdAndLevel(int ringId,int ringLevel) {
|
|
if(!sRingFireByRingIdAndLevelMap.containsKey(ringId)){
|
|
return null;
|
|
}
|
|
return sRingFireByRingIdAndLevelMap.get(ringId).get(ringLevel);
|
|
}
|
|
|
|
public int getID() {
|
|
return id;
|
|
}
|
|
|
|
public int getRingId() {
|
|
return ringId;
|
|
}
|
|
|
|
public int getRingQuality() {
|
|
return ringQuality;
|
|
}
|
|
|
|
public int getRingLevel() {
|
|
return ringLevel;
|
|
}
|
|
|
|
public int getPlayerLevel() {
|
|
return playerLevel;
|
|
}
|
|
|
|
public int[] getFireId() {
|
|
return fireId;
|
|
}
|
|
|
|
public int[][] getProperty() {
|
|
return property;
|
|
}
|
|
|
|
|
|
} |