Skip to content

Commit

Permalink
Registry rewrite
Browse files Browse the repository at this point in the history
  • Loading branch information
cassiancc committed Sep 14, 2024
1 parent 4b9e079 commit 5a130c9
Show file tree
Hide file tree
Showing 10 changed files with 172 additions and 316 deletions.
4 changes: 2 additions & 2 deletions common/src/main/java/cc/cassian/pyrite/Pyrite.java
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ public static void init(String platform) {
MapColor color = checkDyeMapColour(dye);
if (dyeIndex > 15) {
//Dye items.
createPyriteItem(dye + "_dye", platform);
registerPyriteItem(dye + "_dye");
//Dyed Wool
createPyriteBlock(dye + "_wool", "block", Blocks.WHITE_WOOL, color, blockLux, platform);
//Terracotta Block
Expand Down Expand Up @@ -111,7 +111,7 @@ public static void init(String platform) {
//Create block.
createPyriteBlock(block + "_gate","fence_gate", wallsBlock, platform);
}
register(platform);
register();

}

Expand Down
125 changes: 32 additions & 93 deletions common/src/main/java/cc/cassian/pyrite/functions/BlockCreator.java
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package cc.cassian.pyrite.functions;

import cc.cassian.pyrite.functions.architectury.CommonRegistry;
import cc.cassian.pyrite.functions.fabric.FabricRegistry;
import dev.architectury.injectables.annotations.ExpectPlatform;
import net.minecraft.block.*;
import net.minecraft.block.piston.PistonBehavior;
import net.minecraft.particle.ParticleEffect;

import java.util.ArrayList;
import java.util.Map;
import java.util.Objects;

Expand All @@ -17,21 +17,21 @@ public class BlockCreator {
final static Block[] vanillaWood = getVanillaWood();
final static Block[] resource_blocks = getVanillaResourceBlocks();

public static void createPyriteItem(String id, String platform) {
if (isFabric(platform)) {
FabricRegistry.registerPyriteItem(id);
}
else {
CommonRegistry.registerPyriteItem(id);
}
@ExpectPlatform
public static void platfomRegister(String blockID, String blockType, AbstractBlock.Settings blockSettings, WoodType type, BlockSetType blockSetType, ParticleEffect particle, Block copyBlock) {
throw new AssertionError();
}
public static void register(String platform) {
if (isFabric(platform)) {
FabricRegistry.register();
}
else {
CommonRegistry.register();

//Create and add Pyrite items.
@ExpectPlatform
public static void registerPyriteItem(String itemID) {
throw new AssertionError();
}

//Create and add Pyrite items.
@ExpectPlatform
public static void register() {
throw new AssertionError();
}

public static void generateResourceBlocks(String platform) {
Expand Down Expand Up @@ -85,34 +85,7 @@ private static void createCarpet(String blockID, String platform) {

//Create and then add most of the manually generated blocks.
public static void createPyriteBlock(String blockID, String blockType, Block copyBlock, String platform) {
AbstractBlock.Settings blockSettings = copyBlock(copyBlock);
if (isFabric(platform)) {
switch (blockType) {
case "fence_gate":
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings, WoodType.CRIMSON);
break;
case "door", "trapdoor":
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings, BlockSetType.IRON);
break;
default:
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings);
break;
}
}
else {
switch (blockType) {
case "fence_gate":
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings, WoodType.CRIMSON);
break;
case "door", "trapdoor":
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings, BlockSetType.IRON);
break;
default:
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings);
break;
}
}

platfomRegister(blockID, blockType, copyBlock(copyBlock), WoodType.CRIMSON, BlockSetType.IRON, null, copyBlock);
}

//Create a slab from the last block added.
Expand All @@ -130,82 +103,48 @@ public static void createSlab(String blockID, Block copyBlock, String platform)
//Create blocks that require a change in light level, e.g. Locked Chests
public static void createPyriteBlock(String blockID, String blockType, Block copyBlock, int lux, String platform) {
AbstractBlock.Settings blockSettings = copyBlock(copyBlock).luminance(parseLux(lux));
sendToRegistry(blockID, blockType, blockSettings, platform);
platfomRegister(blockID, blockType, blockSettings, null, null, null, null);

}

private static void sendToRegistry(String blockID, String blockType, AbstractBlock.Settings blockSettings, String platform) {
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings);
} else {
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings);
}
platfomRegister(blockID, blockType, blockSettings, null, null, null, null);

}
private static void sendToRegistry(String blockID, Block copyBlock, AbstractBlock.Settings blockSettings, String platform) {
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, copyBlock, blockSettings);
} else {
CommonRegistry.registerPyriteBlock(blockID, copyBlock, blockSettings);
}
platfomRegister(blockID, "stairs", blockSettings, null, null, null, copyBlock);
}

