diff options
Diffstat (limited to 'src/main')
32 files changed, 329 insertions, 0 deletions
| diff --git a/src/main/java/net/corechg/sparkt/BlockRegister.java b/src/main/java/net/corechg/sparkt/BlockRegister.java new file mode 100644 index 0000000..5833055 --- /dev/null +++ b/src/main/java/net/corechg/sparkt/BlockRegister.java @@ -0,0 +1,31 @@ +package net.corechg.sparkt; + +import net.minecraft.block.Block; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; +import net.minecraft.util.Identifier; +import net.minecraft.util.registry.Registry; +import net.corechg.sparkt.block.*; + +public class BlockRegister { + +    public static final Block MACHINE_BLOCK = new MachineBlock(); +    public static final Block MACHINE_FURNACE = new MachineFurnace(); +    public static final Block DRIVER_MECHANICAL = new DriverMechanical(); +    public static final Block MACHINE_GRINDER = new MachineGrinder(); +    //public static final Block + +    public static void register(String modid) { +        Registry.register(Registry.BLOCK, new Identifier(modid, "machine_block"), MACHINE_BLOCK); +        Registry.register(Registry.ITEM, new Identifier(modid, "machine_block"), new BlockItem(MACHINE_BLOCK, new Item.Settings())); + +        Registry.register(Registry.BLOCK, new Identifier(modid, "machine_furnace"), MACHINE_FURNACE); +        Registry.register(Registry.ITEM, new Identifier(modid, "machine_furnace"), new BlockItem(MACHINE_FURNACE, new Item.Settings())); + +        Registry.register(Registry.BLOCK, new Identifier(modid, "driver_mechanical"), DRIVER_MECHANICAL); +        Registry.register(Registry.ITEM, new Identifier(modid, "driver_mechanical"), new BlockItem(DRIVER_MECHANICAL, new Item.Settings())); + +        Registry.register(Registry.BLOCK, new Identifier(modid, "machine_grinder"), MACHINE_GRINDER); +        Registry.register(Registry.ITEM, new Identifier(modid, "machine_grinder"), new BlockItem(MACHINE_GRINDER, new Item.Settings())); +    } +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/SparktInit.java b/src/main/java/net/corechg/sparkt/SparktInit.java new file mode 100644 index 0000000..2d2d557 --- /dev/null +++ b/src/main/java/net/corechg/sparkt/SparktInit.java @@ -0,0 +1,19 @@ +package net.corechg.sparkt; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import net.fabricmc.api.ModInitializer; + +public class SparktInit implements ModInitializer { + +    public static final Logger LOG = LogManager.getFormatterLogger("Sparkt|Init"); +    public static final String MODID = "sparkt"; + +    @Override +    public void onInitialize() { +        LOG.info("Preparing to spark a reaction!"); +        BlockRegister.register(MODID); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/DriverMechanical.java b/src/main/java/net/corechg/sparkt/block/DriverMechanical.java new file mode 100644 index 0000000..3198120 --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/DriverMechanical.java @@ -0,0 +1,9 @@ +package net.corechg.sparkt.block; + +public class DriverMechanical extends MachineBlock{ + +    public DriverMechanical() { +        super(); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/MachineBlock.java b/src/main/java/net/corechg/sparkt/block/MachineBlock.java new file mode 100644 index 0000000..7e0c7bb --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/MachineBlock.java @@ -0,0 +1,12 @@ +package net.corechg.sparkt.block; + +import net.minecraft.block.Block; +import net.minecraft.block.Material; + +public class MachineBlock extends Block{ + +    public MachineBlock() { +        super(Settings.of(Material.METAL)); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/MachineFurnace.java b/src/main/java/net/corechg/sparkt/block/MachineFurnace.java new file mode 100644 index 0000000..f7556ca --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/MachineFurnace.java @@ -0,0 +1,9 @@ +package net.corechg.sparkt.block; + +public class MachineFurnace extends MachineBlock{ + +    public MachineFurnace() { +        super(); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/MachineGrinder.java b/src/main/java/net/corechg/sparkt/block/MachineGrinder.java new file mode 100644 index 0000000..49c877d --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/MachineGrinder.java @@ -0,0 +1,9 @@ +package net.corechg.sparkt.block; + +public class MachineGrinder extends MachineBlock{ + +    public MachineGrinder() { +        super(); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/Wire.java b/src/main/java/net/corechg/sparkt/block/Wire.java new file mode 100644 index 0000000..51f9178 --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/Wire.java @@ -0,0 +1,11 @@ +package net.corechg.sparkt.block; + +import net.minecraft.block.Block; + +public class Wire extends Block{ + +    public Wire(Settings settings) { +        super(settings); +    } + +}
\ No newline at end of file diff --git a/src/main/java/net/corechg/sparkt/block/entity/MachineFurnaceEntity.java b/src/main/java/net/corechg/sparkt/block/entity/MachineFurnaceEntity.java new file mode 100644 index 0000000..edde32b --- /dev/null +++ b/src/main/java/net/corechg/sparkt/block/entity/MachineFurnaceEntity.java @@ -0,0 +1,102 @@ +package net.corechg.sparkt.block.entity; + +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.util.Tickable; + +import java.util.ArrayList; + +import net.corechg.transit.network.packet.IStaticPacket; +import net.corechg.transit.network.system.INode; +import net.corechg.transit.network.system.ISystem; +import net.corechg.transit.network.system.swap.IAcceptorNode; + +public class MachineFurnaceEntity extends BlockEntity implements IAcceptorNode, Tickable { + +    private static final String[] GROUPS = { "ENERGY" }; +    private int energyCap = 20000; +    private int energyStored = 0; +    private ArrayList<INode> connected = new ArrayList<INode>(0); + +    public MachineFurnaceEntity(BlockEntityType<?> type) { +        super(type); +    } + +    @Override +    public String[] groupsProvided() { +        return GROUPS; +    } + +    @Override +    public ISystem getSystem() { +        return null; +    } + +    @Override +    public Object getData(String groupID) { +        if (groupID == "ENERGY") { +            return energyStored; +        } +        return null; +    } + +    @Override +    public void setData(Object dat, String groupID) { +        if (groupID == "ENERGY") { +            int tmp = (int) dat; +             +            energyStored = tmp > energyCap ? energyCap : tmp; +        } + +    } + +    @Override +    public INode[] getConnections() { +        return (INode[]) connected.toArray(); +    } + +    @Override +    public void tick() { +         +    } + +    @Override +    public boolean linkProvider(INode requester, String group) { +        if (group == "ENERGY") { +            connected.add(requester); +        } +        return false; +    } + +    @Override +    public boolean unlinkProvider(INode toUnlink) { +        for(int i = 0; i < connected.size(); i++) { +            if(toUnlink.equals(connected.get(i))) { +                connected.remove(i); +                return true; +            } +        } +        return false; +    } + +    @Override +    public INode[] getProviders() { +        return getConnections(); +    } + +    @Override +    public <T> boolean accept(IStaticPacket<T> packet, String group) { +        if (group == "ENERGY") { +            int add = (int) packet.getType().toBase(packet, group); +            if(add + energyStored > energyCap) { +                return false; +            } +            else { +                energyStored += add; +                return true; +            } +        } +        return false; +    } + +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/blockstates/driver_mechanical.json b/src/main/resources/assets/sparkt/blockstates/driver_mechanical.json new file mode 100644 index 0000000..f01b009 --- /dev/null +++ b/src/main/resources/assets/sparkt/blockstates/driver_mechanical.json @@ -0,0 +1,5 @@ +{ +  "variants": { +    "": { "model": "sparkt:block/driver_mechanical" } +  } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/blockstates/machine_block.json b/src/main/resources/assets/sparkt/blockstates/machine_block.json new file mode 100644 index 0000000..c58ab84 --- /dev/null +++ b/src/main/resources/assets/sparkt/blockstates/machine_block.json @@ -0,0 +1,5 @@ +{ +  "variants": { +    "": { "model": "sparkt:block/machine_block" } +  } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/blockstates/machine_furnace.json b/src/main/resources/assets/sparkt/blockstates/machine_furnace.json new file mode 100644 index 0000000..2c115f2 --- /dev/null +++ b/src/main/resources/assets/sparkt/blockstates/machine_furnace.json @@ -0,0 +1,5 @@ +{ +  "variants": { +    "": { "model": "sparkt:block/machine_furnace" } +  } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/blockstates/machine_grinder.json b/src/main/resources/assets/sparkt/blockstates/machine_grinder.json new file mode 100644 index 0000000..5e233bf --- /dev/null +++ b/src/main/resources/assets/sparkt/blockstates/machine_grinder.json @@ -0,0 +1,5 @@ +{ +  "variants": { +    "": { "model": "sparkt:block/machine_grinder" } +  } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/icon.png b/src/main/resources/assets/sparkt/icon.pngBinary files differ new file mode 100644 index 0000000..b8bb552 --- /dev/null +++ b/src/main/resources/assets/sparkt/icon.png diff --git a/src/main/resources/assets/sparkt/lang/en_us.json b/src/main/resources/assets/sparkt/lang/en_us.json new file mode 100644 index 0000000..28005eb --- /dev/null +++ b/src/main/resources/assets/sparkt/lang/en_us.json @@ -0,0 +1,8 @@ +{ +    "block.sparkt.machine_block": "Machine Block", +    "block.sparkt.machine_furnace": "Electric Furnace", +    "block.sparkt.wire": "Wire", +	"block.sparkt.machine_grinder": "Electric Crusher", +	"block.sparkt.driver_mechanical": "Mechanical Driver", +	"block.sparkt.driver_thermal": "Thermal Driver" +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/block/driver_mechanical.json b/src/main/resources/assets/sparkt/models/block/driver_mechanical.json new file mode 100644 index 0000000..f3bdf7b --- /dev/null +++ b/src/main/resources/assets/sparkt/models/block/driver_mechanical.json @@ -0,0 +1,9 @@ +{ +    "parent": "block/orientable_with_bottom", +    "textures": { +      "top": "sparkt:block/driver_top", +      "side": "sparkt:block/driver_side", +      "front": "sparkt:block/driver_side", +      "bottom": "sparkt:block/machine_bottom" +    } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/block/machine.json b/src/main/resources/assets/sparkt/models/block/machine.json new file mode 100644 index 0000000..27cab61 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/block/machine.json @@ -0,0 +1,9 @@ +{ +    "parent": "block/orientable_with_bottom", +    "textures": { +      "top": "sparkt:block/machine_top", +      "side": "sparkt:block/machine_side", +      "front": "#front", +      "bottom": "sparkt:block/machine_bottom" +    } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/block/machine_block.json b/src/main/resources/assets/sparkt/models/block/machine_block.json new file mode 100644 index 0000000..679b548 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/block/machine_block.json @@ -0,0 +1,6 @@ +{ +    "parent": "sparkt:block/machine", +    "textures": { +      "front": "sparkt:block/machine_side" +    } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/block/machine_furnace.json b/src/main/resources/assets/sparkt/models/block/machine_furnace.json new file mode 100644 index 0000000..e35099f --- /dev/null +++ b/src/main/resources/assets/sparkt/models/block/machine_furnace.json @@ -0,0 +1,6 @@ +{ +    "parent": "sparkt:block/machine", +    "textures": { +      "front": "sparkt:block/furnace_side" +    } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/block/machine_grinder.json b/src/main/resources/assets/sparkt/models/block/machine_grinder.json new file mode 100644 index 0000000..de72365 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/block/machine_grinder.json @@ -0,0 +1,6 @@ +{ +    "parent": "sparkt:block/machine", +    "textures": { +      "front": "sparkt:block/grinder_side" +    } +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/item/driver_mechanical.json b/src/main/resources/assets/sparkt/models/item/driver_mechanical.json new file mode 100644 index 0000000..19ecb75 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/item/driver_mechanical.json @@ -0,0 +1,3 @@ +{ +    "parent": "sparkt:block/driver_mechanical" +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/item/machine_block.json b/src/main/resources/assets/sparkt/models/item/machine_block.json new file mode 100644 index 0000000..a405f71 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/item/machine_block.json @@ -0,0 +1,3 @@ +{ +    "parent": "sparkt:block/machine_block" +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/item/machine_furnace.json b/src/main/resources/assets/sparkt/models/item/machine_furnace.json new file mode 100644 index 0000000..ed00d41 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/item/machine_furnace.json @@ -0,0 +1,3 @@ +{ +  "parent": "sparkt:block/machine_furnace" +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/models/item/machine_grinder.json b/src/main/resources/assets/sparkt/models/item/machine_grinder.json new file mode 100644 index 0000000..16fa3e9 --- /dev/null +++ b/src/main/resources/assets/sparkt/models/item/machine_grinder.json @@ -0,0 +1,3 @@ +{ +    "parent": "sparkt:block/machine_grinder" +}
\ No newline at end of file diff --git a/src/main/resources/assets/sparkt/textures/block/driver_side.png b/src/main/resources/assets/sparkt/textures/block/driver_side.pngBinary files differ new file mode 100644 index 0000000..51d0c2c --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/driver_side.png diff --git a/src/main/resources/assets/sparkt/textures/block/driver_top.png b/src/main/resources/assets/sparkt/textures/block/driver_top.pngBinary files differ new file mode 100644 index 0000000..2e85d33 --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/driver_top.png diff --git a/src/main/resources/assets/sparkt/textures/block/furnace_side.png b/src/main/resources/assets/sparkt/textures/block/furnace_side.pngBinary files differ new file mode 100644 index 0000000..e7ba9c2 --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/furnace_side.png diff --git a/src/main/resources/assets/sparkt/textures/block/grinder_side.png b/src/main/resources/assets/sparkt/textures/block/grinder_side.pngBinary files differ new file mode 100644 index 0000000..1f384f8 --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/grinder_side.png diff --git a/src/main/resources/assets/sparkt/textures/block/machine_bottom.png b/src/main/resources/assets/sparkt/textures/block/machine_bottom.pngBinary files differ new file mode 100644 index 0000000..48d3f40 --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/machine_bottom.png diff --git a/src/main/resources/assets/sparkt/textures/block/machine_side.png b/src/main/resources/assets/sparkt/textures/block/machine_side.pngBinary files differ new file mode 100644 index 0000000..6e1fb14 --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/machine_side.png diff --git a/src/main/resources/assets/sparkt/textures/block/machine_top.png b/src/main/resources/assets/sparkt/textures/block/machine_top.pngBinary files differ new file mode 100644 index 0000000..7d4463f --- /dev/null +++ b/src/main/resources/assets/sparkt/textures/block/machine_top.png diff --git a/src/main/resources/data/sparkt/loot_tables/block/machine_block.json b/src/main/resources/data/sparkt/loot_tables/block/machine_block.json new file mode 100644 index 0000000..5c6db56 --- /dev/null +++ b/src/main/resources/data/sparkt/loot_tables/block/machine_block.json @@ -0,0 +1,19 @@ +{ +  "type": "minecraft:block", +  "pools": [ +    { +      "rolls": 1, +      "entries": [ +        { +          "type": "minecraft:item", +          "name": "sparkt:machine_block" +        } +      ], +      "conditions": [ +        { +          "condition": "minecraft:survives_explosion" +        } +      ] +    } +  ] +}
\ No newline at end of file diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..898a95f --- /dev/null +++ b/src/main/resources/fabric.mod.json @@ -0,0 +1,32 @@ +{ +  "schemaVersion": 1, +  "id": "sparkt", +  "version": "0.0.1", + +  "name": "Sparkt", +  "description": "Wires and whatnot!", +  "authors": [ +    "CCGKyle" +  ], +  "contact": { +    "sources": "https://github.com/CoreChg/Sparkt" +  }, + +  "license": "MIT", +  "icon": "assets/sparkt/icon.png", + +  "environment": "*", +  "entrypoints": { +    "main": [ +      "net.corechg.sparkt.SparktInit" +    ] +  }, + +  "depends": { +    "fabricloader": ">=0.7.4", +    "fabric": "*", +    "minecraft": "1.15.x", + +    "transit-api": ">=0.10.2" +  } +} |