@@ -0,0 +1,1087 @@
+package org.spongepowered.common.effect.particle;%0A%0Aimport org.spongepowered.api.ResourceKey;%0Aimport org.spongepowered.api.effect.particle.ParticleOption;%0Aimport org.spongepowered.api.effect.particle.ParticleType;%0Aimport org.spongepowered.common.SpongeCatalogType;%0A%0Aimport java.util.Map;%0Aimport java.util.Optional;%0A%0Apublic final class NumericalParticleType extends SpongeCatalogType implements ParticleType %7B%0A%0A    private final int id;%0A    private final Map%3CParticleOption%3C?%3E, Object%3E defaultOptions;%0A%0A    public NumericalParticleType(int id, ResourceKey key, Map%3CParticleOption%3C?%3E, Object%3E defaultOptions) %7B%0A        super(key);%0A        this.id = id;%0A        this.defaultOptions = defaultOptions;%0A    %7D%0A%0A    public int getId() %7B%0A        return this.id;%0A    %7D%0A%0A    @SuppressWarnings(%22unchecked%22)%0A    @Override%0A    public %3CV%3E Optional%3CV%3E getDefaultOption(final ParticleOption%3CV%3E option) %7B%0A        return Optional.ofNullable((V) this.defaultOptions.get(option));%0A    %7D%0A%0A    @Override%0A    public Map%3CParticleOption%3C?%3E, Object%3E getDefaultOptions() %7B%0A        return this.defaultOptions;%0A    %7D%0A%7D

Implement ParticleType for dumb numerical ID'd particles.