functional events in NoiseAddon

This commit is contained in:
dfsek 2021-07-21 20:10:57 -07:00
parent dce3742fcb
commit a0a15802e4

View File

@ -30,7 +30,6 @@ import com.dfsek.terra.api.addon.TerraAddon;
import com.dfsek.terra.api.addon.annotations.Addon;
import com.dfsek.terra.api.addon.annotations.Author;
import com.dfsek.terra.api.addon.annotations.Version;
import com.dfsek.terra.api.event.EventListener;
import com.dfsek.terra.api.event.events.config.pack.ConfigPackPreLoadEvent;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.noise.NoiseSampler;
@ -44,7 +43,7 @@ import java.util.function.Supplier;
@Addon("config-noise-function")
@Author("Terra")
@Version("1.0.0")
public class NoiseAddon extends TerraAddon implements EventListener {
public class NoiseAddon extends TerraAddon {
@Inject
private TerraPlugin plugin;
@ -52,10 +51,9 @@ public class NoiseAddon extends TerraAddon implements EventListener {
@Override
public void initialize() {
plugin.getEventManager().registerListener(this, this);
}
public void packPreLoad(ConfigPackPreLoadEvent event) {
plugin.getEventManager()
.register(ConfigPackPreLoadEvent.class)
.then(event -> {
CheckedRegistry<Supplier<ObjectTemplate<NoiseSampler>>> noiseRegistry = event.getPack().getOrCreateRegistry(NOISE_SAMPLER_TOKEN);
event.getPack()
.applyLoader(CellularSampler.DistanceFunction.class, (t, o, l) -> CellularSampler.DistanceFunction.valueOf((String) o))
@ -100,5 +98,6 @@ public class NoiseAddon extends TerraAddon implements EventListener {
NoiseConfigPackTemplate template = new NoiseConfigPackTemplate();
event.loadTemplate(template);
packFunctions.putAll(template.getNoiseBuilderMap());
});
}
}