diff --git a/checkstyle-suppressions.xml b/checkstyle-suppressions.xml
index 43d88c605..d3670cc4f 100644
--- a/checkstyle-suppressions.xml
+++ b/checkstyle-suppressions.xml
@@ -5,5 +5,6 @@
-
+
+
diff --git a/src/main/java/org/spongepowered/common/data/DataRegistrar.java b/src/main/java/org/spongepowered/common/data/DataRegistrar.java
index 52573ada6..c7d7e6231 100644
--- a/src/main/java/org/spongepowered/common/data/DataRegistrar.java
+++ b/src/main/java/org/spongepowered/common/data/DataRegistrar.java
@@ -46,7 +46,6 @@ import org.spongepowered.api.data.property.PropertyRegistry;
import org.spongepowered.api.data.property.block.*;
import org.spongepowered.api.data.property.entity.*;
import org.spongepowered.api.data.property.item.*;
-import org.spongepowered.api.data.type.ArmorType;
import org.spongepowered.api.entity.EntitySnapshot;
import org.spongepowered.api.item.FireworkEffect;
import org.spongepowered.api.item.inventory.ItemStack;
diff --git a/src/main/java/org/spongepowered/common/entity/projectile/ProjectileLauncher.java b/src/main/java/org/spongepowered/common/entity/projectile/ProjectileLauncher.java
index a2cfa5303..e0c7f6c17 100644
--- a/src/main/java/org/spongepowered/common/entity/projectile/ProjectileLauncher.java
+++ b/src/main/java/org/spongepowered/common/entity/projectile/ProjectileLauncher.java
@@ -77,7 +77,7 @@ import org.spongepowered.api.world.Location;
import org.spongepowered.api.world.World;
import org.spongepowered.api.world.extent.Extent;
import org.spongepowered.common.SpongeImpl;
-import org.spongepowered.common.registry.type.EntityTypeRegistryModule;
+import org.spongepowered.common.registry.type.entity.EntityTypeRegistryModule;
import java.util.List;
import java.util.Map;
diff --git a/src/main/java/org/spongepowered/common/mixin/core/block/tiles/MixinTileEntity.java b/src/main/java/org/spongepowered/common/mixin/core/block/tiles/MixinTileEntity.java
index a9848fbb4..a4e238849 100644
--- a/src/main/java/org/spongepowered/common/mixin/core/block/tiles/MixinTileEntity.java
+++ b/src/main/java/org/spongepowered/common/mixin/core/block/tiles/MixinTileEntity.java
@@ -55,7 +55,7 @@ import org.spongepowered.common.data.util.NbtDataUtil;
import org.spongepowered.common.entity.PlayerTracker;
import org.spongepowered.common.interfaces.block.tile.IMixinTileEntity;
import org.spongepowered.common.interfaces.data.IMixinCustomDataHolder;
-import org.spongepowered.common.registry.type.TileEntityTypeRegistryModule;
+import org.spongepowered.common.registry.type.block.TileEntityTypeRegistryModule;
import org.spongepowered.common.util.persistence.NbtTranslator;
import org.spongepowered.common.interfaces.world.IMixinWorld;
import org.spongepowered.common.util.SpongeHooks;
diff --git a/src/main/java/org/spongepowered/common/mixin/core/entity/ai/MixinEntityAIBase.java b/src/main/java/org/spongepowered/common/mixin/core/entity/ai/MixinEntityAIBase.java
index 4d6cfac05..05a6c2fb2 100644
--- a/src/main/java/org/spongepowered/common/mixin/core/entity/ai/MixinEntityAIBase.java
+++ b/src/main/java/org/spongepowered/common/mixin/core/entity/ai/MixinEntityAIBase.java
@@ -37,7 +37,7 @@ import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.common.interfaces.ai.IMixinEntityAIBase;
-import org.spongepowered.common.registry.type.AITaskTypeModule;
+import org.spongepowered.common.registry.type.entity.AITaskTypeModule;
import java.util.Optional;
diff --git a/src/main/java/org/spongepowered/common/mixin/core/scoreboard/MixinScorePlayerTeam.java b/src/main/java/org/spongepowered/common/mixin/core/scoreboard/MixinScorePlayerTeam.java
index 5b8da6d19..ab4c3812e 100644
--- a/src/main/java/org/spongepowered/common/mixin/core/scoreboard/MixinScorePlayerTeam.java
+++ b/src/main/java/org/spongepowered/common/mixin/core/scoreboard/MixinScorePlayerTeam.java
@@ -42,8 +42,8 @@ import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.common.interfaces.IMixinScoreboard;
import org.spongepowered.common.interfaces.IMixinTeam;
-import org.spongepowered.common.registry.type.TextColorsRegistryModule;
-import org.spongepowered.common.registry.type.VisibilityRegistryModule;
+import org.spongepowered.common.registry.type.text.TextColorsRegistryModule;
+import org.spongepowered.common.registry.type.scoreboard.VisibilityRegistryModule;
import org.spongepowered.common.scoreboard.SpongeTeam;
import java.util.Collection;
diff --git a/src/main/java/org/spongepowered/common/registry/CommonModuleRegistry.java b/src/main/java/org/spongepowered/common/registry/CommonModuleRegistry.java
index aaf5c1b31..0fe379091 100644
--- a/src/main/java/org/spongepowered/common/registry/CommonModuleRegistry.java
+++ b/src/main/java/org/spongepowered/common/registry/CommonModuleRegistry.java
@@ -31,52 +31,9 @@ import org.spongepowered.api.block.tileentity.TileEntityType;
import org.spongepowered.api.block.trait.BooleanTrait;
import org.spongepowered.api.block.trait.EnumTrait;
import org.spongepowered.api.block.trait.IntegerTrait;
-import org.spongepowered.api.data.meta.PatternLayer;
-import org.spongepowered.api.data.type.ArmorType;
-import org.spongepowered.api.data.type.Art;
-import org.spongepowered.api.data.type.BannerPatternShape;
-import org.spongepowered.api.data.type.BigMushroomType;
-import org.spongepowered.api.data.type.BrickType;
-import org.spongepowered.api.data.type.Career;
-import org.spongepowered.api.data.type.CoalType;
-import org.spongepowered.api.data.type.ComparatorType;
-import org.spongepowered.api.data.type.CookedFish;
-import org.spongepowered.api.data.type.DirtType;
-import org.spongepowered.api.data.type.DisguisedBlockType;
-import org.spongepowered.api.data.type.DoublePlantType;
-import org.spongepowered.api.data.type.DyeColor;
-import org.spongepowered.api.data.type.Fish;
-import org.spongepowered.api.data.type.GoldenApple;
-import org.spongepowered.api.data.type.Hinge;
-import org.spongepowered.api.data.type.LogAxis;
-import org.spongepowered.api.data.type.NotePitch;
-import org.spongepowered.api.data.type.OcelotType;
-import org.spongepowered.api.data.type.PistonType;
-import org.spongepowered.api.data.type.PlantType;
-import org.spongepowered.api.data.type.PortionType;
-import org.spongepowered.api.data.type.PrismarineType;
-import org.spongepowered.api.data.type.Profession;
-import org.spongepowered.api.data.type.QuartzType;
-import org.spongepowered.api.data.type.RabbitType;
-import org.spongepowered.api.data.type.RailDirection;
-import org.spongepowered.api.data.type.SandType;
-import org.spongepowered.api.data.type.SandstoneType;
-import org.spongepowered.api.data.type.ShrubType;
-import org.spongepowered.api.data.type.SkeletonType;
-import org.spongepowered.api.data.type.SkullType;
-import org.spongepowered.api.data.type.SlabType;
-import org.spongepowered.api.data.type.StairShape;
-import org.spongepowered.api.data.type.StoneType;
-import org.spongepowered.api.data.type.ToolType;
-import org.spongepowered.api.data.type.TreeType;
-import org.spongepowered.api.data.type.WallType;
-import org.spongepowered.api.effect.particle.BlockParticle;
-import org.spongepowered.api.effect.particle.ColoredParticle;
-import org.spongepowered.api.effect.particle.ItemParticle;
-import org.spongepowered.api.effect.particle.NoteParticle;
-import org.spongepowered.api.effect.particle.ParticleEffect;
-import org.spongepowered.api.effect.particle.ParticleType;
-import org.spongepowered.api.effect.particle.ResizableParticle;
+import org.spongepowered.api.data.meta.*;
+import org.spongepowered.api.data.type.*;
+import org.spongepowered.api.effect.particle.*;
import org.spongepowered.api.effect.potion.PotionEffect;
import org.spongepowered.api.effect.potion.PotionEffectType;
import org.spongepowered.api.effect.sound.SoundType;
@@ -124,34 +81,9 @@ import org.spongepowered.api.world.WorldBuilder;
import org.spongepowered.api.world.biome.BiomeType;
import org.spongepowered.api.world.difficulty.Difficulty;
import org.spongepowered.api.world.explosion.Explosion;
-import org.spongepowered.api.world.gen.populator.BigMushroom;
-import org.spongepowered.api.world.gen.populator.BlockBlob;
-import org.spongepowered.api.world.gen.populator.Cactus;
-import org.spongepowered.api.world.gen.populator.DeadBush;
-import org.spongepowered.api.world.gen.populator.DesertWell;
-import org.spongepowered.api.world.gen.populator.DoublePlant;
-import org.spongepowered.api.world.gen.populator.Dungeon;
-import org.spongepowered.api.world.gen.populator.EnderCrystalPlatform;
-import org.spongepowered.api.world.gen.populator.Flower;
-import org.spongepowered.api.world.gen.populator.Forest;
-import org.spongepowered.api.world.gen.populator.Glowstone;
-import org.spongepowered.api.world.gen.populator.IcePath;
-import org.spongepowered.api.world.gen.populator.IceSpike;
-import org.spongepowered.api.world.gen.populator.Lake;
-import org.spongepowered.api.world.gen.populator.Melon;
-import org.spongepowered.api.world.gen.populator.Mushroom;
-import org.spongepowered.api.world.gen.populator.NetherFire;
-import org.spongepowered.api.world.gen.populator.Ore;
-import org.spongepowered.api.world.gen.populator.Pumpkin;
-import org.spongepowered.api.world.gen.populator.RandomBlock;
-import org.spongepowered.api.world.gen.populator.RandomObject;
-import org.spongepowered.api.world.gen.populator.Reed;
-import org.spongepowered.api.world.gen.populator.SeaFloor;
-import org.spongepowered.api.world.gen.populator.Shrub;
-import org.spongepowered.api.world.gen.populator.Vine;
-import org.spongepowered.api.world.gen.populator.WaterLily;
import org.spongepowered.api.world.gen.PopulatorObject;
import org.spongepowered.api.world.gen.PopulatorType;
+import org.spongepowered.api.world.gen.populator.*;
import org.spongepowered.api.world.gen.type.BiomeTreeType;
import org.spongepowered.api.world.gen.type.MushroomType;
import org.spongepowered.api.world.weather.Weather;
@@ -177,119 +109,24 @@ import org.spongepowered.common.event.SpongeIndirectEntityDamageSourceBuilder;
import org.spongepowered.common.item.SpongeFireworkEffectBuilder;
import org.spongepowered.common.item.SpongeItemStackBuilder;
import org.spongepowered.common.item.merchant.SpongeTradeOfferBuilder;
-import org.spongepowered.common.registry.factory.MessageSinkFactoryModule;
-import org.spongepowered.common.registry.factory.ResourcePackFactoryModule;
-import org.spongepowered.common.registry.factory.SelectorFactoryModule;
-import org.spongepowered.common.registry.factory.TextFactoryModule;
-import org.spongepowered.common.registry.factory.TimingsFactoryModule;
-import org.spongepowered.common.registry.type.AITaskTypeModule;
-import org.spongepowered.common.registry.type.ArgumentRegistryModule;
-import org.spongepowered.common.registry.type.ArtRegistryModule;
-import org.spongepowered.common.registry.type.BannerPatternShapeRegistryModule;
-import org.spongepowered.common.registry.type.BigMushroomRegistryModule;
-import org.spongepowered.common.registry.type.BiomeTreeTypeRegistryModule;
-import org.spongepowered.common.registry.type.BiomeTypeRegistryModule;
-import org.spongepowered.common.registry.type.BlockTypeRegistryModule;
-import org.spongepowered.common.registry.type.BrickTypeRegistryModule;
-import org.spongepowered.common.registry.type.CareerRegistryModule;
-import org.spongepowered.common.registry.type.ChatTypeRegistryModule;
-import org.spongepowered.common.registry.type.CoalTypeRegistryModule;
-import org.spongepowered.common.registry.type.ComparatorTypeRegistryModule;
-import org.spongepowered.common.registry.type.CookedFishRegistryModule;
-import org.spongepowered.common.registry.type.CriteriaRegistryModule;
-import org.spongepowered.common.registry.type.DamageModifierTypeRegistryModule;
-import org.spongepowered.common.registry.type.DamageSourceRegistryModule;
-import org.spongepowered.common.registry.type.DamageTypeRegistryModule;
-import org.spongepowered.common.registry.type.DifficultyRegistryModule;
-import org.spongepowered.common.registry.type.DirtTypeRegistryModule;
-import org.spongepowered.common.registry.type.DisguisedBlockTypeRegistryModule;
-import org.spongepowered.common.registry.type.DisplaySlotRegistryModule;
-import org.spongepowered.common.registry.type.DoublePlantTypeRegistryModule;
-import org.spongepowered.common.registry.type.DyeColorRegistryModule;
-import org.spongepowered.common.registry.type.EnchantmentRegistryModule;
-import org.spongepowered.common.registry.type.EntityTypeRegistryModule;
-import org.spongepowered.common.registry.type.EquipmentTypeRegistryModule;
-import org.spongepowered.common.registry.type.FireworkShapeRegistryModule;
-import org.spongepowered.common.registry.type.FishRegistryModule;
-import org.spongepowered.common.registry.type.GameModeRegistryModule;
-import org.spongepowered.common.registry.type.GeneratorRegistryModule;
-import org.spongepowered.common.registry.type.GoalTypeModule;
-import org.spongepowered.common.registry.type.GoldenAppleRegistryModule;
-import org.spongepowered.common.registry.type.HingeRegistryModule;
-import org.spongepowered.common.registry.type.ItemTypeRegistryModule;
-import org.spongepowered.common.registry.type.LogAxisRegistryModule;
-import org.spongepowered.common.registry.type.MushroomTypeRegistryModule;
-import org.spongepowered.common.registry.type.NotePitchRegistryModule;
-import org.spongepowered.common.registry.type.ObjectiveDisplayModeRegistryModule;
-import org.spongepowered.common.registry.type.OcelotTypeRegistryModule;
-import org.spongepowered.common.registry.type.ParticleRegistryModule;
-import org.spongepowered.common.registry.type.PistonTypeRegistryModule;
-import org.spongepowered.common.registry.type.PlantTypeModuleRegistry;
-import org.spongepowered.common.registry.type.PopulatorObjectRegistryModule;
-import org.spongepowered.common.registry.type.PopulatorTypeRegistryModule;
-import org.spongepowered.common.registry.type.PortionTypeRegistryModule;
-import org.spongepowered.common.registry.type.PotionEffectTypeRegistryModule;
-import org.spongepowered.common.registry.type.PrismarineRegistryModule;
-import org.spongepowered.common.registry.type.ProfessionRegistryModule;
-import org.spongepowered.common.registry.type.QuartzTypeRegistryModule;
-import org.spongepowered.common.registry.type.RabbitTypeRegistryModule;
-import org.spongepowered.common.registry.type.RailDirectionRegistryModule;
-import org.spongepowered.common.registry.type.RotationRegistryModule;
-import org.spongepowered.common.registry.type.SandTypeRegistryModule;
-import org.spongepowered.common.registry.type.SandstoneTypeRegistryModule;
-import org.spongepowered.common.registry.type.SelectorTypeRegistryModule;
-import org.spongepowered.common.registry.type.ShrubTypeRegistryModule;
-import org.spongepowered.common.registry.type.SkeletonTypeRegistryModule;
-import org.spongepowered.common.registry.type.SkullTypeRegistryModule;
-import org.spongepowered.common.registry.type.SlabTypeRegistryModule;
-import org.spongepowered.common.registry.type.SoundRegistryModule;
-import org.spongepowered.common.registry.type.StairShapeRegistryModule;
-import org.spongepowered.common.registry.type.StoneTypeRegistryModule;
-import org.spongepowered.common.registry.type.TextColorsRegistryModule;
-import org.spongepowered.common.registry.type.TextStyleRegistryModule;
-import org.spongepowered.common.registry.type.TileEntityTypeRegistryModule;
-import org.spongepowered.common.registry.type.TreeTypeRegistryModule;
-import org.spongepowered.common.registry.type.VisibilityRegistryModule;
-import org.spongepowered.common.registry.type.WallTypeRegistryModule;
-import org.spongepowered.common.registry.type.WeatherRegistryModule;
-import org.spongepowered.common.registry.type.block.BooleanTraitRegistryModule;
-import org.spongepowered.common.registry.type.block.EnumTraitRegistryModule;
-import org.spongepowered.common.registry.type.block.IntegerTraitRegistryModule;
-import org.spongepowered.common.registry.type.item.ArmorTypeRegistryModule;
-import org.spongepowered.common.registry.type.item.ToolTypeRegistryModule;
-import org.spongepowered.common.registry.type.world.DimensionRegistryModule;
+import org.spongepowered.common.registry.factory.*;
+import org.spongepowered.common.registry.type.*;
+import org.spongepowered.common.registry.type.block.*;
+import org.spongepowered.common.registry.type.effect.*;
+import org.spongepowered.common.registry.type.entity.*;
+import org.spongepowered.common.registry.type.event.*;
+import org.spongepowered.common.registry.type.item.*;
+import org.spongepowered.common.registry.type.scoreboard.*;
+import org.spongepowered.common.registry.type.text.*;
+import org.spongepowered.common.registry.type.world.*;
+import org.spongepowered.common.registry.type.world.gen.*;
import org.spongepowered.common.scheduler.SpongeTaskBuilder;
import org.spongepowered.common.scoreboard.builder.SpongeObjectiveBuilder;
import org.spongepowered.common.scoreboard.builder.SpongeScoreboardBuilder;
import org.spongepowered.common.scoreboard.builder.SpongeTeamBuilder;
import org.spongepowered.common.world.SpongeExplosionBuilder;
import org.spongepowered.common.world.SpongeWorldBuilder;
-import org.spongepowered.common.world.gen.builders.BigMushroomBuilder;
-import org.spongepowered.common.world.gen.builders.BlockBlobBuilder;
-import org.spongepowered.common.world.gen.builders.CactusBuilder;
-import org.spongepowered.common.world.gen.builders.DeadBushBuilder;
-import org.spongepowered.common.world.gen.builders.DesertWellBuilder;
-import org.spongepowered.common.world.gen.builders.DoublePlantBuilder;
-import org.spongepowered.common.world.gen.builders.DungeonBuilder;
-import org.spongepowered.common.world.gen.builders.EnderCrystalPlatformBuilder;
-import org.spongepowered.common.world.gen.builders.FlowerBuilder;
-import org.spongepowered.common.world.gen.builders.ForestBuilder;
-import org.spongepowered.common.world.gen.builders.GlowstoneBuilder;
-import org.spongepowered.common.world.gen.builders.IcePathBuilder;
-import org.spongepowered.common.world.gen.builders.IceSpikeBuilder;
-import org.spongepowered.common.world.gen.builders.LakeBuilder;
-import org.spongepowered.common.world.gen.builders.MelonBuilder;
-import org.spongepowered.common.world.gen.builders.MushroomBuilder;
-import org.spongepowered.common.world.gen.builders.NetherFireBuilder;
-import org.spongepowered.common.world.gen.builders.OreBuilder;
-import org.spongepowered.common.world.gen.builders.PumpkinBuilder;
-import org.spongepowered.common.world.gen.builders.RandomBlockBuilder;
-import org.spongepowered.common.world.gen.builders.RandomObjectBuilder;
-import org.spongepowered.common.world.gen.builders.ReedBuilder;
-import org.spongepowered.common.world.gen.builders.SeaFloorBuilder;
-import org.spongepowered.common.world.gen.builders.ShrubBuilder;
-import org.spongepowered.common.world.gen.builders.VineBuilder;
-import org.spongepowered.common.world.gen.builders.WaterLilyBuilder;
+import org.spongepowered.common.world.gen.builders.*;
import java.lang.reflect.Field;
import java.util.ArrayList;
@@ -391,7 +228,7 @@ public final class CommonModuleRegistry {
.registerBuilderSupplier(Shrub.Builder.class, ShrubBuilder::new)
.registerBuilderSupplier(Vine.Builder.class, VineBuilder::new)
.registerBuilderSupplier(WaterLily.Builder.class, WaterLilyBuilder::new)
- ;
+ ;
}
@SuppressWarnings({"unchecked", "rawtypes"})
@@ -472,7 +309,7 @@ public final class CommonModuleRegistry {
.registerModule(Visibility.class, new VisibilityRegistryModule())
.registerModule(WallType.class, new WallTypeRegistryModule())
.registerModule(Weather.class, new WeatherRegistryModule())
- ;
+ ;
}
private CommonModuleRegistry() { }
diff --git a/src/main/java/org/spongepowered/common/registry/SpongeGameRegistry.java b/src/main/java/org/spongepowered/common/registry/SpongeGameRegistry.java
index a68603f92..6a2108d84 100644
--- a/src/main/java/org/spongepowered/common/registry/SpongeGameRegistry.java
+++ b/src/main/java/org/spongepowered/common/registry/SpongeGameRegistry.java
@@ -66,8 +66,8 @@ import org.spongepowered.common.data.SpongeDataManager;
import org.spongepowered.common.data.property.SpongePropertyRegistry;
import org.spongepowered.common.data.value.SpongeValueFactory;
import org.spongepowered.common.network.status.SpongeFavicon;
-import org.spongepowered.common.registry.type.AITaskTypeModule;
-import org.spongepowered.common.registry.type.RotationRegistryModule;
+import org.spongepowered.common.registry.type.block.RotationRegistryModule;
+import org.spongepowered.common.registry.type.entity.AITaskTypeModule;
import org.spongepowered.common.registry.util.RegistrationDependency;
import org.spongepowered.common.registry.util.RegistryModuleLoader;
import org.spongepowered.common.text.translation.SpongeTranslation;
diff --git a/src/main/java/org/spongepowered/common/registry/type/BlockTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/BlockTypeRegistryModule.java
index 15652739f..4c9dc3b07 100644
--- a/src/main/java/org/spongepowered/common/registry/type/BlockTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/BlockTypeRegistryModule.java
@@ -26,7 +26,6 @@ package org.spongepowered.common.registry.type;
import static com.google.common.base.Preconditions.checkNotNull;
-import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Maps;
import org.spongepowered.api.block.BlockType;
diff --git a/src/main/java/org/spongepowered/common/registry/type/BigMushroomRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/BigMushroomRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/BigMushroomRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/BigMushroomRegistryModule.java
index 2ffb1bd96..19f74c506 100644
--- a/src/main/java/org/spongepowered/common/registry/type/BigMushroomRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/BigMushroomRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/BrickTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/BrickTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/BrickTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/BrickTypeRegistryModule.java
index e12aef6df..67b208545 100644
--- a/src/main/java/org/spongepowered/common/registry/type/BrickTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/BrickTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ComparatorTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/ComparatorTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/ComparatorTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/ComparatorTypeRegistryModule.java
index 7d03ed273..63752808b 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ComparatorTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/ComparatorTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DirtTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/DirtTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/DirtTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/DirtTypeRegistryModule.java
index c2bef24b0..65df09d2f 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DirtTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/DirtTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DisguisedBlockTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/DisguisedBlockTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DisguisedBlockTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/DisguisedBlockTypeRegistryModule.java
index d7b20f2b4..dc7a640a9 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DisguisedBlockTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/DisguisedBlockTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DoublePlantTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/DoublePlantTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DoublePlantTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/DoublePlantTypeRegistryModule.java
index 595b335bc..53262d8ba 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DoublePlantTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/DoublePlantTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/HingeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/HingeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/HingeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/HingeRegistryModule.java
index 6ffc2d16e..521fe380a 100644
--- a/src/main/java/org/spongepowered/common/registry/type/HingeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/HingeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/LogAxisRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/LogAxisRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/LogAxisRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/LogAxisRegistryModule.java
index 6299c1334..3fb62430a 100644
--- a/src/main/java/org/spongepowered/common/registry/type/LogAxisRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/LogAxisRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/MushroomTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/MushroomTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/MushroomTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/MushroomTypeRegistryModule.java
index ccacba1f1..240747d0a 100644
--- a/src/main/java/org/spongepowered/common/registry/type/MushroomTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/MushroomTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PistonTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/PistonTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/PistonTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/PistonTypeRegistryModule.java
index fba30c4e7..70f9f8607 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PistonTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/PistonTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PlantTypeModuleRegistry.java b/src/main/java/org/spongepowered/common/registry/type/block/PlantTypeModuleRegistry.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/PlantTypeModuleRegistry.java
rename to src/main/java/org/spongepowered/common/registry/type/block/PlantTypeModuleRegistry.java
index 0666e3b7e..83c3ded41 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PlantTypeModuleRegistry.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/PlantTypeModuleRegistry.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PortionTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/PortionTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/PortionTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/PortionTypeRegistryModule.java
index d13f942e4..64ee3e34b 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PortionTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/PortionTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PrismarineRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/PrismarineRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/PrismarineRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/PrismarineRegistryModule.java
index e55a1e51c..a24bb97b4 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PrismarineRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/PrismarineRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/QuartzTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/QuartzTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/QuartzTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/QuartzTypeRegistryModule.java
index 74dfdc7c8..b4fee0fc4 100644
--- a/src/main/java/org/spongepowered/common/registry/type/QuartzTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/QuartzTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/RailDirectionRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/RailDirectionRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/RailDirectionRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/RailDirectionRegistryModule.java
index c03e634e6..e49f4aa14 100644
--- a/src/main/java/org/spongepowered/common/registry/type/RailDirectionRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/RailDirectionRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/RotationRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/RotationRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/RotationRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/RotationRegistryModule.java
index a76e94606..19c358c7a 100644
--- a/src/main/java/org/spongepowered/common/registry/type/RotationRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/RotationRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SandTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/SandTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/SandTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/SandTypeRegistryModule.java
index acdda6eba..b6ff7adde 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SandTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/SandTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SandstoneTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/SandstoneTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/SandstoneTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/SandstoneTypeRegistryModule.java
index 552d2a581..84729cdf0 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SandstoneTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/SandstoneTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ShrubTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/ShrubTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/ShrubTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/ShrubTypeRegistryModule.java
index 60d906438..0808d59f2 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ShrubTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/ShrubTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SkullTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/SkullTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/SkullTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/SkullTypeRegistryModule.java
index 3b46252a2..c3f836644 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SkullTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/SkullTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SlabTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/SlabTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/SlabTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/SlabTypeRegistryModule.java
index 780807fe0..fddef79f0 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SlabTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/SlabTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/StairShapeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/StairShapeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/StairShapeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/StairShapeRegistryModule.java
index 9ca8476c6..a4b6b96a5 100644
--- a/src/main/java/org/spongepowered/common/registry/type/StairShapeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/StairShapeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/StoneTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/StoneTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/StoneTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/StoneTypeRegistryModule.java
index b74c51730..fc276a26a 100644
--- a/src/main/java/org/spongepowered/common/registry/type/StoneTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/StoneTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/TileEntityTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/TileEntityTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/TileEntityTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/TileEntityTypeRegistryModule.java
index a203ebc4b..12ff37ae9 100644
--- a/src/main/java/org/spongepowered/common/registry/type/TileEntityTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/TileEntityTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -30,7 +30,6 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import net.minecraft.tileentity.TileEntity;
-import net.minecraft.tileentity.TileEntityMobSpawner;
import org.spongepowered.api.block.tileentity.TileEntityType;
import org.spongepowered.api.block.tileentity.TileEntityTypes;
import org.spongepowered.common.registry.ExtraClassCatalogRegistryModule;
diff --git a/src/main/java/org/spongepowered/common/registry/type/TreeTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/TreeTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/TreeTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/TreeTypeRegistryModule.java
index aea7c6643..593d50385 100644
--- a/src/main/java/org/spongepowered/common/registry/type/TreeTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/TreeTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/WallTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/block/WallTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/WallTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/block/WallTypeRegistryModule.java
index 90a38509e..70012dfc8 100644
--- a/src/main/java/org/spongepowered/common/registry/type/WallTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/block/WallTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.block;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ParticleRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/effect/ParticleRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/ParticleRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/effect/ParticleRegistryModule.java
index 91929068e..d1e9e2f0e 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ParticleRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/effect/ParticleRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.effect;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PotionEffectTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/effect/PotionEffectTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/PotionEffectTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/effect/PotionEffectTypeRegistryModule.java
index 45642392e..71129431b 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PotionEffectTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/effect/PotionEffectTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.effect;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SoundRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/effect/SoundRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/SoundRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/effect/SoundRegistryModule.java
index 8c22bb7f7..1ec94aa5e 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SoundRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/effect/SoundRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.effect;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/effect/package-info.java b/src/main/java/org/spongepowered/common/registry/type/effect/package-info.java
new file mode 100644
index 000000000..5aac60918
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/effect/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.effect;
diff --git a/src/main/java/org/spongepowered/common/registry/type/AITaskTypeModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/AITaskTypeModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/AITaskTypeModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/AITaskTypeModule.java
index 15341355e..8725ccb74 100644
--- a/src/main/java/org/spongepowered/common/registry/type/AITaskTypeModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/AITaskTypeModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ArtRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/ArtRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/ArtRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/ArtRegistryModule.java
index 17e45a3f7..4fd1b20ae 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ArtRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/ArtRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/CareerRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/CareerRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/CareerRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/CareerRegistryModule.java
index fa6c37d38..5872223a5 100644
--- a/src/main/java/org/spongepowered/common/registry/type/CareerRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/CareerRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/EntityTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/EntityTypeRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/EntityTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/EntityTypeRegistryModule.java
index d0bf9ebc2..558e280fb 100644
--- a/src/main/java/org/spongepowered/common/registry/type/EntityTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/EntityTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/GameModeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/GameModeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/GameModeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/GameModeRegistryModule.java
index 9dac3a7da..371a95533 100644
--- a/src/main/java/org/spongepowered/common/registry/type/GameModeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/GameModeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/GoalTypeModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/GoalTypeModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/GoalTypeModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/GoalTypeModule.java
index d9248248c..4e5781929 100644
--- a/src/main/java/org/spongepowered/common/registry/type/GoalTypeModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/GoalTypeModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/OcelotTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/OcelotTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/OcelotTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/OcelotTypeRegistryModule.java
index 72fb53233..8a4d3f697 100644
--- a/src/main/java/org/spongepowered/common/registry/type/OcelotTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/OcelotTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ProfessionRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/ProfessionRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/ProfessionRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/ProfessionRegistryModule.java
index 27d5994d2..ec0c4b6cc 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ProfessionRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/ProfessionRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/RabbitTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/RabbitTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/RabbitTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/RabbitTypeRegistryModule.java
index ebe015ef4..153e2e686 100644
--- a/src/main/java/org/spongepowered/common/registry/type/RabbitTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/RabbitTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SkeletonTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/entity/SkeletonTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/SkeletonTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/entity/SkeletonTypeRegistryModule.java
index 83df5c1d9..472141cf9 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SkeletonTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/SkeletonTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.entity;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/entity/package-info.java b/src/main/java/org/spongepowered/common/registry/type/entity/package-info.java
new file mode 100644
index 000000000..f203e2973
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/entity/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.entity;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DamageModifierTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/event/DamageModifierTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DamageModifierTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/event/DamageModifierTypeRegistryModule.java
index f04d2eaa3..39a28b5f1 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DamageModifierTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/event/DamageModifierTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.event;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DamageSourceRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/event/DamageSourceRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DamageSourceRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/event/DamageSourceRegistryModule.java
index 9122a5dda..dbc0d5b39 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DamageSourceRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/event/DamageSourceRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.event;
import org.spongepowered.api.event.cause.entity.damage.source.DamageSource;
import org.spongepowered.api.event.cause.entity.damage.source.DamageSources;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DamageTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/event/DamageTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DamageTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/event/DamageTypeRegistryModule.java
index 22482a3ba..2a3f246fc 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DamageTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/event/DamageTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.event;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/event/package-info.java b/src/main/java/org/spongepowered/common/registry/type/event/package-info.java
new file mode 100644
index 000000000..b74b79b97
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/event/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.event;
diff --git a/src/main/java/org/spongepowered/common/registry/type/CoalTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/CoalTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/CoalTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/CoalTypeRegistryModule.java
index 6fd2c8ecf..6325a5488 100644
--- a/src/main/java/org/spongepowered/common/registry/type/CoalTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/CoalTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/CookedFishRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/CookedFishRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/CookedFishRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/CookedFishRegistryModule.java
index 02b76c2a2..c035ff883 100644
--- a/src/main/java/org/spongepowered/common/registry/type/CookedFishRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/CookedFishRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/EnchantmentRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/EnchantmentRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/EnchantmentRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/EnchantmentRegistryModule.java
index 4d98cd178..74166e1c9 100644
--- a/src/main/java/org/spongepowered/common/registry/type/EnchantmentRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/EnchantmentRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/EquipmentTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/EquipmentTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/EquipmentTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/EquipmentTypeRegistryModule.java
index 0f42452bd..d33b67b8e 100644
--- a/src/main/java/org/spongepowered/common/registry/type/EquipmentTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/EquipmentTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/FireworkShapeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/FireworkShapeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/FireworkShapeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/FireworkShapeRegistryModule.java
index 5e23f7ceb..1d92e8278 100644
--- a/src/main/java/org/spongepowered/common/registry/type/FireworkShapeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/FireworkShapeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/FishRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/FishRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/FishRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/FishRegistryModule.java
index b468d1ad3..cb0a9e84f 100644
--- a/src/main/java/org/spongepowered/common/registry/type/FishRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/FishRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/GoldenAppleRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/GoldenAppleRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/GoldenAppleRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/item/GoldenAppleRegistryModule.java
index 35516f713..5b8ffb2ab 100644
--- a/src/main/java/org/spongepowered/common/registry/type/GoldenAppleRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/GoldenAppleRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.item;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/item/ToolTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/item/ToolTypeRegistryModule.java
index f62e01113..05847ef2e 100644
--- a/src/main/java/org/spongepowered/common/registry/type/item/ToolTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/item/ToolTypeRegistryModule.java
@@ -28,9 +28,6 @@ import static com.google.common.base.Preconditions.checkNotNull;
import com.google.common.collect.ImmutableSet;
import net.minecraft.item.Item;
-import net.minecraft.item.ItemArmor;
-import org.spongepowered.api.data.type.ArmorType;
-import org.spongepowered.api.data.type.ArmorTypes;
import org.spongepowered.api.data.type.ToolType;
import org.spongepowered.api.data.type.ToolTypes;
import org.spongepowered.common.registry.CatalogRegistryModule;
diff --git a/src/main/java/org/spongepowered/common/registry/type/CriteriaRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/scoreboard/CriteriaRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/CriteriaRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/scoreboard/CriteriaRegistryModule.java
index 0bbe7e162..0aee7fa8d 100644
--- a/src/main/java/org/spongepowered/common/registry/type/CriteriaRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/scoreboard/CriteriaRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.scoreboard;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DisplaySlotRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/scoreboard/DisplaySlotRegistryModule.java
similarity index 95%
rename from src/main/java/org/spongepowered/common/registry/type/DisplaySlotRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/scoreboard/DisplaySlotRegistryModule.java
index 3398400df..b8acd489e 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DisplaySlotRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/scoreboard/DisplaySlotRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.scoreboard;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -32,6 +32,7 @@ import net.minecraft.util.EnumChatFormatting;
import org.spongepowered.api.scoreboard.displayslot.DisplaySlot;
import org.spongepowered.api.scoreboard.displayslot.DisplaySlots;
import org.spongepowered.common.registry.CatalogRegistryModule;
+import org.spongepowered.common.registry.type.text.TextColorsRegistryModule;
import org.spongepowered.common.registry.util.RegisterCatalog;
import org.spongepowered.common.scoreboard.SpongeDisplaySlot;
import org.spongepowered.common.text.format.SpongeTextColor;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ObjectiveDisplayModeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/scoreboard/ObjectiveDisplayModeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/ObjectiveDisplayModeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/scoreboard/ObjectiveDisplayModeRegistryModule.java
index aa950fbfb..df399811b 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ObjectiveDisplayModeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/scoreboard/ObjectiveDisplayModeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.scoreboard;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/VisibilityRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/scoreboard/VisibilityRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/VisibilityRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/scoreboard/VisibilityRegistryModule.java
index c97ee0a8a..af26809cf 100644
--- a/src/main/java/org/spongepowered/common/registry/type/VisibilityRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/scoreboard/VisibilityRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.scoreboard;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/scoreboard/package-info.java b/src/main/java/org/spongepowered/common/registry/type/scoreboard/package-info.java
new file mode 100644
index 000000000..86db57504
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/scoreboard/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.scoreboard;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ArgumentRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/text/ArgumentRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/ArgumentRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/text/ArgumentRegistryModule.java
index 8455494e6..cbf7dff80 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ArgumentRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/text/ArgumentRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.text;
import com.flowpowered.math.vector.Vector3d;
import com.flowpowered.math.vector.Vector3i;
diff --git a/src/main/java/org/spongepowered/common/registry/type/ChatTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/text/ChatTypeRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/ChatTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/text/ChatTypeRegistryModule.java
index d846926c8..b2a51aeb6 100644
--- a/src/main/java/org/spongepowered/common/registry/type/ChatTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/text/ChatTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.text;
import com.google.common.collect.ImmutableMap;
import org.spongepowered.api.text.chat.ChatType;
diff --git a/src/main/java/org/spongepowered/common/registry/type/SelectorTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/text/SelectorTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/SelectorTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/text/SelectorTypeRegistryModule.java
index 9cb368171..e6412d544 100644
--- a/src/main/java/org/spongepowered/common/registry/type/SelectorTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/text/SelectorTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.text;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/TextColorsRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/text/TextColorsRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/TextColorsRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/text/TextColorsRegistryModule.java
index fc6130c9e..f4095d6fa 100644
--- a/src/main/java/org/spongepowered/common/registry/type/TextColorsRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/text/TextColorsRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.text;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/TextStyleRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/text/TextStyleRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/TextStyleRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/text/TextStyleRegistryModule.java
index 2596013d3..357b77e02 100644
--- a/src/main/java/org/spongepowered/common/registry/type/TextStyleRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/text/TextStyleRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.text;
import com.google.common.collect.ImmutableMap;
import net.minecraft.util.EnumChatFormatting;
diff --git a/src/main/java/org/spongepowered/common/registry/type/text/package-info.java b/src/main/java/org/spongepowered/common/registry/type/text/package-info.java
new file mode 100644
index 000000000..139f44d50
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/text/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.text;
diff --git a/src/main/java/org/spongepowered/common/registry/type/DifficultyRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/DifficultyRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/DifficultyRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/DifficultyRegistryModule.java
index d81068ae7..b8834db58 100644
--- a/src/main/java/org/spongepowered/common/registry/type/DifficultyRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/DifficultyRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/GeneratorRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/GeneratorRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/GeneratorRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/GeneratorRegistryModule.java
index cea40fb05..055618f68 100644
--- a/src/main/java/org/spongepowered/common/registry/type/GeneratorRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/GeneratorRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/WeatherRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/WeatherRegistryModule.java
similarity index 97%
rename from src/main/java/org/spongepowered/common/registry/type/WeatherRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/WeatherRegistryModule.java
index 9ca4d225d..70c8fc749 100644
--- a/src/main/java/org/spongepowered/common/registry/type/WeatherRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/WeatherRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/BiomeTreeTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTreeTypeRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/BiomeTreeTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTreeTypeRegistryModule.java
index e416bd7d0..5d196aa22 100644
--- a/src/main/java/org/spongepowered/common/registry/type/BiomeTreeTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTreeTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world.gen;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/BiomeTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTypeRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/BiomeTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTypeRegistryModule.java
index 09e7f1bb6..ec3702698 100644
--- a/src/main/java/org/spongepowered/common/registry/type/BiomeTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/gen/BiomeTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world.gen;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PopulatorObjectRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorObjectRegistryModule.java
similarity index 98%
rename from src/main/java/org/spongepowered/common/registry/type/PopulatorObjectRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorObjectRegistryModule.java
index cd9e72a53..3c81e153d 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PopulatorObjectRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorObjectRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world.gen;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/PopulatorTypeRegistryModule.java b/src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorTypeRegistryModule.java
similarity index 99%
rename from src/main/java/org/spongepowered/common/registry/type/PopulatorTypeRegistryModule.java
rename to src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorTypeRegistryModule.java
index 3ee467a14..4a40e3cf3 100644
--- a/src/main/java/org/spongepowered/common/registry/type/PopulatorTypeRegistryModule.java
+++ b/src/main/java/org/spongepowered/common/registry/type/world/gen/PopulatorTypeRegistryModule.java
@@ -22,7 +22,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
-package org.spongepowered.common.registry.type;
+package org.spongepowered.common.registry.type.world.gen;
import static com.google.common.base.Preconditions.checkNotNull;
diff --git a/src/main/java/org/spongepowered/common/registry/type/world/gen/package-info.java b/src/main/java/org/spongepowered/common/registry/type/world/gen/package-info.java
new file mode 100644
index 000000000..813b3b967
--- /dev/null
+++ b/src/main/java/org/spongepowered/common/registry/type/world/gen/package-info.java
@@ -0,0 +1,25 @@
+/*
+ * This file is part of Sponge, licensed under the MIT License (MIT).
+ *
+ * Copyright (c) SpongePowered
+ * Copyright (c) contributors
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+@org.spongepowered.api.util.annotation.NonnullByDefault package org.spongepowered.common.registry.type.world.gen;
diff --git a/src/main/java/org/spongepowered/common/registry/util/RegistryModuleLoader.java b/src/main/java/org/spongepowered/common/registry/util/RegistryModuleLoader.java
index 22a4d57d2..2fa219050 100644
--- a/src/main/java/org/spongepowered/common/registry/util/RegistryModuleLoader.java
+++ b/src/main/java/org/spongepowered/common/registry/util/RegistryModuleLoader.java
@@ -38,10 +38,10 @@ import org.spongepowered.common.SpongeImpl;
import org.spongepowered.common.registry.RegistrationPhase;
import org.spongepowered.common.registry.RegistryHelper;
import org.spongepowered.common.registry.RegistryModule;
-import org.spongepowered.common.registry.type.AITaskTypeModule;
import org.spongepowered.common.registry.type.BlockTypeRegistryModule;
-import org.spongepowered.common.registry.type.GoalTypeModule;
import org.spongepowered.common.registry.type.ItemTypeRegistryModule;
+import org.spongepowered.common.registry.type.entity.AITaskTypeModule;
+import org.spongepowered.common.registry.type.entity.GoalTypeModule;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
diff --git a/src/main/java/org/spongepowered/common/text/format/SpongeTextColor.java b/src/main/java/org/spongepowered/common/text/format/SpongeTextColor.java
index d8c977512..62a6d5557 100644
--- a/src/main/java/org/spongepowered/common/text/format/SpongeTextColor.java
+++ b/src/main/java/org/spongepowered/common/text/format/SpongeTextColor.java
@@ -30,7 +30,7 @@ import net.minecraft.util.EnumChatFormatting;
import org.spongepowered.api.text.format.TextColor;
import org.spongepowered.api.util.Color;
import org.spongepowered.api.util.annotation.NonnullByDefault;
-import org.spongepowered.common.registry.type.TextColorsRegistryModule;
+import org.spongepowered.common.registry.type.text.TextColorsRegistryModule;
@NonnullByDefault
public class SpongeTextColor implements TextColor {
diff --git a/src/main/java/org/spongepowered/common/text/selector/SpongeArgumentType.java b/src/main/java/org/spongepowered/common/text/selector/SpongeArgumentType.java
index b36dec1e9..1c3c6c5f7 100644
--- a/src/main/java/org/spongepowered/common/text/selector/SpongeArgumentType.java
+++ b/src/main/java/org/spongepowered/common/text/selector/SpongeArgumentType.java
@@ -32,7 +32,7 @@ import org.spongepowered.api.entity.EntityType;
import org.spongepowered.api.text.selector.ArgumentType;
import org.spongepowered.api.util.annotation.NonnullByDefault;
import org.spongepowered.common.SpongeImpl;
-import org.spongepowered.common.registry.type.EntityTypeRegistryModule;
+import org.spongepowered.common.registry.type.entity.EntityTypeRegistryModule;
import java.lang.reflect.Method;
import java.util.Map;