diff --git a/gradle.properties b/gradle.properties index d6fd2f5b..4f8cf595 100644 --- a/gradle.properties +++ b/gradle.properties @@ -21,7 +21,7 @@ curseforge_id=1380275 mod_id=anvilcraft_pigsplus mod_name=AnvilCraft-PigsPlus mod_license=LGPL-3.0 license -mod_version=0.1.5 +mod_version=0.1.6 maven_group=dev.anvilcraft.pigsplus mod_authors=TB_pig mod_description=tools made by TB_pig diff --git a/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_ud.json b/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_ud.json index 3029ca2a..be4f9c42 100644 --- a/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_ud.json +++ b/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_ud.json @@ -32,6 +32,7 @@ "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml": "uoıʇɐɹnbıɟuoƆ ɹǝʌɹǝS snןdsbıԀ ʇɟɐɹɔןıʌuⱯ", "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml.title": "uoıʇɐɹnbıɟuoƆ ɹǝʌɹǝS snןdsbıԀ ʇɟɐɹɔןıʌuⱯ", "anvilcraft_pigsplus.configuration.title": "uoıʇɐɹnbıɟuoƆ snןdsbıԀ ʇɟɐɹɔןıʌuⱯ", + "block.anvilcraft_pigsplus.adjustable_power_converter": "ɹǝʇɹǝʌuoƆ ɹǝʍoԀ ǝןqɐʇsnظpⱯ", "block.anvilcraft_pigsplus.auto_jewel_crafting_table": "ǝןqɐ⟘ buıʇɟɐɹƆ ןǝʍǝſ oʇnⱯ", "block.anvilcraft_pigsplus.auto_royal_grindstone": "ǝuoʇspuıɹ⅁ ןɐʎoᴚ oʇnⱯ", "block.anvilcraft_pigsplus.auto_royal_smithing_table": "ǝןqɐ⟘ buıɥʇıɯS ןɐʎoᴚ oʇnⱯ", diff --git a/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_us.json b/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_us.json index 4847acb5..4dab7d63 100644 --- a/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_us.json +++ b/src/generated/resources/assets/anvilcraft_pigsplus/lang/en_us.json @@ -32,6 +32,7 @@ "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml": "Anvilcraft Pigsplus Server Configuration", "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml.title": "Anvilcraft Pigsplus Server Configuration", "anvilcraft_pigsplus.configuration.title": "Anvilcraft Pigsplus Configuration", + "block.anvilcraft_pigsplus.adjustable_power_converter": "Adjustable Power Converter", "block.anvilcraft_pigsplus.auto_jewel_crafting_table": "Auto Jewel Crafting Table", "block.anvilcraft_pigsplus.auto_royal_grindstone": "Auto Royal Grindstone", "block.anvilcraft_pigsplus.auto_royal_smithing_table": "Auto Royal Smithing Table", diff --git a/src/generated/resources/assets/anvilcraft_pigsplus/models/item/adjustable_power_converter.json b/src/generated/resources/assets/anvilcraft_pigsplus/models/item/adjustable_power_converter.json new file mode 100644 index 00000000..e83ce398 --- /dev/null +++ b/src/generated/resources/assets/anvilcraft_pigsplus/models/item/adjustable_power_converter.json @@ -0,0 +1,3 @@ +{ + "parent": "anvilcraft_pigsplus:block/adjustable_power_converter" +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/advancement/recipes/super_heating/chaotic_raw_ore_and_earth_core_shard.json b/src/generated/resources/data/anvilcraft/advancement/recipes/super_heating/chaotic_raw_ore_and_earth_core_shard.json new file mode 100644 index 00000000..b748ad6d --- /dev/null +++ b/src/generated/resources/data/anvilcraft/advancement/recipes/super_heating/chaotic_raw_ore_and_earth_core_shard.json @@ -0,0 +1,21 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "anvilcraft:super_heating/chaotic_raw_ore_and_earth_core_shard" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe" + ] + ], + "rewards": { + "recipes": [ + "anvilcraft:super_heating/chaotic_raw_ore_and_earth_core_shard" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft/recipe/super_heating/chaotic_raw_ore_and_earth_core_shard.json b/src/generated/resources/data/anvilcraft/recipe/super_heating/chaotic_raw_ore_and_earth_core_shard.json new file mode 100644 index 00000000..768490f8 --- /dev/null +++ b/src/generated/resources/data/anvilcraft/recipe/super_heating/chaotic_raw_ore_and_earth_core_shard.json @@ -0,0 +1,46 @@ +{ + "type": "anvilcraft:super_heating", + "ingredients": [ + { + "count": 8, + "items": "anvilcraft_pigsplus:chaotic_raw_ore" + }, + { + "items": "anvilcraft:earth_core_shard" + } + ], + "results": [ + { + "count": 4, + "id": "minecraft:copper_ingot" + }, + { + "count": 4, + "id": "minecraft:gold_ingot" + }, + { + "count": 4, + "id": "anvilcraft:zinc_ingot" + }, + { + "count": 4, + "id": "anvilcraft:tin_ingot" + }, + { + "count": 4, + "id": "anvilcraft:titanium_ingot" + }, + { + "count": 4, + "id": "anvilcraft:tungsten_ingot" + }, + { + "count": 4, + "id": "anvilcraft:lead_ingot" + }, + { + "count": 4, + "id": "anvilcraft:silver_ingot" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft_pigsplus/advancement/recipes/misc/adjustable_power_converter.json b/src/generated/resources/data/anvilcraft_pigsplus/advancement/recipes/misc/adjustable_power_converter.json new file mode 100644 index 00000000..668a3202 --- /dev/null +++ b/src/generated/resources/data/anvilcraft_pigsplus/advancement/recipes/misc/adjustable_power_converter.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_karakuri_component": { + "conditions": { + "items": [ + { + "items": "anvilcraft_pigsplus:karakuri_component" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "anvilcraft_pigsplus:adjustable_power_converter" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_karakuri_component" + ] + ], + "rewards": { + "recipes": [ + "anvilcraft_pigsplus:adjustable_power_converter" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft_pigsplus/loot_table/blocks/adjustable_power_converter.json b/src/generated/resources/data/anvilcraft_pigsplus/loot_table/blocks/adjustable_power_converter.json new file mode 100644 index 00000000..1559def7 --- /dev/null +++ b/src/generated/resources/data/anvilcraft_pigsplus/loot_table/blocks/adjustable_power_converter.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "anvilcraft_pigsplus:adjustable_power_converter" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "anvilcraft_pigsplus:blocks/adjustable_power_converter" +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft_pigsplus/recipe/adjustable_power_converter.json b/src/generated/resources/data/anvilcraft_pigsplus/recipe/adjustable_power_converter.json new file mode 100644 index 00000000..396082d9 --- /dev/null +++ b/src/generated/resources/data/anvilcraft_pigsplus/recipe/adjustable_power_converter.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "minecraft:copper_ingot" + }, + "B": { + "item": "anvilcraft:power_converter_big" + }, + "C": { + "item": "anvilcraft_pigsplus:karakuri_component" + } + }, + "pattern": [ + "ABA", + "BCB", + "ABA" + ], + "result": { + "count": 1, + "id": "anvilcraft_pigsplus:adjustable_power_converter" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_jewel_crafting_table.json b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_jewel_crafting_table.json index b9540114..f3350037 100644 --- a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_jewel_crafting_table.json +++ b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_jewel_crafting_table.json @@ -2,6 +2,12 @@ "type": "minecraft:crafting_shaped", "category": "building", "key": { + "G": { + "item": "minecraft:glass" + }, + "I": { + "item": "minecraft:iron_ingot" + }, "J": { "item": "anvilcraft:jewelcrafting_table" }, @@ -13,9 +19,9 @@ } }, "pattern": [ - " K ", - " J ", - " M " + "GKG", + "GJG", + "IMI" ], "result": { "count": 1, diff --git a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_grindstone.json b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_grindstone.json index acea8a1d..dfae023f 100644 --- a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_grindstone.json +++ b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_grindstone.json @@ -3,19 +3,25 @@ "category": "building", "key": { "G": { - "item": "anvilcraft:royal_grindstone" + "item": "minecraft:glass" + }, + "I": { + "item": "minecraft:iron_ingot" }, "K": { "item": "anvilcraft_pigsplus:karakuri_component" }, "M": { "item": "anvilcraft:magnetoelectric_core" + }, + "R": { + "item": "anvilcraft:royal_grindstone" } }, "pattern": [ - " K ", - " G ", - " M " + "GKG", + "GRG", + "IMI" ], "result": { "count": 1, diff --git a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_smithing_table.json b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_smithing_table.json index 80b21e59..87cc1fdb 100644 --- a/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_smithing_table.json +++ b/src/generated/resources/data/anvilcraft_pigsplus/recipe/auto_royal_smithing_table.json @@ -2,20 +2,26 @@ "type": "minecraft:crafting_shaped", "category": "building", "key": { + "G": { + "item": "minecraft:glass" + }, + "I": { + "item": "minecraft:iron_ingot" + }, "K": { "item": "anvilcraft_pigsplus:karakuri_component" }, "M": { "item": "anvilcraft:magnetoelectric_core" }, - "S": { + "R": { "item": "anvilcraft:royal_smithing_table" } }, "pattern": [ - " K ", - " S ", - " M " + "GKG", + "GRG", + "IMI" ], "result": { "count": 1, diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json index bffa9cda..c336b4bd 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -7,6 +7,7 @@ "anvilcraft_pigsplus:auto_jewel_crafting_table", "anvilcraft_pigsplus:auto_royal_smithing_table", "anvilcraft_pigsplus:auto_royal_grindstone", + "anvilcraft_pigsplus:adjustable_power_converter", "anvilcraft_pigsplus:chaotic_raw_ore_block", "anvilcraft_pigsplus:deepslate_chaotic_ore", "anvilcraft_pigsplus:enchanted_generator", diff --git a/src/main/java/dev/anvilcraft/pigsplus/block/AdjustablePowerConverterBlock.java b/src/main/java/dev/anvilcraft/pigsplus/block/AdjustablePowerConverterBlock.java new file mode 100644 index 00000000..77520e8e --- /dev/null +++ b/src/main/java/dev/anvilcraft/pigsplus/block/AdjustablePowerConverterBlock.java @@ -0,0 +1,91 @@ +package dev.anvilcraft.pigsplus.block; + +import com.mojang.serialization.MapCodec; +import dev.anvilcraft.pigsplus.block.entity.AdjustablePowerConverterBlockEntity; +import dev.anvilcraft.pigsplus.init.AddonBlockEntities; +import dev.dubhe.anvilcraft.api.hammer.IHammerRemovable; +import dev.dubhe.anvilcraft.api.power.IPowerComponent; +import dev.dubhe.anvilcraft.block.better.BetterBaseEntityBlock; +import dev.dubhe.anvilcraft.init.ModMenuTypes; +import dev.dubhe.anvilcraft.network.SliderInitPacket; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.BaseEntityBlock; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.phys.BlockHitResult; +import net.neoforged.neoforge.network.PacketDistributor; +import org.jetbrains.annotations.Nullable; + +public class AdjustablePowerConverterBlock extends BetterBaseEntityBlock implements IHammerRemovable { + public static final BooleanProperty POWERED = BlockStateProperties.POWERED; + public static final BooleanProperty OVERLOAD = IPowerComponent.OVERLOAD; + + public AdjustablePowerConverterBlock(Properties properties) { + super(properties); + this.registerDefaultState(this.stateDefinition.any() + .setValue(POWERED, false) + .setValue(OVERLOAD, true)); + } + + @Override + protected MapCodec codec() { + return simpleCodec(AdjustablePowerConverterBlock::new); + } + + @Override + @SuppressWarnings({"UnreachableCode"}) + public InteractionResult use( + BlockState state, + Level level, + BlockPos pos, + Player player, + InteractionHand hand, + BlockHitResult hit + ) { + if (level.isClientSide) { + return InteractionResult.SUCCESS; + } + if (level.getBlockEntity(pos) instanceof AdjustablePowerConverterBlockEntity entity + && player instanceof ServerPlayer serverPlayer) { + ModMenuTypes.open(serverPlayer, entity, pos); + PacketDistributor.sendToPlayer(serverPlayer, new SliderInitPacket(entity.getPowerTarget())); + } + return InteractionResult.SUCCESS; + } + @Nullable + @Override + public BlockEntityTicker getTicker(Level level, BlockState state, BlockEntityType type) { + if (level.isClientSide) { + return null; + } + return createTickerHelper(type, AddonBlockEntities.ADJUSTABLE_POWER_CONVERTER.get(), + (level1, blockPos, blockState, blockEntity) -> blockEntity.tick()); + } + + @Override + public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { + return new AdjustablePowerConverterBlockEntity(AddonBlockEntities.ADJUSTABLE_POWER_CONVERTER.get(), pos, state); + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(POWERED, OVERLOAD); + } + + @Override + public RenderShape getRenderShape(BlockState state) { + return RenderShape.MODEL; + } +} \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java b/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java new file mode 100644 index 00000000..d9f9355f --- /dev/null +++ b/src/main/java/dev/anvilcraft/pigsplus/block/entity/AdjustablePowerConverterBlockEntity.java @@ -0,0 +1,148 @@ +package dev.anvilcraft.pigsplus.block.entity; + +import dev.anvilcraft.pigsplus.init.AddonBlocks; +import dev.dubhe.anvilcraft.AnvilCraft; +import dev.dubhe.anvilcraft.api.power.IPowerConsumer; +import dev.dubhe.anvilcraft.api.power.IPowerProducer; +import dev.dubhe.anvilcraft.api.power.PowerComponentType; +import dev.dubhe.anvilcraft.api.power.PowerGrid; +import dev.dubhe.anvilcraft.inventory.SliderMenu; +import lombok.Getter; +import lombok.Setter; +import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.world.MenuProvider; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.AbstractContainerMenu; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.energy.EnergyStorage; +import org.jetbrains.annotations.Nullable; + +@Getter +public class AdjustablePowerConverterBlockEntity extends BlockEntity + implements IPowerConsumer, IPowerProducer, MenuProvider { + private PowerGrid grid = null; + private int power = 0; + @Setter + private int powerTarget = 16; + + public final EnergyStorage feEnergy = new EnergyStorage(128000000); + + public AdjustablePowerConverterBlockEntity(BlockEntityType type, BlockPos pos, BlockState blockState) { + super(type, pos, blockState); + } + + @Override + protected void saveAdditional(CompoundTag tag, HolderLookup.Provider registries) { + super.saveAdditional(tag, registries); + tag.putInt("feEnergy", feEnergy.getEnergyStored()); + tag.putInt("power", power); + tag.putInt("powerTarget", powerTarget); + } + + @Override + public void loadAdditional(CompoundTag tag, HolderLookup.Provider registries) { + super.loadAdditional(tag, registries); + feEnergy.receiveEnergy(tag.getInt("feEnergy"), false); + power = tag.getInt("power"); + powerTarget = tag.getInt("powerTarget"); + } + + @Override + public @Nullable Level getCurrentLevel() { + return getLevel(); + } + + @Override + public BlockPos getPos() { + return getBlockPos(); + } + + @Override + public void setGrid(@Nullable PowerGrid grid) { + this.grid = grid; + } + + @Override + public @Nullable PowerGrid getGrid() { + return this.grid; + } + + @Override + public int getOutputPower() { + return Math.max(this.power, 0); + } + + @Override + public int getInputPower() { + return this.power < 0 ? -this.power : 0; + } + + @Override + public PowerComponentType getComponentType() { + return this.power >= 0 ? PowerComponentType.PRODUCER : PowerComponentType.CONSUMER; + } + @Override + public int getRange() { + return 2; + } + + + public void tick() { + if (level == null || level.isClientSide()) return; + + int prevPower = power; + if (powerTarget >= 0) { + fe2kw(); + } else { + kw2fe(); + } + if (prevPower != power) { + grid.markChanged(); + } + } + + private void fe2kw() { + power = 0; + int feConverted = powerTarget * AnvilCraft.CONFIG.powerConverter.powerConverterEfficiency; + if (feEnergy.getEnergyStored() < feConverted) return; + + feEnergy.extractEnergy(feConverted, false); + power = powerTarget; + } + + private void kw2fe() { + power = powerTarget; + if (grid == null || !grid.isWorking()) return; + + // 如果存储满了,停止消耗电网能量 + if (feEnergy.getEnergyStored() == feEnergy.getMaxEnergyStored()) { + power = 0; + return; + } + + int feConverted = -power * AnvilCraft.CONFIG.powerConverter.powerConverterEfficiency; + feEnergy.receiveEnergy(feConverted, false); + } + + @Override + public Component getDisplayName() { + return AddonBlocks.ADJUSTABLE_POWER_CONVERTER.get().getName(); + } + + @Override + public @Nullable AbstractContainerMenu createMenu(int i, Inventory inventory, Player player) { + if (player.isSpectator()) return null; + return new SliderMenu(i, this::setPowerTarget); + } + + public EnergyStorage getEnergyStorage() { + return this.feEnergy; + } +} \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/pigsplus/block/entity/ElectricEnchantingTableBlockEntity.java b/src/main/java/dev/anvilcraft/pigsplus/block/entity/ElectricEnchantingTableBlockEntity.java index fd72fbab..579c6a4b 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/block/entity/ElectricEnchantingTableBlockEntity.java +++ b/src/main/java/dev/anvilcraft/pigsplus/block/entity/ElectricEnchantingTableBlockEntity.java @@ -1,5 +1,6 @@ package dev.anvilcraft.pigsplus.block.entity; +import dev.anvilcraft.pigsplus.block.ElectricEnchantingTableBlock; import dev.anvilcraft.pigsplus.util.BlockUtil; import dev.anvilcraft.pigsplus.util.ChiseledBookShelfUtil; import dev.dubhe.anvilcraft.AnvilCraft; @@ -150,8 +151,8 @@ public void gridTick() { */ public void tick(Level level1, BlockPos blockPos) { this.flushState(level1, blockPos); - if (grid == null) return; - if (level1.getBlockState(blockPos).getValue(ChargerBlock.POWERED)) return; + if (grid == null || !grid.isWorking()) return; + if (level1.getBlockState(blockPos).getValue(ElectricEnchantingTableBlock.POWERED)) return; if (time == 0) moveItemToTransformingSlot(); if (time > 0 && isGridWorking()) time--; diff --git a/src/main/java/dev/anvilcraft/pigsplus/data/recipe/SuperHeatingRecipeLoader.java b/src/main/java/dev/anvilcraft/pigsplus/data/recipe/SuperHeatingRecipeLoader.java index da09cd4e..8301a231 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/data/recipe/SuperHeatingRecipeLoader.java +++ b/src/main/java/dev/anvilcraft/pigsplus/data/recipe/SuperHeatingRecipeLoader.java @@ -20,5 +20,18 @@ public static void init(RegistrateRecipeProvider provider) { .result(ModItems.LEAD_INGOT, 0.3f) .result(ModItems.SILVER_INGOT, 0.3f) .save(provider, AnvilCraft.of("super_heating/chaotic_raw_ore")); + + SuperHeatingRecipe.builder() + .requires(AddonItems.CHAOTIC_RAW_ORE, 8) + .requires(ModItems.EARTH_CORE_SHARD) + .result(Items.COPPER_INGOT, 4) + .result(Items.GOLD_INGOT, 4) + .result(ModItems.ZINC_INGOT, 4) + .result(ModItems.TIN_INGOT, 4) + .result(ModItems.TITANIUM_INGOT, 4) + .result(ModItems.TUNGSTEN_INGOT, 4) + .result(ModItems.LEAD_INGOT, 4) + .result(ModItems.SILVER_INGOT, 4) + .save(provider, AnvilCraft.of("super_heating/chaotic_raw_ore_and_earth_core_shard")); } } diff --git a/src/main/java/dev/anvilcraft/pigsplus/event/CapabilitiesEventListener.java b/src/main/java/dev/anvilcraft/pigsplus/event/CapabilitiesEventListener.java index 2e18af62..11d47c7a 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/event/CapabilitiesEventListener.java +++ b/src/main/java/dev/anvilcraft/pigsplus/event/CapabilitiesEventListener.java @@ -24,5 +24,11 @@ public static void registerCapabilities(final RegisterCapabilitiesEvent event) { (be, side) -> be.getItemHandler() ) ); + + event.registerBlockEntity( + Capabilities.EnergyStorage.BLOCK, + AddonBlockEntities.ADJUSTABLE_POWER_CONVERTER.get(), + (be, side) -> be.getEnergyStorage() + ); } } diff --git a/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlockEntities.java b/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlockEntities.java index eda04691..83075851 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlockEntities.java +++ b/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlockEntities.java @@ -7,6 +7,7 @@ import dev.anvilcraft.pigsplus.block.entity.CauldronOutputBlockEntity; import dev.anvilcraft.pigsplus.block.entity.ElectricEnchantingTableBlockEntity; import dev.anvilcraft.pigsplus.block.entity.EnchantedGeneratorBlockEntity; +import dev.anvilcraft.pigsplus.block.entity.AdjustablePowerConverterBlockEntity; import dev.anvilcraft.pigsplus.block.entity.SculkExtractorBlockEntity; import dev.anvilcraft.pigsplus.client.renderer.blockentity.EnchantedGeneratorRenderer; import dev.anvilcraft.pigsplus.client.renderer.blockentity.ElectricEnchantingTableRenderer; @@ -51,6 +52,11 @@ public class AddonBlockEntities { .validBlock(AddonBlocks.SCULK_EXTRACTOR) .register(); + public static final BlockEntityEntry ADJUSTABLE_POWER_CONVERTER = + REGISTRATE.blockEntity("adjustable_power_converter", AdjustablePowerConverterBlockEntity::new) + .validBlock(AddonBlocks.ADJUSTABLE_POWER_CONVERTER) + .register(); + public static void register() { } } \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlocks.java b/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlocks.java index 14335fd5..3b1d5f2b 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlocks.java +++ b/src/main/java/dev/anvilcraft/pigsplus/init/AddonBlocks.java @@ -1,6 +1,7 @@ package dev.anvilcraft.pigsplus.init; import com.tterrag.registrate.util.entry.BlockEntry; +import dev.anvilcraft.pigsplus.block.AdjustablePowerConverterBlock; import dev.anvilcraft.pigsplus.block.AutoJewelCraftingTableBlock; import dev.anvilcraft.pigsplus.block.AutoRoyalGrindstoneBlock; import dev.anvilcraft.pigsplus.block.AutoRoyalSmithingTableBlock; @@ -27,6 +28,7 @@ import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.MapColor; import net.minecraft.world.level.storage.loot.entries.LootItem; import net.neoforged.neoforge.common.Tags; @@ -140,17 +142,19 @@ public class AddonBlocks { .block("auto_jewel_crafting_table", AutoJewelCraftingTableBlock::new) .lang("Auto Jewel Crafting Table") .initialProperties(() -> Blocks.IRON_BLOCK) - .properties(p -> p.strength(5.0f, 1200f)) + .properties(BlockBehaviour.Properties::noOcclusion) .blockstate(DataGenUtil::noExtraModelOrState) .simpleItem() .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.NEEDS_IRON_TOOL) .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, ctx.get()) - .pattern(" K ") - .pattern(" J ") - .pattern(" M ") + .pattern("GKG") + .pattern("GJG") + .pattern("IMI") .define('K', AddonItems.KARAKURI_COMPONENT) .define('J', ModBlocks.JEWEL_CRAFTING_TABLE) .define('M', ModBlocks.MAGNETO_ELECTRIC_CORE_BLOCK) + .define('G', Blocks.GLASS) + .define('I', Items.IRON_INGOT) .unlockedBy( AnvilCraftDatagen.hasItem(ModBlocks.JEWEL_CRAFTING_TABLE), AnvilCraftDatagen.has(ModBlocks.JEWEL_CRAFTING_TABLE) @@ -162,17 +166,19 @@ public class AddonBlocks { .block("auto_royal_smithing_table", AutoRoyalSmithingTableBlock::new) .lang("Auto Royal Smithing Table") .initialProperties(() -> Blocks.IRON_BLOCK) - .properties(p -> p.strength(5.0f, 1200f)) + .properties(p -> p.strength(5.0f, 1200f).noOcclusion()) .blockstate(DataGenUtil::noExtraModelOrState) .simpleItem() .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.NEEDS_IRON_TOOL) .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, ctx.get()) - .pattern(" K ") - .pattern(" S ") - .pattern(" M ") + .pattern("GKG") + .pattern("GRG") + .pattern("IMI") .define('K', AddonItems.KARAKURI_COMPONENT) - .define('S', ModBlocks.ROYAL_SMITHING_TABLE) + .define('R', ModBlocks.ROYAL_SMITHING_TABLE) .define('M', ModBlocks.MAGNETO_ELECTRIC_CORE_BLOCK) + .define('G', Blocks.GLASS) + .define('I', Items.IRON_INGOT) .unlockedBy( AnvilCraftDatagen.hasItem(ModBlocks.ROYAL_SMITHING_TABLE), AnvilCraftDatagen.has(ModBlocks.ROYAL_SMITHING_TABLE) @@ -184,17 +190,19 @@ public class AddonBlocks { .block("auto_royal_grindstone", AutoRoyalGrindstoneBlock::new) .lang("Auto Royal Grindstone") .initialProperties(() -> Blocks.IRON_BLOCK) - .properties(p -> p.strength(5.0f, 1200f)) + .properties(p -> p.strength(5.0f, 1200f).noOcclusion()) .blockstate(DataGenUtil::noExtraModelOrState) .simpleItem() .tag(BlockTags.MINEABLE_WITH_PICKAXE, BlockTags.NEEDS_IRON_TOOL) .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(RecipeCategory.BUILDING_BLOCKS, ctx.get()) - .pattern(" K ") - .pattern(" G ") - .pattern(" M ") + .pattern("GKG") + .pattern("GRG") + .pattern("IMI") .define('K', AddonItems.KARAKURI_COMPONENT) - .define('G', ModBlocks.ROYAL_GRINDSTONE) + .define('R', ModBlocks.ROYAL_GRINDSTONE) .define('M', ModBlocks.MAGNETO_ELECTRIC_CORE_BLOCK) + .define('G', Blocks.GLASS) + .define('I', Items.IRON_INGOT) .unlockedBy( AnvilCraftDatagen.hasItem(ModBlocks.ROYAL_GRINDSTONE), AnvilCraftDatagen.has(ModBlocks.ROYAL_GRINDSTONE) @@ -202,6 +210,25 @@ public class AddonBlocks { .save(provider)) .register(); + public static final BlockEntry ADJUSTABLE_POWER_CONVERTER = REGISTRATE + .block("adjustable_power_converter", AdjustablePowerConverterBlock::new) + .lang("Adjustable Power Converter") + .initialProperties(() -> Blocks.IRON_BLOCK) + .properties(p -> p.noOcclusion().isValidSpawn(Blocks::never)) + .blockstate(DataGenUtil::noExtraModelOrState) + .simpleItem() + .tag(BlockTags.MINEABLE_WITH_PICKAXE) + .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ctx.get()) + .pattern("ABA") + .pattern("BCB") + .pattern("ABA") + .define('A', Items.COPPER_INGOT) + .define('B', ModBlocks.POWER_CONVERTER_BIG) + .define('C', AddonItems.KARAKURI_COMPONENT) + .unlockedBy(AnvilCraftDatagen.hasItem(AddonItems.KARAKURI_COMPONENT), AnvilCraftDatagen.has(AddonItems.KARAKURI_COMPONENT)) + .save(provider)) + .register(); + public static final BlockEntry CHAOTIC_RAW_ORE_BLOCK = REGISTRATE .block("chaotic_raw_ore_block", Block::new) .lang("Chaotic Raw Ore Block") @@ -313,7 +340,8 @@ public class AddonBlocks { .lang("Sculk Extractor") .initialProperties(() -> Blocks.SCULK) .properties(p -> p.mapColor(MapColor.COLOR_BLACK).strength(4.0F, 3.0F).sound(SoundType.SCULK_CATALYST).lightLevel((state) -> 9)) - .blockstate(DataGenUtil::noExtraModelOrState).simpleItem() + .blockstate(DataGenUtil::noExtraModelOrState) + .simpleItem() .tag(BlockTags.MINEABLE_WITH_HOE) .recipe((ctx, provider) -> ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ctx.get()) .pattern(" S ") diff --git a/src/main/java/dev/anvilcraft/pigsplus/integration/jade/AddonJadePlugin.java b/src/main/java/dev/anvilcraft/pigsplus/integration/jade/AddonJadePlugin.java index 625f1322..c7d0868a 100644 --- a/src/main/java/dev/anvilcraft/pigsplus/integration/jade/AddonJadePlugin.java +++ b/src/main/java/dev/anvilcraft/pigsplus/integration/jade/AddonJadePlugin.java @@ -14,14 +14,12 @@ public class AddonJadePlugin implements IWailaPlugin { @Override public void register(IWailaCommonRegistration registration) { // registration.registerItemStorage(CrabTrapStorageProvider.INSTANCE, CrabTrapBlockEntity.class); -// registration.registerBlockDataProvider(HeatableBlockProvider.INSTANCE, Block.class); registration.registerBlockDataProvider(ElectricEnchantingTableProvider.INSTANCE, ElectricEnchantingTableBlockEntity.class); } @Override public void registerClient(IWailaClientRegistration registration) { // registration.registerItemStorageClient(CrabTrapStorageProvider.INSTANCE); -// registration.registerBlockComponent(HeatableBlockProvider.INSTANCE, Block.class); registration.registerBlockComponent(ElectricEnchantingTableProvider.INSTANCE, ElectricEnchantingTableBlock.class); } } diff --git a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/adjustable_power_converter.json b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/adjustable_power_converter.json new file mode 100644 index 00000000..59aa4e39 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/adjustable_power_converter.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "anvilcraft_pigsplus:block/adjustable_power_converter" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_jewel_crafting_table.json b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_jewel_crafting_table.json index 29479cea..72bf5f76 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_jewel_crafting_table.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_jewel_crafting_table.json @@ -1,6 +1,9 @@ { "variants": { - "": { + "overload=true": { + "model": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_overload" + }, + "overload=false": { "model": "anvilcraft_pigsplus:block/auto_jewel_crafting_table" } } diff --git a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_grindstone.json b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_grindstone.json index 44f0c41f..9d1e994f 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_grindstone.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_grindstone.json @@ -1,6 +1,9 @@ { "variants": { - "": { + "overload=true": { + "model": "anvilcraft_pigsplus:block/auto_royal_grindstone_overload" + }, + "overload=false": { "model": "anvilcraft_pigsplus:block/auto_royal_grindstone" } } diff --git a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_smithing_table.json b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_smithing_table.json index 9102c0c1..9e3b7aa4 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_smithing_table.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/blockstates/auto_royal_smithing_table.json @@ -1,6 +1,9 @@ { "variants": { - "": { + "overload=true": { + "model": "anvilcraft_pigsplus:block/auto_royal_smithing_table_overload" + }, + "overload=false": { "model": "anvilcraft_pigsplus:block/auto_royal_smithing_table" } } diff --git a/src/main/resources/assets/anvilcraft_pigsplus/lang/zh_cn.json b/src/main/resources/assets/anvilcraft_pigsplus/lang/zh_cn.json index 5af4901b..8c236be3 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/lang/zh_cn.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/lang/zh_cn.json @@ -32,6 +32,7 @@ "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml": "铁砧工艺:猪+ 服务端配置", "anvilcraft_pigsplus.configuration.section.anvilcraft_pigsplus.server.toml.title": "铁砧工艺:猪+ 服务端配置", "anvilcraft_pigsplus.configuration.title": "铁砧工艺:猪+ 配置", + "block.anvilcraft_pigsplus.adjustable_power_converter": "可调式能量转换器", "block.anvilcraft_pigsplus.auto_jewel_crafting_table": "自动珠宝加工台", "block.anvilcraft_pigsplus.auto_royal_grindstone": "自动皇家砂轮", "block.anvilcraft_pigsplus.auto_royal_smithing_table": "自动皇家锻造台", diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json new file mode 100644 index 00000000..12eaec35 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/adjustable_power_converter.json @@ -0,0 +1,49 @@ +{ + "credit": "Made with Blockbench", + "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "textures": { + "0": "anvilcraft_pigsplus:block/adjustable_power_converter_frame", + "1": "anvilcraft_pigsplus:block/adjustable_power_converter_core", + "particle": "anvilcraft_pigsplus:block/adjustable_power_converter_frame" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + }, + { + "from": [0.01, 15.99, 0.01], + "to": [15.99, 0.01, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 8]}, + "faces": { + "north": {"uv": [0, 0, 15.98, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 15.98, 16], "texture": "#0"}, + "south": {"uv": [0, 0, 15.98, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 15.98, 16], "texture": "#0"}, + "up": {"uv": [0, 0, 15.98, 15.98], "texture": "#0"}, + "down": {"uv": [0, 0, 15.98, 15.98], "texture": "#0"} + } + }, + { + "from": [4, 4, 4], + "to": [12, 12, 12], + "faces": { + "north": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "east": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "south": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "west": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "up": {"uv": [0, 0, 8, 8], "texture": "#1"}, + "down": {"uv": [0, 0, 8, 8], "texture": "#1"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table.json index d980b25e..5aecc507 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table.json @@ -1,25 +1,273 @@ { - "format_version": "1.21.6", + "format_version": "1.9.0", "credit": "Made with Blockbench", "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "texture_size": [32, 32], "textures": { - "0": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_side", - "1": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_top", - "2": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_bottom", - "particle": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_side" + "2": "anvilcraft_pigsplus:block/auto_machine_base", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "9": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_gems", + "12": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_stone", + "particle": "anvilcraft_pigsplus:block/auto_machine_base" }, "elements": [ { - "from": [0, 0, 0], + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": -45, "axis": "y", "origin": [8, 16, 8]}, + "faces": { + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 90, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 270, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [4, 8, 9], + "to": [8, 9, 12], + "rotation": {"angle": -22.5, "axis": "y", "origin": [4, 8, 9]}, + "faces": { + "north": {"uv": [3, 0, 7, 1], "texture": "#9"}, + "east": {"uv": [7, 4, 10, 5], "texture": "#9"}, + "south": {"uv": [3, 4, 7, 5], "texture": "#9"}, + "west": {"uv": [0, 4, 3, 5], "texture": "#9"}, + "up": {"uv": [3, 1, 7, 4], "texture": "#9"}, + "down": {"uv": [3, 5, 7, 8], "texture": "#9"} + } + }, + { + "from": [9, 8, 5], + "to": [12, 9, 8], + "rotation": {"angle": 45, "axis": "y", "origin": [9, 8, 5]}, + "faces": { + "north": {"uv": [13, 3, 16, 4], "texture": "#9"}, + "east": {"uv": [7, 3, 10, 4], "texture": "#9"}, + "south": {"uv": [10, 7, 13, 8], "texture": "#9"}, + "west": {"uv": [10, 3, 13, 4], "texture": "#9"}, + "up": {"uv": [10, 4, 13, 7], "texture": "#9"}, + "down": {"uv": [10, 0, 13, 3], "texture": "#9"} + } + }, + { + "from": [6.5, 9, 5], + "to": [9.5, 15, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 9, 5]}, + "faces": { + "north": {"uv": [0, 3, 1.5, 6], "texture": "#12"}, + "east": {"uv": [0, 0, 3, 3], "texture": "#12"}, + "south": {"uv": [2.5, 3, 4, 6], "texture": "#12"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#12"}, + "up": {"uv": [1.5, 3, 3, 6], "texture": "#12"}, + "down": {"uv": [4.5, 3, 6, 6], "texture": "#12"} + } + }, + { + "from": [5.5, 10.5, 6.5], + "to": [10.5, 13.5, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12, 8]}, + "faces": { + "north": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "east": {"uv": [3, 6, 4.5, 7.5], "texture": "#12"}, + "south": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "west": {"uv": [4.5, 6, 6, 7.5], "texture": "#12"}, + "up": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "down": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"} + } + }, + { + "from": [6, 8, 7], + "to": [7, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 8, 7]}, + "faces": { + "north": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "east": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "south": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "west": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "up": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"}, + "down": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"} + } + }, + { + "from": [9, 8, 7], + "to": [10, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 7]}, "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#0"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#2"} + "north": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "east": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "south": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "west": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "up": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"}, + "down": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"} } } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + { + "name": "jewelry", + "origin": [8, 8, 8], + "color": 0, + "children": [12, 13, 14, 15, 16, 17] + } ] } \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table_overload.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table_overload.json new file mode 100644 index 00000000..5a532671 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_jewel_crafting_table_overload.json @@ -0,0 +1,273 @@ +{ + "format_version": "1.9.0", + "credit": "Made with Blockbench", + "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "texture_size": [32, 32], + "textures": { + "2": "anvilcraft_pigsplus:block/auto_machine_base_overload", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "9": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_gems", + "12": "anvilcraft_pigsplus:block/auto_jewel_crafting_table_stone", + "particle": "anvilcraft_pigsplus:block/auto_machine_base_overload" + }, + "elements": [ + { + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": -45, "axis": "y", "origin": [8, 16, 8]}, + "faces": { + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 90, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 270, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [4, 8, 9], + "to": [8, 9, 12], + "rotation": {"angle": -22.5, "axis": "y", "origin": [4, 8, 9]}, + "faces": { + "north": {"uv": [3, 0, 7, 1], "texture": "#9"}, + "east": {"uv": [7, 4, 10, 5], "texture": "#9"}, + "south": {"uv": [3, 4, 7, 5], "texture": "#9"}, + "west": {"uv": [0, 4, 3, 5], "texture": "#9"}, + "up": {"uv": [3, 1, 7, 4], "texture": "#9"}, + "down": {"uv": [3, 5, 7, 8], "texture": "#9"} + } + }, + { + "from": [9, 8, 5], + "to": [12, 9, 8], + "rotation": {"angle": 45, "axis": "y", "origin": [9, 8, 5]}, + "faces": { + "north": {"uv": [13, 3, 16, 4], "texture": "#9"}, + "east": {"uv": [7, 3, 10, 4], "texture": "#9"}, + "south": {"uv": [10, 7, 13, 8], "texture": "#9"}, + "west": {"uv": [10, 3, 13, 4], "texture": "#9"}, + "up": {"uv": [10, 4, 13, 7], "texture": "#9"}, + "down": {"uv": [10, 0, 13, 3], "texture": "#9"} + } + }, + { + "from": [6.5, 9, 5], + "to": [9.5, 15, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 9, 5]}, + "faces": { + "north": {"uv": [0, 3, 1.5, 6], "texture": "#12"}, + "east": {"uv": [0, 0, 3, 3], "texture": "#12"}, + "south": {"uv": [2.5, 3, 4, 6], "texture": "#12"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#12"}, + "up": {"uv": [1.5, 3, 3, 6], "texture": "#12"}, + "down": {"uv": [4.5, 3, 6, 6], "texture": "#12"} + } + }, + { + "from": [5.5, 10.5, 6.5], + "to": [10.5, 13.5, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12, 8]}, + "faces": { + "north": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "east": {"uv": [3, 6, 4.5, 7.5], "texture": "#12"}, + "south": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "west": {"uv": [4.5, 6, 6, 7.5], "texture": "#12"}, + "up": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"}, + "down": {"uv": [0, 6, 2.5, 7.5], "texture": "#12"} + } + }, + { + "from": [6, 8, 7], + "to": [7, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 8, 7]}, + "faces": { + "north": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "east": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "south": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "west": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "up": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"}, + "down": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"} + } + }, + { + "from": [9, 8, 7], + "to": [10, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 7]}, + "faces": { + "north": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "east": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "south": {"uv": [0, 7.5, 0.5, 9], "texture": "#12"}, + "west": {"uv": [0, 7.5, 1, 9], "texture": "#12"}, + "up": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"}, + "down": {"uv": [1, 7.5, 1.5, 8.5], "texture": "#12"} + } + } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + { + "name": "jewelry", + "origin": [8, 8, 8], + "color": 0, + "children": [12, 13, 14, 15, 16, 17] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone.json index 58c5f3a9..72099267 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone.json @@ -2,23 +2,245 @@ "format_version": "1.9.0", "credit": "Made with Blockbench", "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", "texture_size": [32, 32], "textures": { - "0": "anvilcraft_pigsplus:block/auto_royal_grindstone", - "particle": "anvilcraft_pigsplus:block/auto_royal_grindstone" + "2": "anvilcraft_pigsplus:block/auto_machine_base", + "3": "anvilcraft_pigsplus:block/auto_royal_grindstone_stone", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "particle": "anvilcraft_pigsplus:block/auto_machine_base" }, "elements": [ { - "from": [0, 0, 0], + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": -45, "axis": "y", "origin": [8, 16, 8]}, + "faces": { + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 90, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 270, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [5.5, 9, 5], + "to": [10.5, 15, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 10]}, "faces": { - "north": {"uv": [0, 0, 8, 8], "texture": "#0"}, - "east": {"uv": [8, 0, 16, 8], "texture": "#0"}, - "south": {"uv": [0, 0, 8, 8], "texture": "#0"}, - "west": {"uv": [8, 0, 16, 8], "texture": "#0"}, - "up": {"uv": [8, 16, 0, 8], "texture": "#0"}, - "down": {"uv": [16, 8, 8, 16], "texture": "#0"} + "north": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "east": {"uv": [5, 0, 11, 6], "texture": "#3"}, + "south": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "west": {"uv": [5, 0, 11, 6], "texture": "#3"}, + "up": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "down": {"uv": [0, 0, 5, 6], "texture": "#3"} } + }, + { + "from": [4, 10.5, 6.5], + "to": [12, 13.5, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12, 8]}, + "faces": { + "north": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "east": {"uv": [8, 6, 11, 9], "texture": "#3"}, + "south": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "west": {"uv": [8, 6, 11, 9], "texture": "#3"}, + "up": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "down": {"uv": [0, 6, 8, 9], "texture": "#3"} + } + }, + { + "from": [4.5, 8, 7], + "to": [5.5, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [4, 8, 7]}, + "faces": { + "north": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "east": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "south": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "west": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "up": {"uv": [3, 9, 5, 10], "texture": "#3"}, + "down": {"uv": [3, 9, 5, 10], "texture": "#3"} + } + }, + { + "from": [10.5, 8, 7], + "to": [11.5, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 8, 7]}, + "faces": { + "north": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "east": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "south": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "west": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "up": {"uv": [3, 9, 5, 10], "texture": "#3"}, + "down": {"uv": [3, 9, 5, 10], "texture": "#3"} + } + } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + { + "name": "grindstone", + "origin": [0, 0, 0], + "color": 0, + "children": [12, 13, 14, 15] } ] } \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone_overload.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone_overload.json new file mode 100644 index 00000000..79085647 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_grindstone_overload.json @@ -0,0 +1,246 @@ +{ + "format_version": "1.9.0", + "credit": "Made with Blockbench", + "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "texture_size": [32, 32], + "textures": { + "2": "anvilcraft_pigsplus:block/auto_machine_base_overload", + "3": "anvilcraft_pigsplus:block/auto_royal_grindstone_stone", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "particle": "anvilcraft_pigsplus:block/auto_machine_base_overload" + }, + "elements": [ + { + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": 45, "axis": "y", "origin": [8, 16, 8]}, + "faces": { + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 180, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 180, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [5.5, 9, 5], + "to": [10.5, 15, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 1, 10]}, + "faces": { + "north": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "east": {"uv": [5, 0, 11, 6], "texture": "#3"}, + "south": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "west": {"uv": [5, 0, 11, 6], "texture": "#3"}, + "up": {"uv": [0, 0, 5, 6], "texture": "#3"}, + "down": {"uv": [0, 0, 5, 6], "texture": "#3"} + } + }, + { + "from": [4, 10.5, 6.5], + "to": [12, 13.5, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12, 8]}, + "faces": { + "north": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "east": {"uv": [8, 6, 11, 9], "texture": "#3"}, + "south": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "west": {"uv": [8, 6, 11, 9], "texture": "#3"}, + "up": {"uv": [0, 6, 8, 9], "texture": "#3"}, + "down": {"uv": [0, 6, 8, 9], "texture": "#3"} + } + }, + { + "from": [4.5, 8, 7], + "to": [5.5, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [4, 8, 7]}, + "faces": { + "north": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "east": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "south": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "west": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "up": {"uv": [3, 9, 5, 10], "texture": "#3"}, + "down": {"uv": [3, 9, 5, 10], "texture": "#3"} + } + }, + { + "from": [10.5, 8, 7], + "to": [11.5, 11, 9], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 8, 7]}, + "faces": { + "north": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "east": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "south": {"uv": [2, 9, 3, 12], "texture": "#3"}, + "west": {"uv": [0, 9, 2, 12], "texture": "#3"}, + "up": {"uv": [3, 9, 5, 10], "texture": "#3"}, + "down": {"uv": [3, 9, 5, 10], "texture": "#3"} + } + } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + { + "name": "grindstone", + "origin": [0, 0, 0], + "color": 0, + "children": [12, 13, 14, 15] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table.json index 45ce9451..96a00ebb 100644 --- a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table.json +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table.json @@ -1,25 +1,202 @@ { - "credit": "Made by XeKr with Blockbench", + "format_version": "1.9.0", + "credit": "Made with Blockbench", "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "texture_size": [32, 32], "textures": { - "down": "anvilcraft:block/royal_smithing_table_bottom", - "particle": "anvilcraft:block/royal_smithing_table_front", - "south": "anvilcraft:block/royal_smithing_table_front", - "up": "anvilcraft_pigsplus:block/auto_royal_smithing_table_top", - "west": "anvilcraft:block/royal_smithing_table_side" + "2": "anvilcraft_pigsplus:block/auto_machine_base", + "3": "anvilcraft_pigsplus:block/auto_royal_smithing_table_core", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "particle": "anvilcraft_pigsplus:block/auto_machine_base" }, "elements": [ { - "from": [0, 0, 0], + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": -45, "axis": "y", "origin": [8, 16, 8]}, "faces": { - "north": {"uv": [0, 0, 16, 16], "texture": "#south", "cullface": "north"}, - "east": {"uv": [0, 0, 16, 16], "texture": "#west", "cullface": "east"}, - "south": {"uv": [0, 0, 16, 16], "texture": "#south", "cullface": "south"}, - "west": {"uv": [0, 0, 16, 16], "texture": "#west", "cullface": "west"}, - "up": {"uv": [0, 0, 16, 16], "texture": "#up", "cullface": "up"}, - "down": {"uv": [0, 0, 16, 16], "texture": "#down", "cullface": "down"} + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 90, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 270, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [5, 7, 5], + "to": [11, 13, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 7, 5]}, + "faces": { + "north": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "east": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "south": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "west": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "up": {"uv": [6, 0, 12, 6], "texture": "#3"}, + "down": {"uv": [6, 6, 12, 12], "texture": "#3"} } } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + 12 ] } \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table_overload.json b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table_overload.json new file mode 100644 index 00000000..5484ff23 --- /dev/null +++ b/src/main/resources/assets/anvilcraft_pigsplus/models/block/auto_royal_smithing_table_overload.json @@ -0,0 +1,202 @@ +{ + "format_version": "1.9.0", + "credit": "Made with Blockbench", + "parent": "minecraft:block/cube", + "render_type": "minecraft:cutout", + "texture_size": [32, 32], + "textures": { + "2": "anvilcraft_pigsplus:block/auto_machine_base_overload", + "3": "anvilcraft_pigsplus:block/auto_royal_smithing_table_core", + "4": "anvilcraft_pigsplus:block/auto_machine_glass", + "8": "anvilcraft_pigsplus:block/auto_machine_frame", + "particle": "anvilcraft_pigsplus:block/auto_machine_base_overload" + }, + "elements": [ + { + "name": "base", + "from": [1, 1, 1], + "to": [15, 8, 15], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "east": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "south": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "west": {"uv": [0, 10.5, 6, 14], "texture": "#2"}, + "up": {"uv": [16, 7, 9, 0], "texture": "#2"}, + "down": {"uv": [7, 0, 0, 7], "texture": "#2"} + } + }, + { + "name": "glass", + "from": [0, 9, 0], + "to": [16, 16, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0, 9, 0]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 8, 0, 0], "texture": "#4"}, + "down": {"uv": [8, 8, 0, 16], "texture": "#4"} + } + }, + { + "name": "glass", + "from": [0.01, 15.995, 0.01], + "to": [15.99, 9.005, 15.99], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 12.5, 8]}, + "faces": { + "north": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "east": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "south": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "west": {"uv": [8, 0, 16, 3.5], "texture": "#4"}, + "up": {"uv": [8, 16, 0, 8], "texture": "#4"}, + "down": {"uv": [8, 0, 0, 8], "texture": "#4"} + } + }, + { + "name": "output", + "from": [6, 16, 6], + "to": [10, 16, 10], + "rotation": {"angle": -45, "axis": "y", "origin": [8, 16, 8]}, + "faces": { + "north": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "east": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "south": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "west": {"uv": [0, 1, 2, 1], "texture": "#4"}, + "up": {"uv": [11, 5, 13, 7], "rotation": 90, "texture": "#4"}, + "down": {"uv": [11, 5, 13, 7], "rotation": 270, "texture": "#4"} + } + }, + { + "from": [13, 0, 0], + "to": [16, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "east": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "texture": "#8"} + } + }, + { + "from": [13, 0, 13], + "to": [16, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "south": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 90, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [0, 0, 13], + "to": [3, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "west": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 180, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 0, 0], + "to": [3, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 0, 3, 9], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 9], "texture": "#8"}, + "west": {"uv": [6, 0, 9, 9], "texture": "#8"}, + "up": {"uv": [12, 3, 9, 0], "rotation": 270, "texture": "#8"}, + "down": {"uv": [12, 3, 9, 6], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [3, 6, 0], + "to": [13, 9, 3], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "texture": "#8"} + } + }, + { + "from": [13, 6, 3], + "to": [16, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 90, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 270, "texture": "#8"} + } + }, + { + "from": [3, 6, 13], + "to": [13, 9, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "east": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "south": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "west": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 180, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 180, "texture": "#8"} + } + }, + { + "from": [0, 6, 3], + "to": [3, 9, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "east": {"uv": [0, 13, 10, 16], "texture": "#8"}, + "south": {"uv": [3, 0, 6, 3], "texture": "#8"}, + "west": {"uv": [0, 10, 10, 13], "texture": "#8"}, + "up": {"uv": [0, 13, 10, 16], "rotation": 270, "texture": "#8"}, + "down": {"uv": [0, 10, 10, 13], "rotation": 90, "texture": "#8"} + } + }, + { + "from": [5, 7, 5], + "to": [11, 13, 11], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 7, 5]}, + "faces": { + "north": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "east": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "south": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "west": {"uv": [0, 0, 6, 6], "texture": "#3"}, + "up": {"uv": [6, 0, 12, 6], "texture": "#3"}, + "down": {"uv": [6, 6, 12, 12], "texture": "#3"} + } + } + ], + "groups": [ + 0, + 1, + 2, + 3, + { + "name": "frame", + "origin": [8, 8, 8], + "color": 0, + "children": [4, 5, 6, 7, 8, 9, 10, 11] + }, + 12 + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core.png new file mode 100644 index 00000000..ecaf5f6c Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_core.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_frame.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_frame.png new file mode 100644 index 00000000..99dbc81b Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/adjustable_power_converter_frame.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_bottom.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_bottom.png deleted file mode 100644 index c0ed50f9..00000000 Binary files a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_bottom.png and /dev/null differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_gems.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_gems.png new file mode 100644 index 00000000..e6cc4dda Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_gems.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_side.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_side.png deleted file mode 100644 index b5999b16..00000000 Binary files a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_side.png and /dev/null differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_stone.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_stone.png new file mode 100644 index 00000000..19db901b Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_stone.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_top.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_top.png deleted file mode 100644 index 03d00fbe..00000000 Binary files a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_jewel_crafting_table_top.png and /dev/null differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base.png new file mode 100644 index 00000000..c9af6e5c Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base_overload.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base_overload.png new file mode 100644 index 00000000..e522dded Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_base_overload.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_frame.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_frame.png new file mode 100644 index 00000000..200e91fa Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_frame.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_glass.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_glass.png new file mode 100644 index 00000000..37a3e65d Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_machine_glass.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone.png deleted file mode 100644 index 9444548b..00000000 Binary files a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone.png and /dev/null differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone_stone.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone_stone.png new file mode 100644 index 00000000..5c30c25c Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_grindstone_stone.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_core.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_core.png new file mode 100644 index 00000000..f1333038 Binary files /dev/null and b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_core.png differ diff --git a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_top.png b/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_top.png deleted file mode 100644 index 46d80d02..00000000 Binary files a/src/main/resources/assets/anvilcraft_pigsplus/textures/block/auto_royal_smithing_table_top.png and /dev/null differ