added ores, blocks, recipes, archifments
@ -16,6 +16,14 @@ import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.GameRules;
|
||||
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeSelectors;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.world.gen.GenerationStep;
|
||||
|
||||
import net.Chipperfluff.chipi.advancement.ModCriteria;
|
||||
|
||||
public class ChipiMod implements ModInitializer {
|
||||
|
||||
public static final String MOD_ID = "chipi";
|
||||
@ -31,6 +39,16 @@ public class ChipiMod implements ModInitializer {
|
||||
|
||||
ModBlocks.register();
|
||||
ModItems.register();
|
||||
ModCriteria.register();
|
||||
|
||||
BiomeModifications.addFeature(
|
||||
BiomeSelectors.foundInOverworld(),
|
||||
GenerationStep.Feature.UNDERGROUND_ORES,
|
||||
RegistryKey.of(
|
||||
RegistryKeys.PLACED_FEATURE,
|
||||
new Identifier("chipi", "chipper_ore")
|
||||
)
|
||||
);
|
||||
|
||||
CommandRegistrationCallback.EVENT.register(
|
||||
(dispatcher, registryAccess, environment) ->
|
||||
|
||||
@ -0,0 +1,11 @@
|
||||
package net.Chipperfluff.chipi.advancement;
|
||||
|
||||
import net.minecraft.advancement.criterion.Criteria;
|
||||
|
||||
public class ModCriteria {
|
||||
|
||||
public static final PortalActivatedTrigger PORTAL_ACTIVATED =
|
||||
Criteria.register(new PortalActivatedTrigger());
|
||||
|
||||
public static void register() {}
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
package net.Chipperfluff.chipi.advancement;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import net.minecraft.advancement.AdvancementCriterion;
|
||||
import net.minecraft.advancement.criterion.AbstractCriterion;
|
||||
import net.minecraft.advancement.criterion.CriterionConditions;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.Chipperfluff.chipi.ChipiMod;
|
||||
|
||||
public class PortalActivatedTrigger extends AbstractCriterion<PortalActivatedTrigger.Conditions> {
|
||||
|
||||
public static final Identifier ID =
|
||||
new Identifier(ChipiMod.MOD_ID, "portal_activated");
|
||||
|
||||
@Override
|
||||
public Identifier getId() {
|
||||
return ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Conditions conditionsFromJson(
|
||||
JsonObject obj,
|
||||
net.minecraft.advancement.criterion.CriterionConditionsParser parser
|
||||
) {
|
||||
return new Conditions();
|
||||
}
|
||||
|
||||
public void trigger(ServerPlayerEntity player) {
|
||||
this.trigger(player, conditions -> true);
|
||||
}
|
||||
|
||||
// ================= CONDITIONS =================
|
||||
public static class Conditions extends CriterionConditions {
|
||||
public Conditions() {
|
||||
super(ID, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
package net.Chipperfluff.chipi.advancement;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import net.minecraft.advancement.AdvancementCriterion;
|
||||
import net.minecraft.advancement.criterion.AbstractCriterion;
|
||||
import net.minecraft.advancement.criterion.CriterionConditions;
|
||||
import net.minecraft.server.network.ServerPlayerEntity;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.Chipperfluff.chipi.ChipiMod;
|
||||
|
||||
public class PortalDestroyedTrigger extends AbstractCriterion<PortalDestroyedTrigger.Conditions> {
|
||||
|
||||
public static final Identifier ID =
|
||||
new Identifier(ChipiMod.MOD_ID, "portal_destroyed");
|
||||
|
||||
@Override
|
||||
public Identifier getId() {
|
||||
return ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Conditions conditionsFromJson(
|
||||
JsonObject obj,
|
||||
net.minecraft.advancement.criterion.CriterionConditionsParser parser
|
||||
) {
|
||||
return new Conditions();
|
||||
}
|
||||
|
||||
public void trigger(ServerPlayerEntity player) {
|
||||
this.trigger(player, conditions -> true);
|
||||
}
|
||||
|
||||
// ================= CONDITIONS =================
|
||||
public static class Conditions extends CriterionConditions {
|
||||
public Conditions() {
|
||||
super(ID, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -18,7 +18,7 @@ import net.minecraft.world.World;
|
||||
import net.minecraft.world.TeleportTarget;
|
||||
import net.minecraft.network.packet.s2c.play.PositionFlag;
|
||||
import java.util.EnumSet;
|
||||
|
||||
import net.Chipperfluff.chipi.advancement.ModCriteria;
|
||||
|
||||
public class ChipperPortalBlock extends Block {
|
||||
|
||||
@ -78,6 +78,7 @@ public class ChipperPortalBlock extends Block {
|
||||
if (!player.isCreative()) {
|
||||
return 0.0F; // impossible to break
|
||||
}
|
||||
ModCriteria.PORTAL_DESTROYED.trigger(player);
|
||||
return super.calcBlockBreakingDelta(state, player, world, pos);
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,6 +5,7 @@ import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.world.World;
|
||||
import net.Chipperfluff.chipi.advancement.ModCriteria;
|
||||
|
||||
public class ChipperPortalShape {
|
||||
|
||||
@ -25,6 +26,7 @@ public class ChipperPortalShape {
|
||||
ChipperPortalShape shape = new ChipperPortalShape(world, placedPos, axis);
|
||||
if (shape.isValid()) {
|
||||
shape.placePortal();
|
||||
ModCriteria.PORTAL_ACTIVATED.trigger(player);
|
||||
System.out.println("[CHIPI] portal created at " + placedPos + " axis=" + axis);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -2,57 +2,66 @@ package net.Chipperfluff.chipi.block;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.AbstractBlock;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.MapColor;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.Registry;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.Chipperfluff.chipi.ChipiMod;
|
||||
import net.Chipperfluff.chipi.block.ChipperFrameBlock;
|
||||
import net.Chipperfluff.chipi.block.ChipperPortalBlock;
|
||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||
import net.minecraft.block.MapColor;
|
||||
import net.Chipperfluff.chipi.ChipiMod;
|
||||
|
||||
public class ModBlocks {
|
||||
|
||||
public static final Block VOID_BLOCK = register(
|
||||
"void_block",
|
||||
public static final Block VOID_BLOCK = Registry.register(
|
||||
Registries.BLOCK,
|
||||
new Identifier(ChipiMod.MOD_ID, "void_block"),
|
||||
new VoidBlock(
|
||||
AbstractBlock.Settings.create()
|
||||
.strength(-1.0F, 3600000.0F) // vanilla unbreakable values
|
||||
.strength(-1.0F, 3600000.0F)
|
||||
.mapColor(MapColor.BLACK)
|
||||
.noCollision()
|
||||
.dropsNothing()
|
||||
)
|
||||
);
|
||||
|
||||
public static final Block CHIPPER_FRAME =
|
||||
register(
|
||||
"chipper_frame",
|
||||
public static final Block CHIPPER_FRAME = Registry.register(
|
||||
Registries.BLOCK,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_frame"),
|
||||
new ChipperFrameBlock(
|
||||
FabricBlockSettings
|
||||
.create()
|
||||
FabricBlockSettings.create()
|
||||
.strength(3.0f)
|
||||
.requiresTool()
|
||||
)
|
||||
);
|
||||
|
||||
public static final Block CHIPPER_PORTAL = register(
|
||||
"chipper_portal",
|
||||
public static final Block CHIPPER_PORTAL = Registry.register(
|
||||
Registries.BLOCK,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_portal"),
|
||||
new ChipperPortalBlock(
|
||||
FabricBlockSettings
|
||||
.create()
|
||||
FabricBlockSettings.create()
|
||||
.noCollision()
|
||||
.luminance(3)
|
||||
.strength(-1.0f)
|
||||
)
|
||||
);
|
||||
|
||||
private static Block register(String name, Block block) {
|
||||
return Registry.register(
|
||||
public static final Block CHIPPER_ORE = Registry.register(
|
||||
Registries.BLOCK,
|
||||
new Identifier(ChipiMod.MOD_ID, name),
|
||||
block
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_ore"),
|
||||
new Block(AbstractBlock.Settings
|
||||
.copy(Blocks.IRON_ORE)
|
||||
.requiresTool()
|
||||
)
|
||||
);
|
||||
|
||||
public static final Block CHIPPER_ALLOY_BLOCK = Registry.register(
|
||||
Registries.BLOCK,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"),
|
||||
new Block(AbstractBlock.Settings
|
||||
.copy(Blocks.IRON_BLOCK)
|
||||
.requiresTool()
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public static void register() {}
|
||||
}
|
||||
|
||||
@ -5,33 +5,69 @@ import net.minecraft.item.Item;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.Registry;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
||||
import net.Chipperfluff.chipi.ChipiMod;
|
||||
import net.Chipperfluff.chipi.block.ModBlocks;
|
||||
|
||||
public class ModItems {
|
||||
|
||||
public static final Item VOID_BLOCK = register(
|
||||
"void_block",
|
||||
new BlockItem(ModBlocks.VOID_BLOCK, new Item.Settings())
|
||||
);
|
||||
// ===== BLOCK ITEMS =====
|
||||
|
||||
public static final Item CHIPPER_FRAME = register(
|
||||
"chipper_frame",
|
||||
new BlockItem(ModBlocks.CHIPPER_FRAME, new Item.Settings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_PORTAL = register(
|
||||
"chipper_portal",
|
||||
new BlockItem(ModBlocks.CHIPPER_PORTAL, new Item.Settings())
|
||||
);
|
||||
|
||||
private static Item register(String name, Item item) {
|
||||
return Registry.register(
|
||||
public static final Item VOID_BLOCK = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, name),
|
||||
item
|
||||
new Identifier(ChipiMod.MOD_ID, "void_block"),
|
||||
new BlockItem(ModBlocks.VOID_BLOCK, new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_FRAME = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_frame"),
|
||||
new BlockItem(ModBlocks.CHIPPER_FRAME, new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_PORTAL = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_portal"),
|
||||
new BlockItem(ModBlocks.CHIPPER_PORTAL, new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_ORE = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_ore"),
|
||||
new BlockItem(ModBlocks.CHIPPER_ORE, new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_ALLOY_BLOCK = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"),
|
||||
new BlockItem(ModBlocks.CHIPPER_ALLOY_BLOCK, new FabricItemSettings())
|
||||
);
|
||||
|
||||
// ===== NORMAL ITEMS =====
|
||||
|
||||
public static final Item NUT = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "nut"),
|
||||
new Item(new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item RAW_CHIPPER_ORE = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "raw_chipper_ore"),
|
||||
new Item(new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_INGOT = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_ingot"),
|
||||
new Item(new FabricItemSettings())
|
||||
);
|
||||
|
||||
public static final Item CHIPPER_ALLOY = Registry.register(
|
||||
Registries.ITEM,
|
||||
new Identifier(ChipiMod.MOD_ID, "chipper_alloy"),
|
||||
new Item(new FabricItemSettings())
|
||||
);
|
||||
}
|
||||
|
||||
public static void register() {}
|
||||
}
|
||||
|
||||
@ -0,0 +1,5 @@
|
||||
{
|
||||
"variants": {
|
||||
"": { "model": "chipi:block/chipper_alloy_block" }
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,5 @@
|
||||
{
|
||||
"variants": {
|
||||
"": { "model": "chipi:block/chipper_ore" }
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:block/cube_all",
|
||||
"textures": {
|
||||
"all": "chipi:block/chipper_alloy_block"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:block/cube_all",
|
||||
"textures": {
|
||||
"all": "chipi:block/chipper_ore"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "chipi:item/chipper_alloy"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "chipi:block/chipper_alloy_block"
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "chipi:item/chipper_ingot"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
{
|
||||
"parent": "chipi:block/chipper_ore"
|
||||
}
|
||||
6
src/main/resources/assets/chipi/models/item/nut.json
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "chipi:item/nut"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "chipi:item/raw_chipper_ore"
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/main/resources/assets/chipi/textures/block/chipper_ore.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/main/resources/assets/chipi/textures/item/chipper_alloy.png
Normal file
|
After Width: | Height: | Size: 901 B |
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/main/resources/assets/chipi/textures/item/chipper_ingot.png
Normal file
|
After Width: | Height: | Size: 733 B |
BIN
src/main/resources/assets/chipi/textures/item/chipper_ore.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/main/resources/assets/chipi/textures/item/nut.png
Normal file
|
After Width: | Height: | Size: 809 B |
|
After Width: | Height: | Size: 790 B |
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:progression/light_portal",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_portal" },
|
||||
"title": "What Have You Done",
|
||||
"description": "Enter the Chipi Dimension",
|
||||
"frame": "challenge"
|
||||
},
|
||||
"criteria": {
|
||||
"enter": {
|
||||
"trigger": "minecraft:changed_dimension",
|
||||
"conditions": {
|
||||
"to": "chipi:chipi_dimension"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:root",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:nut" },
|
||||
"title": "Deez Nuts",
|
||||
"description": "Obtain a Nut",
|
||||
"frame": "task"
|
||||
},
|
||||
"criteria": {
|
||||
"nut": {
|
||||
"trigger": "minecraft:inventory_changed",
|
||||
"conditions": {
|
||||
"items": [{ "items": ["chipi:nut"] }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:root",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:raw_chipper_ore" },
|
||||
"title": "What's This?",
|
||||
"description": "Obtain Raw Chipper Ore",
|
||||
"frame": "task"
|
||||
},
|
||||
"criteria": {
|
||||
"ore": {
|
||||
"trigger": "minecraft:inventory_changed",
|
||||
"conditions": {
|
||||
"items": [{ "items": ["chipi:raw_chipper_ore"] }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:progression/smelt_chipper_ore",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_alloy" },
|
||||
"title": "Questionable Chemistry",
|
||||
"description": "Create Chipper Alloy",
|
||||
"frame": "task"
|
||||
},
|
||||
"criteria": {
|
||||
"alloy": {
|
||||
"trigger": "minecraft:inventory_changed",
|
||||
"conditions": {
|
||||
"items": [{ "items": ["chipi:chipper_alloy"] }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:progression/make_alloy",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_alloy_block" },
|
||||
"title": "Industrial Grade",
|
||||
"description": "Craft a Chipper Alloy Block",
|
||||
"frame": "task"
|
||||
},
|
||||
"criteria": {
|
||||
"block": {
|
||||
"trigger": "minecraft:inventory_changed",
|
||||
"conditions": {
|
||||
"items": [{ "items": ["chipi:chipper_alloy_block"] }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
{
|
||||
"parent": "chipi:progression/activate_portal",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_portal" },
|
||||
"title": "You Were Warned",
|
||||
"description": "Destroy the Portal",
|
||||
"frame": "challenge",
|
||||
"hidden": true
|
||||
},
|
||||
"criteria": {
|
||||
"destroyed": {
|
||||
"trigger": "chipi:portal_destroyed"
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
{
|
||||
"parent": "chipi:progression/get_raw_chipper_ore",
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_ingot" },
|
||||
"title": "Refinement",
|
||||
"description": "Smelt Chipper Ore",
|
||||
"frame": "task"
|
||||
},
|
||||
"criteria": {
|
||||
"smelt": {
|
||||
"trigger": "minecraft:inventory_changed",
|
||||
"conditions": {
|
||||
"items": [{ "items": ["chipi:chipper_ingot"] }]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
14
src/main/resources/data/chipi/advancements/root.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"display": {
|
||||
"icon": { "item": "chipi:chipper_ingot" },
|
||||
"title": "Chipi",
|
||||
"description": "Industrial stupidity begins",
|
||||
"background": "minecraft:textures/block/stone.png",
|
||||
"show_toast": false,
|
||||
"announce_to_chat": false,
|
||||
"hidden": false
|
||||
},
|
||||
"criteria": {
|
||||
"tick": { "trigger": "minecraft:tick" }
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "chipi:chipper_alloy_block"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "chipi:raw_chipper_ore"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
39
src/main/resources/data/chipi/loot_tables/blocks/dirt.json
Normal file
@ -0,0 +1,39 @@
|
||||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "minecraft:dirt"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "chipi:nut",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:random_chance",
|
||||
"chance": 0.01
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
19
src/main/resources/data/chipi/recipes/alloy.json
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"group": "chipi",
|
||||
"category": "misc",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "chipi:chipper_ingot"
|
||||
},
|
||||
{
|
||||
"item": "minecraft:iron_ingot"
|
||||
},
|
||||
{
|
||||
"item": "minecraft:copper_ingot"
|
||||
}
|
||||
],
|
||||
"result": {
|
||||
"item": "chipi:chipper_alloy"
|
||||
}
|
||||
}
|
||||
37
src/main/resources/data/chipi/recipes/alloy_block.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shapeless",
|
||||
"group": "chipi",
|
||||
"category": "misc",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
},
|
||||
{
|
||||
"item": "chipi:chipper_alloy"
|
||||
}
|
||||
],
|
||||
"result": {
|
||||
"item": "chipi:chipper_alloy_block"
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
{
|
||||
"type": "minecraft:blasting",
|
||||
"group": "chipi",
|
||||
"category": "misc",
|
||||
"ingredient": {
|
||||
"item": "chipi:raw_chipper_ore"
|
||||
},
|
||||
"result": "chipi:chipper_ingot",
|
||||
"experience": 20,
|
||||
"cookingtime": 40
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
{
|
||||
"type": "minecraft:smelting",
|
||||
"group": "chipi",
|
||||
"category": "misc",
|
||||
"ingredient": {
|
||||
"item": "chipi:raw_chipper_ore"
|
||||
},
|
||||
"result": "chipi:chipper_ingot",
|
||||
"experience": 20,
|
||||
"cookingtime": 80
|
||||
}
|
||||
23
src/main/resources/data/chipi/recipes/porta_block.json
Normal file
@ -0,0 +1,23 @@
|
||||
{
|
||||
"type": "minecraft:crafting_shaped",
|
||||
"group": "chipi",
|
||||
"category": "misc",
|
||||
"pattern": [
|
||||
"XXX",
|
||||
"XYX",
|
||||
"XXX"
|
||||
],
|
||||
"key": {
|
||||
"X": {
|
||||
"item": "chipi:chipper_alloy_block"
|
||||
},
|
||||
"Y": {
|
||||
"item": "chipi:nut"
|
||||
}
|
||||
},
|
||||
"result": {
|
||||
"item": "chipi:chipper_frame",
|
||||
"count": 1
|
||||
},
|
||||
"show_notification": true
|
||||
}
|
||||
@ -0,0 +1,8 @@
|
||||
{
|
||||
"type": "fabric:add_features",
|
||||
"biomes": "minecraft:overworld",
|
||||
"features": [
|
||||
"chipi:chipper_ore"
|
||||
],
|
||||
"step": "underground_ores"
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
{
|
||||
"type": "minecraft:ore",
|
||||
"config": {
|
||||
"size": 5,
|
||||
"discard_chance_on_air_exposure": 0.0,
|
||||
"targets": [
|
||||
{
|
||||
"target": {
|
||||
"predicate_type": "minecraft:tag_match",
|
||||
"tag": "minecraft:stone_ore_replaceables"
|
||||
},
|
||||
"state": {
|
||||
"Name": "chipi:chipper_ore"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
{
|
||||
"feature": "chipi:chipper_ore",
|
||||
"placement": [
|
||||
{
|
||||
"type": "minecraft:count",
|
||||
"count": 30
|
||||
},
|
||||
{
|
||||
"type": "minecraft:in_square"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:height_range",
|
||||
"height": {
|
||||
"type": "minecraft:uniform",
|
||||
"min_inclusive": {
|
||||
"absolute": 40
|
||||
},
|
||||
"max_inclusive": {
|
||||
"absolute": 64
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "minecraft:biome"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"chipi:chipper_ore",
|
||||
"chipi:chipper_alloy_block"
|
||||
]
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
{
|
||||
"replace": false,
|
||||
"values": [
|
||||
"chipi:chipper_ore",
|
||||
"chipi:chipper_alloy_block"
|
||||
]
|
||||
}
|
||||