//Add blocks with particles - Torches/Torch Levers
private static void sendToRegistry(String blockID, String blockType, AbstractBlock.Settings blockSettings, ParticleEffect particle, String platform) {
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings, particle);
} else {
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings, particle);
}
platfomRegister(blockID, blockType, blockSettings, null, null, particle, null);

}

//Create blocks that require a Block Set.
public static void createPyriteBlock(String blockID, String blockType, Block copyBlock, BlockSetType set, String platform) {
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, blockType, copyBlock(copyBlock), set);
}
else {
CommonRegistry.registerPyriteBlock(blockID, blockType, copyBlock(copyBlock), set);
}
platfomRegister(blockID, blockType, copyBlock(copyBlock), null, set, null, null);

}

//Create most of the generic Stained Blocks, then add them.
public static void createPyriteBlock(String blockID, String blockType, Block copyBlock, MapColor color, int lux, String platform) {
AbstractBlock.Settings blockSettings = copyBlock(copyBlock).mapColor(color).luminance(parseLux(lux));
if (Objects.equals(blockType, "stairs")) {
sendToRegistry(blockID, copyBlock, blockSettings, platform);
}
else {
sendToRegistry(blockID, blockType, blockSettings, platform);
}
platfomRegister(blockID, blockType, blockSettings, null, null, null, copyBlock);
}

//Create basic blocks.
public static void createPyriteBlock(String blockID, Block copyBlock, String platform) {
AbstractBlock.Settings blockSettings = copyBlock(copyBlock);
sendToRegistry(blockID, "block", blockSettings, platform);
platfomRegister(blockID, "block", blockSettings, null, null, null, null);

}

//Create Stained blocks that require a wood set or wood type, then add them.
public static void createPyriteBlock(String blockID, String blockType, Block copyBlock, MapColor color, int lux, BlockSetType set, WoodType type, String platform) {
AbstractBlock.Settings blockSettings = copyBlock(copyBlock).mapColor(color).luminance(parseLux(lux));
switch (blockType) {
case "door", "trapdoor", "button", "pressure_plate":
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings, set);
}
else {
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings, set);
}
break;
case "fence_gate", "wall_gate", "sign":
if (isFabric(platform)) {
FabricRegistry.registerPyriteBlock(blockID, blockType, blockSettings, type);
}
else {
CommonRegistry.registerPyriteBlock(blockID, blockType, blockSettings, type);
}
break;
default:
sendToRegistry(blockID, blockType, blockSettings, platform);
break;
}
platfomRegister(blockID, blockType, blockSettings, type, set, null, null);

}

public static void createFlowers(String platform) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,11 @@

import dev.architectury.registry.registries.RegistrySupplier;
import net.minecraft.block.*;
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.sound.SoundEvents;
import net.minecraft.util.DyeColor;
import org.jetbrains.annotations.NotNull;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Objects;
import java.util.function.ToIntFunction;


public class ArchitecturyHelpers {
Expand All @@ -29,4 +25,8 @@ public static void addGrassBlock(RegistrySupplier<Block> newBlock) {
grassBlocks.add(newBlock);
}

public static Item.Settings newItem(RegistrySupplier<ItemGroup> group) {
return new Item.Settings().arch$tab(group);
}

}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
import net.minecraft.util.Identifier;

import static cc.cassian.pyrite.Pyrite.modID;
import static cc.cassian.pyrite.fabric.FabricHelpers.PYRITE_GROUP;
import static cc.cassian.pyrite.fabric.FabricHelpers.registerFuelBlocks;
import static cc.cassian.pyrite.functions.fabric.FabricHelpers.PYRITE_GROUP;
import static cc.cassian.pyrite.functions.fabric.FabricHelpers.registerFuelBlocks;

public class PyriteFabric implements ModInitializer {
@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
import net.minecraft.client.color.world.BiomeColors;
import net.minecraft.client.render.RenderLayer;

import static cc.cassian.pyrite.functions.fabric.FabricCommonHelpers.*;
import static cc.cassian.pyrite.functions.fabric.FabricHelpers.*;


@Environment(EnvType.CLIENT)
Expand Down
Loading

0 comments on commit 5a130c9

Please sign in to comment.