mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-23 08:38:51 +00:00
use TypeToken for registries
This commit is contained in:
@@ -7,6 +7,7 @@ import com.dfsek.terra.api.config.ConfigFactory;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.ConfigType;
|
||||
import com.dfsek.terra.api.registry.OpenRegistry;
|
||||
import com.dfsek.terra.api.util.TypeToken;
|
||||
import com.dfsek.terra.api.util.seeded.SeededTerraBiome;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
@@ -15,6 +16,8 @@ public class BiomeConfigType implements ConfigType<BiomeTemplate, SeededTerraBio
|
||||
private final ConfigPack pack;
|
||||
private final BiomeFactory factory;
|
||||
|
||||
public static final TypeToken<SeededTerraBiome> BIOME_TYPE_TOKEN = new TypeToken<>() {};
|
||||
|
||||
public BiomeConfigType(ConfigPack pack) {
|
||||
this.pack = pack;
|
||||
this.factory = new BiomeFactory(pack);
|
||||
@@ -31,8 +34,8 @@ public class BiomeConfigType implements ConfigType<BiomeTemplate, SeededTerraBio
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<SeededTerraBiome> getTypeClass() {
|
||||
return SeededTerraBiome.class;
|
||||
public TypeToken<SeededTerraBiome> getTypeClass() {
|
||||
return BIOME_TYPE_TOKEN;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.dfsek.terra.api.config.ConfigFactory;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.ConfigType;
|
||||
import com.dfsek.terra.api.registry.OpenRegistry;
|
||||
import com.dfsek.terra.api.util.TypeToken;
|
||||
import com.dfsek.terra.api.world.Flora;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
@@ -13,6 +14,8 @@ public class FloraConfigType implements ConfigType<FloraTemplate, Flora> {
|
||||
private final FloraFactory factory = new FloraFactory();
|
||||
private final ConfigPack pack;
|
||||
|
||||
public static final TypeToken<Flora> FLORA_TYPE_TOKEN = new TypeToken<>(){};
|
||||
|
||||
public FloraConfigType(ConfigPack pack) {
|
||||
this.pack = pack;
|
||||
}
|
||||
@@ -28,8 +31,8 @@ public class FloraConfigType implements ConfigType<FloraTemplate, Flora> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<Flora> getTypeClass() {
|
||||
return Flora.class;
|
||||
public TypeToken<Flora> getTypeClass() {
|
||||
return FLORA_TYPE_TOKEN;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -6,12 +6,14 @@ import com.dfsek.terra.api.config.ConfigFactory;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.ConfigType;
|
||||
import com.dfsek.terra.api.registry.OpenRegistry;
|
||||
import com.dfsek.terra.api.util.TypeToken;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public class OreConfigType implements ConfigType<OreTemplate, Ore> {
|
||||
private final OreFactory factory = new OreFactory();
|
||||
private final ConfigPack pack;
|
||||
public static final TypeToken<Ore> ORE_TYPE_TOKEN = new TypeToken<>(){};
|
||||
|
||||
public OreConfigType(ConfigPack pack) {
|
||||
this.pack = pack;
|
||||
@@ -28,8 +30,8 @@ public class OreConfigType implements ConfigType<OreTemplate, Ore> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<Ore> getTypeClass() {
|
||||
return Ore.class;
|
||||
public TypeToken<Ore> getTypeClass() {
|
||||
return ORE_TYPE_TOKEN;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -8,6 +8,7 @@ import com.dfsek.terra.api.config.ConfigFactory;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.ConfigType;
|
||||
import com.dfsek.terra.api.registry.OpenRegistry;
|
||||
import com.dfsek.terra.api.util.TypeToken;
|
||||
import com.dfsek.terra.api.world.generator.Palette;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
@@ -17,6 +18,8 @@ public class PaletteConfigType implements ConfigType<PaletteTemplate, Palette> {
|
||||
private final ConfigPack pack;
|
||||
private final TerraPlugin main;
|
||||
|
||||
public static final TypeToken<Palette> PALETTE_TYPE_TOKEN = new TypeToken<>(){};
|
||||
|
||||
public PaletteConfigType(ConfigPack pack, TerraPlugin main) {
|
||||
this.pack = pack;
|
||||
this.main = main;
|
||||
@@ -33,8 +36,8 @@ public class PaletteConfigType implements ConfigType<PaletteTemplate, Palette> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<Palette> getTypeClass() {
|
||||
return Palette.class;
|
||||
public TypeToken<Palette> getTypeClass() {
|
||||
return PALETTE_TYPE_TOKEN;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.dfsek.terra.api.config.ConfigFactory;
|
||||
import com.dfsek.terra.api.config.ConfigPack;
|
||||
import com.dfsek.terra.api.config.ConfigType;
|
||||
import com.dfsek.terra.api.registry.OpenRegistry;
|
||||
import com.dfsek.terra.api.util.TypeToken;
|
||||
import com.dfsek.terra.api.world.Tree;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
@@ -13,6 +14,7 @@ public class TreeConfigType implements ConfigType<TreeTemplate, Tree> {
|
||||
private final TreeFactory factory = new TreeFactory();
|
||||
private final ConfigPack pack;
|
||||
|
||||
public static final TypeToken<Tree> TREE_TYPE_TOKEN = new TypeToken<>(){};
|
||||
public TreeConfigType(ConfigPack pack) {
|
||||
this.pack = pack;
|
||||
}
|
||||
@@ -28,8 +30,8 @@ public class TreeConfigType implements ConfigType<TreeTemplate, Tree> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<Tree> getTypeClass() {
|
||||
return Tree.class;
|
||||
public TypeToken<Tree> getTypeClass() {
|
||||
return TREE_TYPE_TOKEN;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -30,7 +30,7 @@ public class FeatureGenerationAddon extends TerraAddon implements EventListener
|
||||
}
|
||||
|
||||
public void onBiomeLoad(ConfigurationLoadEvent event) {
|
||||
if(SeededTerraBiome.class.isAssignableFrom(event.getType().getTypeClass())) {
|
||||
if(event.is(SeededTerraBiome.class)) {
|
||||
event.getLoadedObject(SeededTerraBiome.class).getContext().put(event.load(new BiomeFeaturesTemplate()).get());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ public class FloraGenerationAddon extends TerraAddon implements EventListener {
|
||||
}
|
||||
|
||||
public void onBiomeLoad(ConfigurationLoadEvent event) {
|
||||
if(SeededTerraBiome.class.isAssignableFrom(event.getType().getTypeClass())) {
|
||||
if(event.is(SeededTerraBiome.class)) {
|
||||
event.getLoadedObject(SeededTerraBiome.class).getContext().put(event.load(new BiomeFloraTemplate()).get());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ public class TreeGenerationAddon extends TerraAddon implements EventListener {
|
||||
}
|
||||
|
||||
public void onBiomeLoad(ConfigurationLoadEvent event) {
|
||||
if(SeededTerraBiome.class.isAssignableFrom(event.getType().getTypeClass())) {
|
||||
if(event.is(SeededTerraBiome.class)) {
|
||||
event.getLoadedObject(SeededTerraBiome.class).getContext().put(event.load(new BiomeTreeTemplate()).get());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user