diff --git a/src/client/java/modchest/clientScreen/denkMalBlockScreen.java b/src/client/java/modchest/clientScreen/denkMalBlockScreen.java new file mode 100644 index 0000000..198b6d7 --- /dev/null +++ b/src/client/java/modchest/clientScreen/denkMalBlockScreen.java @@ -0,0 +1,41 @@ +package modchest.clientScreen; + +import com.mojang.blaze3d.systems.RenderSystem; +import modchest.screen.denkMalBlockScreenHandler; +import net.minecraft.client.gui.screen.ingame.HandledScreen; +import net.minecraft.client.render.GameRenderer; +import net.minecraft.client.util.math.MatrixStack; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.text.Text; + +public class denkMalBlockScreen extends HandledScreen { + //private static final Identifier TEXTURE = new Identifier(REServerMod.MOD_ID, ); + + public denkMalBlockScreen(denkMalBlockScreenHandler handler, PlayerInventory inventory, Text title) { + super(handler, inventory, title); + } + + @Override + protected void init() { + super.init();; + titleX = (backgroundWidth - textRenderer.getWidth(title)) / 2; + + } + + @Override + protected void drawBackground(MatrixStack matrices, float delta, int mouseX, int mouseY) { + RenderSystem.setShader(GameRenderer::getPositionTexShader); + RenderSystem.setShaderColor(1.0F, 1.0F, 1.0F, 1.0F); + //RenderSystem.setShaderTexture(0, TEXTURE); + int x = (width - backgroundWidth) / 2; + int y = (height - backgroundHeight) / 2; + drawTexture(matrices, x, y, 0, 0, backgroundWidth, backgroundHeight); + } + + @Override + public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) { + renderBackground(matrices); + super.render(matrices, mouseX, mouseY, delta); + drawMouseoverTooltip(matrices, mouseX, mouseY); + } +} diff --git a/src/client/java/modchest/util/clientInitializer.java b/src/client/java/modchest/util/clientInitializer.java index 3370f3b..0953ea0 100644 --- a/src/client/java/modchest/util/clientInitializer.java +++ b/src/client/java/modchest/util/clientInitializer.java @@ -1,9 +1,13 @@ package modchest.util; import modchest.block.modBlocks; +import modchest.clientScreen.denkMalBlockScreen; import modchest.networking.modNetworkingClient; + import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; +import net.minecraft.client.gui.screen.ingame.HandledScreens; import net.minecraft.client.render.RenderLayer; +import modchest.screen.modScreenHandler; public class clientInitializer { public static void itemGroups() { @@ -26,5 +30,6 @@ public class clientInitializer { public static void renderer() { //Grafikrenderer werden aufgerufen BlockRenderLayerMap.INSTANCE.putBlock(modBlocks.denk_mal_block, RenderLayer.getTranslucent()); //denk_mal_block bekommt die Faehigkeit, transparente Grafiken zu haben + HandledScreens.register(modScreenHandler.denk_mal_block_screen_handler, denkMalBlockScreen::new); } } diff --git a/src/main/java/modchest/REServerMod.java b/src/main/java/modchest/REServerMod.java index fe7cbcc..4218182 100644 --- a/src/main/java/modchest/REServerMod.java +++ b/src/main/java/modchest/REServerMod.java @@ -17,6 +17,7 @@ public class REServerMod implements ModInitializer { initializer.itemsAndBlocks(); initializer.events(); initializer.networking(); + initializer.renderer(); LOGGER.info("Modchest successfully loaded!"); } diff --git a/src/main/java/modchest/block/custom/denkMalBlock.java b/src/main/java/modchest/block/custom/denkMalBlock.java index ff8a436..4f5cae9 100644 --- a/src/main/java/modchest/block/custom/denkMalBlock.java +++ b/src/main/java/modchest/block/custom/denkMalBlock.java @@ -1,16 +1,27 @@ package modchest.block.custom; +import modchest.REServerMod; +import modchest.block.entity.denkMalBlockEntity; import modchest.util.denkMalBlockUtil; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.*; import net.minecraft.block.entity.BlockEntity; +import net.minecraft.block.entity.DispenserBlockEntity; +import net.minecraft.block.entity.DropperBlockEntity; import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.item.ItemStack; import net.minecraft.server.world.ServerWorld; +import net.minecraft.stat.Stats; import net.minecraft.state.StateManager; import net.minecraft.state.property.BooleanProperty; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.ItemScatterer; +import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; import net.minecraft.util.math.random.Random; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; @@ -20,11 +31,10 @@ import net.minecraft.world.explosion.Explosion; import org.jetbrains.annotations.Nullable; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mutable; -import org.spongepowered.asm.mixin.Shadow; import static modchest.block.modBlocks.denk_mal_block_placeholder; -public class denkMalBlock extends BlockWithEntity { //Item soll nicht craftable sein +public class denkMalBlock extends BlockWithEntity implements BlockEntityProvider { //Item soll nicht craftable sein public static BooleanProperty POWERED = BooleanProperty.of("powered"); //speichert ob der Block ein Redstonesignal erhaelt public denkMalBlock(FabricBlockSettings fabricBlockSettings) { @@ -44,11 +54,22 @@ public class denkMalBlock extends BlockWithEntity { //Item soll nicht crafta return SHAPE; } + @Override + public void onStateReplaced(BlockState state, World world, BlockPos pos, BlockState newState, boolean moved) { //dropt alle Items im Inventar, wenn der Block zerstoert wird + if (state.getBlock() != newState.getBlock()) { + BlockEntity blockEntity = world.getBlockEntity(pos); + if (blockEntity instanceof denkMalBlockEntity) { + //ItemScatterer.spawn(world, pos, (denkMalBlockEntity) blockEntity); + world.updateComparators(pos, this); + } + super.onStateReplaced(state, world, pos, newState, moved); + } + } @Nullable @Override public BlockEntity createBlockEntity(BlockPos pos, BlockState state) { - return null; + return new denkMalBlockEntity(pos, state); } @Override @@ -130,10 +151,13 @@ public class denkMalBlock extends BlockWithEntity { //Item soll nicht crafta temp[0] = pos.getX(); temp[1] = pos.getY(); temp[2] = pos.getZ(); - int[] range = new int[3]; //noch ist die range auf 20 Bloecke, soll aber spaeter via ein Entity vom Spieler veraendert werden koenneny + int[] range = new int[6]; //noch ist die range auf 20 Bloecke, soll aber spaeter via ein Entity vom Spieler veraendert werden koennen range[0] = 20; range[1] = 20; range[2] = 20; + range[3] = 20; + range[4] = 20; + range[5] = 20; if (!state.get(POWERED)) { data.addBlock(temp, range); } else { @@ -142,9 +166,13 @@ public class denkMalBlock extends BlockWithEntity { //Item soll nicht crafta } } - @Mutable - @Final protected BlockPos worldPosition; - public void setCMPos(BlockPos newPos) { - worldPosition = newPos; + @Override + public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) { + if (world.isClient) { + return ActionResult.SUCCESS; + } + BlockEntity blockEntity = world.getBlockEntity(pos); + player.openHandledScreen((denkMalBlockEntity) blockEntity); + return ActionResult.CONSUME; } } diff --git a/src/main/java/modchest/block/custom/denkMalBlockPlaceholder.java b/src/main/java/modchest/block/custom/denkMalBlockPlaceholder.java index 4faef0d..5963c50 100644 --- a/src/main/java/modchest/block/custom/denkMalBlockPlaceholder.java +++ b/src/main/java/modchest/block/custom/denkMalBlockPlaceholder.java @@ -3,17 +3,19 @@ package modchest.block.custom; import modchest.REServerMod; import modchest.util.denkMalBlockUtil; import net.minecraft.block.*; +import net.minecraft.block.entity.BlockEntity; import net.minecraft.util.math.BlockPos; import net.minecraft.util.shape.VoxelShape; import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.WorldAccess; +import org.jetbrains.annotations.Nullable; import java.util.Arrays; import static modchest.block.modBlocks.denk_mal_block_placeholder; -public class denkMalBlockPlaceholder extends Block { //Block der simuliert, dass der DenkMalBLock 2 Bloecke hoch waere +public class denkMalBlockPlaceholder extends BlockWithEntity { //Block der simuliert, dass der DenkMalBLock 2 Bloecke hoch waere public denkMalBlockPlaceholder(Settings settings) { super(settings); } @@ -34,4 +36,10 @@ public class denkMalBlockPlaceholder extends Block { //Block der simulier temp[2] = pos.getZ(); data.removeBlock(temp); //Loescht den denkMalBLock aus der Liste der abbauverhindernden Bloecke } + + @Nullable + @Override + public BlockEntity createBlockEntity(BlockPos pos, BlockState state) { + return null; + } } diff --git a/src/main/java/modchest/block/entity/denkMalBlockEntity.java b/src/main/java/modchest/block/entity/denkMalBlockEntity.java new file mode 100644 index 0000000..50dfe5a --- /dev/null +++ b/src/main/java/modchest/block/entity/denkMalBlockEntity.java @@ -0,0 +1,72 @@ +package modchest.block.entity; + +import modchest.REServerMod; +import modchest.screen.denkMalBlockScreenHandler; +import net.minecraft.block.BlockState; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.SimpleInventory; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.screen.Generic3x3ContainerScreenHandler; +import net.minecraft.screen.NamedScreenHandlerFactory; +import net.minecraft.screen.ScreenHandler; +import net.minecraft.text.Text; +import net.minecraft.util.collection.DefaultedList; +import net.minecraft.util.math.BlockPos; +import org.jetbrains.annotations.Nullable; + +public class denkMalBlockEntity extends BlockEntity implements NamedScreenHandlerFactory//, ImplementedInventory + { + //private final DefaultedList inventory = DefaultedList.ofSize(3, ItemStack.EMPTY); + private SimpleInventory inventory = new SimpleInventory(3); + + private int[] protectedAreaSize = new int[6]; //range ist 6 stellen lang mit immer der erlaubten range in negative richtung, dann positiv fuer alle 3 Koordinaten, also: -x, +x, -y, +y, -z, +z Richtung + private int[] posBlock = new int[3]; + + protected denkMalBlockEntity(BlockEntityType blockEntityType, BlockPos blockPos, BlockState blockState) { + super(blockEntityType, blockPos, blockState); + } + + public denkMalBlockEntity(BlockPos pos, BlockState state) { + super(modBlockEntities.denk_mal_block_interface, pos, state); + posBlock[0] = pos.getX(); + posBlock[1] = pos.getY(); + posBlock[2] = pos.getZ(); + } + + //@Override + public int size() { + return 3; + } + + //@Override + public DefaultedList getItems() { + return null; + } + + @Override + public Text getDisplayName() { + return Text.literal("Denkmal Block"); + } + + @Nullable + @Override + public ScreenHandler createMenu(int syncId, PlayerInventory inv, PlayerEntity player) { + //return new Generic3x3ContainerScreenHandler(syncId, inv, this); + REServerMod.LOGGER.info("creating Menu!"); + return new denkMalBlockScreenHandler(syncId, inv, inventory); + } + + @Override + protected void writeNbt(NbtCompound nbt) { + + } + + @Override + public void readNbt(NbtCompound nbt) { + + } +} diff --git a/src/main/java/modchest/block/entity/modBlockEntities.java b/src/main/java/modchest/block/entity/modBlockEntities.java index 27f4323..306897a 100644 --- a/src/main/java/modchest/block/entity/modBlockEntities.java +++ b/src/main/java/modchest/block/entity/modBlockEntities.java @@ -10,10 +10,15 @@ import net.minecraft.util.registry.Registry; //rendert letztendlich die Interaktionsmenüs der Blöcke public class modBlockEntities { public static BlockEntityType steering_wheel_interface; // Interaktionsmenü wird erstellt + public static BlockEntityType denk_mal_block_interface; public static void registerBlockEntities() { steering_wheel_interface = Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(REServerMod.MOD_ID, "steering_wheel_interface"), // Interkationsmenü wird gerendert FabricBlockEntityTypeBuilder.create(steeringWheelEntity::new, modBlocks.steering_wheel).build(null)); + + denk_mal_block_interface = Registry.register(Registry.BLOCK_ENTITY_TYPE, + new Identifier(REServerMod.MOD_ID, "denk_mal_block_interface"), + FabricBlockEntityTypeBuilder.create(denkMalBlockEntity::new, modBlocks.denk_mal_block).build(null)); } } diff --git a/src/main/java/modchest/block/modBlocks.java b/src/main/java/modchest/block/modBlocks.java index 50de4ef..9d2b982 100644 --- a/src/main/java/modchest/block/modBlocks.java +++ b/src/main/java/modchest/block/modBlocks.java @@ -22,7 +22,7 @@ public class modBlocks { public static void setBlocks() {// Block wird definiert steering_wheel = registerBlock("steering_wheel", - new steeringWheelBlock(FabricBlockSettings.of(Material.WOOD).strength(1.0f).requiresTool()), + new steeringWheelBlock(FabricBlockSettings.of(Material.WOOD).strength(1.0f).requiresTool().nonOpaque()), modItemGroup.modchest); denk_mal_block = registerBlock("denk_mal_block", diff --git a/src/main/java/modchest/screen/denkMalBlockScreenHandler.java b/src/main/java/modchest/screen/denkMalBlockScreenHandler.java new file mode 100644 index 0000000..fc81250 --- /dev/null +++ b/src/main/java/modchest/screen/denkMalBlockScreenHandler.java @@ -0,0 +1,173 @@ +package modchest.screen; + +import modchest.REServerMod; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.Inventory; +import net.minecraft.inventory.SimpleInventory; +import net.minecraft.item.ItemStack; +import net.minecraft.screen.Generic3x3ContainerScreenHandler; +import net.minecraft.screen.ScreenHandler; +import net.minecraft.screen.ScreenHandlerType; +import net.minecraft.screen.slot.Slot; + +public class denkMalBlockScreenHandler extends ScreenHandler { + private final Inventory inventory; + + private static final int field_30788 = 9; + private static final int field_30789 = 9; + private static final int field_30790 = 36; + private static final int field_30791 = 36; + private static final int field_30792 = 45; + + public denkMalBlockScreenHandler(int syncId, PlayerInventory playerInventory) { + this(syncId, playerInventory, new SimpleInventory(9)); + } + + public denkMalBlockScreenHandler(int syncId, PlayerInventory playerInventory, Inventory inventory) { + //super(ScreenHandlerType.GENERIC_3X3, syncId); + super(modScreenHandler.denk_mal_block_screen_handler, syncId); + + checkSize(inventory, 3); + this.inventory = inventory; + inventory.onOpen(playerInventory.player); + + this.addSlot(new Slot(inventory, 0, 12 ,15)); + this.addSlot(new Slot(inventory, 1, 86 ,15)); + this.addSlot(new Slot(inventory, 2, 186 ,60)); + + int j; + int i; + for (i = 0; i < 3; ++i) { + for (j = 0; j < 3; ++j) { + this.addSlot(new Slot(inventory, j + i * 3, 62 + j * 18, 17 + i * 18)); + } + } + for (i = 0; i < 3; ++i) { + for (j = 0; j < 9; ++j) { + this.addSlot(new Slot(playerInventory, j + i * 9 + 9, 8 + j * 18, 84 + i * 18)); + } + } + for (i = 0; i < 9; ++i) { + this.addSlot(new Slot(playerInventory, i, 8 + i * 18, 142)); + } + + /* + super(ScreenHandlerType.GENERIC_3X3, syncId); + int j; + int i; + Generic3x3ContainerScreenHandler.checkSize(inventory, 9); + this.inventory = inventory; + inventory.onOpen(playerInventory.player); + for (i = 0; i < 3; ++i) { + for (j = 0; j < 3; ++j) { + this.addSlot(new Slot(inventory, j + i * 3, 62 + j * 18, 17 + i * 18)); + } + } + for (i = 0; i < 3; ++i) { + for (j = 0; j < 9; ++j) { + this.addSlot(new Slot(playerInventory, j + i * 9 + 9, 8 + j * 18, 84 + i * 18)); + } + } + for (i = 0; i < 9; ++i) { + this.addSlot(new Slot(playerInventory, i, 8 + i * 18, 142)); + }*/ + } + + @Override + public boolean canUse(PlayerEntity player) { + return this.inventory.canPlayerUse(player); + } + + @Override + public ItemStack transferSlot(PlayerEntity player, int index) { + ItemStack itemStack = ItemStack.EMPTY; + Slot slot = (Slot)this.slots.get(index); + if (slot != null && slot.hasStack()) { + ItemStack itemStack2 = slot.getStack(); + itemStack = itemStack2.copy(); + if (index < 9 ? !this.insertItem(itemStack2, 9, 45, true) : !this.insertItem(itemStack2, 0, 9, false)) { + return ItemStack.EMPTY; + } + if (itemStack2.isEmpty()) { + slot.setStack(ItemStack.EMPTY); + } else { + slot.markDirty(); + } + if (itemStack2.getCount() == itemStack.getCount()) { + return ItemStack.EMPTY; + } + slot.onTakeItem(player, itemStack2); + } + return itemStack; + } + + @Override + public void close(PlayerEntity player) { + super.close(player); + this.inventory.onClose(player); + } +/* + public denkMalBlockScreenHandler(int syncId, PlayerInventory inventory) { + this(syncId, inventory, new SimpleInventory(3)); + } + + public denkMalBlockScreenHandler(int syncId, PlayerInventory playerInventory, Inventory inventory) { + super(modScreenHandler.denk_mal_block_screen_handler, syncId); + checkSize(inventory, 3); + this.inventory = inventory; + inventory.onOpen(playerInventory.player); + + this.addSlot(new Slot(inventory, 0, 12 ,15)); + this.addSlot(new Slot(inventory, 1, 86 ,15)); + this.addSlot(new Slot(inventory, 2, 186 ,60)); + + addPlayerInventory(playerInventory); + addPlayerHotbar(playerInventory); + } + + @Override + public ItemStack transferSlot(PlayerEntity player, int invSlot) { //kuemmert sich um Unfig wie shift-click + ItemStack newStack = ItemStack.EMPTY; + Slot slot = this.slots.get(invSlot); + if (slot != null && slot.hasStack()) { + ItemStack originalStack = slot.getStack(); + if (invSlot < this.inventory.size()) { + if (!this.insertItem(originalStack, this.inventory.size(), this.slots.size(), true)) { + return ItemStack.EMPTY; + } + } else if (!this.insertItem(originalStack, 0, this.inventory.size(), false)) { + return ItemStack.EMPTY; + } + + if (originalStack.isEmpty()) { + slot.setStack(ItemStack.EMPTY); + } else { + slot.markDirty();; + } + } + + return newStack; + } + + @Override + public boolean canUse(PlayerEntity player) { + return this.inventory.canPlayerUse(player); + } + + private void addPlayerInventory(PlayerInventory playerInventory) { + for (int i = 0; i < 3; i++) { + for (int l = 0; l < 9; ++l) { + this.addSlot(new Slot(playerInventory, l + i*9 +9, 8 + l * 18, 86 + i * 18)); + } + } + } + + private void addPlayerHotbar(PlayerInventory playerInventory) { + for (int i = 0; i < 9; ++i) { + this.addSlot(new Slot(playerInventory, i, 8 + i * 18, 144)); + } + } + + */ +} diff --git a/src/main/java/modchest/screen/modScreenHandler.java b/src/main/java/modchest/screen/modScreenHandler.java new file mode 100644 index 0000000..fd24fdb --- /dev/null +++ b/src/main/java/modchest/screen/modScreenHandler.java @@ -0,0 +1,12 @@ +package modchest.screen; + +import net.minecraft.screen.ScreenHandlerType; +import net.minecraft.screen.StonecutterScreenHandler; + +public class modScreenHandler { + public static ScreenHandlerType denk_mal_block_screen_handler; + + public static void registerAllScreenHandlers() { + denk_mal_block_screen_handler = new ScreenHandlerType<>(denkMalBlockScreenHandler::new); + } +} diff --git a/src/main/java/modchest/util/denkMalBlockUtil.java b/src/main/java/modchest/util/denkMalBlockUtil.java index da9bac4..a7a7113 100644 --- a/src/main/java/modchest/util/denkMalBlockUtil.java +++ b/src/main/java/modchest/util/denkMalBlockUtil.java @@ -20,7 +20,7 @@ public class denkMalBlockUtil extends dataSaverIO{ NbtCompound tempNbt = new NbtCompound(); //Nbt in dem die Blockdaten gespeichert werden NbtCompound nbt = returnLoadedNbt(); //holt sich den denkmalblock nbt tempNbt.putIntArray("position", pos); - tempNbt.putIntArray("range", range); + tempNbt.putIntArray("range", range); //range ist 6 stellen lang mit immer der erlaubten range in negative richtung, dann positiv fuer alle 3 Koordinaten, also: -x, +x, -y, +y, -z, +z Richtung nbt.put(Arrays.toString(pos), tempNbt); //speichert die daten des neuen Blocks ab saveInNbt(nbt); //speichert den editierten denkmalblock-nbt ab } @@ -75,7 +75,7 @@ public class denkMalBlockUtil extends dataSaverIO{ blockPos[2] = pos.getZ(); for(int i = 0; i < 3; i++) { int dif = (denkPos[i] - blockPos[i]); - if (abs(dif) > denkRange[i]) { + if(dif > abs(denkRange[i]) && dif < abs(denkRange[i++])) { return false; } } diff --git a/src/main/java/modchest/util/initializer.java b/src/main/java/modchest/util/initializer.java index 7ad0cb5..9a6127b 100644 --- a/src/main/java/modchest/util/initializer.java +++ b/src/main/java/modchest/util/initializer.java @@ -7,6 +7,7 @@ import modchest.event.playerBreakBlockEvents; import modchest.item.modItemGroup; import modchest.item.modItems; import modchest.networking.modNetworkingServer; +import modchest.screen.modScreenHandler; import net.fabricmc.fabric.api.entity.event.v1.ServerPlayerEvents; import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; @@ -32,7 +33,6 @@ public class initializer { } public static void renderer() { - //BlockRenderLayerMap.INSTANCE.putBlock(modBlocks.denk_mal_block, RenderLayer.getTranslucent()); - + modScreenHandler.registerAllScreenHandlers(); } } diff --git a/src/main/resources/assets/modchest/lang/de_de.json b/src/main/resources/assets/modchest/lang/de_de.json index 4f2ddfd..d253759 100644 --- a/src/main/resources/assets/modchest/lang/de_de.json +++ b/src/main/resources/assets/modchest/lang/de_de.json @@ -1,14 +1,15 @@ { - "item.modchest.shipblock": "Schiffsblock", - "item.modchest.pirates_coin": "OP Piraten ding zum Testen", + "block.modchest.denk_mal_block": "Denkmal Block", "block.modchest.steering_wheel": "Lenkrad", - "itemGroup.modchest.itemlist1": "Malte's Mod", - "chat.modchest.multispawn.beddestroyed": "Scheint so, als wäre das Bett zerstört worden!", + "chat.modchest.multispawn.getable": "Diese spawn location konnte nicht geladen werden!", "chat.modchest.multispawn.respawned": "Respawne bei #%s", "chat.modchest.multispawn.setspawn": "Nutze spawn #%s", "chat.modchest.multispawn.setspawnerror": "Fehler beim speichern!", - "chat.modchest.multispawn.spawnnotset": "Es scheint so, als wäre dieser Spawn nicht gesetzt!", "chat.modchest.multispawn.spawnnotsaved": "Fehler beim Versuch, diesen Spawn zu speichern!", - "chat.modchest.multispawn.getable": "Diese spawn location konnte nicht geladen werden!" + "chat.modchest.multispawn.spawnnotset": "Es scheint so, als wäre dieser Spawn nicht gesetzt!", + "item.modchest.denk_mal_item": "Denkmal Item", + "item.modchest.pirates_coin": "OP Piraten ding zum Testen", + "item.modchest.shipblock": "Schiffsblock", + "itemGroup.modchest.itemlist1": "Malte's Mod" } \ No newline at end of file diff --git a/src/main/resources/assets/modchest/lang/en_pt.json b/src/main/resources/assets/modchest/lang/en_pt.json index 46ba5c9..b72b635 100644 --- a/src/main/resources/assets/modchest/lang/en_pt.json +++ b/src/main/resources/assets/modchest/lang/en_pt.json @@ -1,8 +1,10 @@ { - "item.modchest.shipblock": "Hanno, änder die Sprache!", + "item.modchest.shipblock": "Ste'r thaat ship!" , "item.modchest.pirates_coin": "Ya coin for tha pirrrrrates!", - "block.modchest.steering_wheel": "Ne, du kriegst keine hilfreichen Angaben mit der Sprache!", - "itemGroup.modchest.itemlist1": "Änder doch endlich die Sprache...", + "block.modchest.steering_wheel": "Arr! All' h'nd on bord!", + "item.modchest.denk_mal_item": "Don't le' anyon' destr'y your stuff, mate", + "block.modchest.denk_mal_block": "Tortuga no breaky", + "itemGroup.modchest.itemlist1": "Pantry", "chat.modchest.multispawn.beddestroyed": "Sorry, mate! Looks like that cap'n doesn't like you", "chat.modchest.multispawn.respawned": "Prepare to board some ship, lads!", diff --git a/src/main/resources/assets/modchest/lang/en_us.json b/src/main/resources/assets/modchest/lang/en_us.json index ee5426e..3eb9e36 100644 --- a/src/main/resources/assets/modchest/lang/en_us.json +++ b/src/main/resources/assets/modchest/lang/en_us.json @@ -2,6 +2,8 @@ "item.modchest.shipblock": "Shipblock", "item.modchest.pirates_coin": "Pirate's Coin", "block.modchest.steering_wheel": "Steering Wheel", + "item.modchest.denk_mal_item": "preservation item", + "block.modchest.denk_mal_block": "preservation block", "itemGroup.modchest.itemlist1": "new blocks", "chat.modchest.multispawn.beddestroyed": "Oh shit! Looks like that bed got destroyed!", diff --git a/src/main/resources/assets/modchest/models/block/steering_wheel.json b/src/main/resources/assets/modchest/models/block/steering_wheel.json index 9987296..e707379 100644 --- a/src/main/resources/assets/modchest/models/block/steering_wheel.json +++ b/src/main/resources/assets/modchest/models/block/steering_wheel.json @@ -1,6 +1,914 @@ { - "parent": "block/cube_all", - "textures": { - "all": "modchest:block/steering_wheel" - } + "credit": "Made with Blockbench", + "textures": { + "0": "block/acacia_planks", + "1": "block/diamond_block", + "4": "block/polished_blackstone", + "5": "block/raw_iron_block", + "particle": "block/acacia_planks" + }, + "elements": [ + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 0], + "to": [8.5, 11.5913, 1], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 0], + "to": [8.5, 11.5913, 1], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 17, 6.4087], + "to": [8.5, 18, 9.5913], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 17, 6.4087], + "to": [8.5, 18, 9.5913], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 17, 6.4087], + "to": [8.5, 18, 9.5913], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 15], + "to": [8.5, 11.5913, 16], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 15], + "to": [8.5, 11.5913, 16], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 2, 6.4087], + "to": [8.5, 3, 9.5913], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 2, 6.4087], + "to": [8.5, 3, 9.5913], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 2, 6.4087], + "to": [8.5, 3, 9.5913], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 2, 6.4087], + "to": [8.5, 3, 9.5913], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 0], + "to": [8.5, 11.5913, 1], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 0], + "to": [8.5, 11.5913, 1], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 17, 6.4087], + "to": [8.5, 18, 9.5913], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 15], + "to": [8.5, 11.5913, 16], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.4087, 15], + "to": [8.5, 11.5913, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#0"}, + "south": {"uv": [0, 0, 1, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 90, "texture": "#0"}, + "up": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 1, 1], "texture": "#0"} + } + }, + { + "from": [7.5, 9.7, -1.5], + "to": [8.5, 10.45, 6.5], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 0.75], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 270, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 90, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "down": {"uv": [2, 0, 3, 8], "texture": "#0"} + } + }, + { + "from": [7.5, 9.6, 9.5], + "to": [8.5, 10.35, 17.5], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 0.75], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 270, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 90, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "down": {"uv": [2, 0, 3, 8], "texture": "#0"} + } + }, + { + "from": [7.5, 0.5, 7.55], + "to": [8.5, 8.5, 8.3], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "down": {"uv": [2, 0, 3, 0.75], "texture": "#0"} + } + }, + { + "from": [7.5, 11.5, 7.55], + "to": [8.5, 19.5, 8.3], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "down": {"uv": [2, 0, 3, 0.75], "texture": "#0"} + } + }, + { + "from": [7.5, 0.5, 7.55], + "to": [8.5, 8.5, 8.3], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "down": {"uv": [2, 0, 3, 0.75], "texture": "#0"} + } + }, + { + "from": [7.5, 9.65, 9.5], + "to": [8.5, 10.4, 17.5], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 0.75], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 270, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 90, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "down": {"uv": [2, 0, 3, 8], "texture": "#0"} + } + }, + { + "from": [7.5, 9.65, -1.5], + "to": [8.5, 10.4, 6.5], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 0.75], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 270, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 90, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "down": {"uv": [2, 0, 3, 8], "texture": "#0"} + } + }, + { + "from": [7.5, 11.5, 7.55], + "to": [8.5, 19.5, 8.3], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "east": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "south": {"uv": [2, 0, 3, 8], "rotation": 180, "texture": "#0"}, + "west": {"uv": [2, 0, 2.75, 8], "rotation": 180, "texture": "#0"}, + "up": {"uv": [2, 0, 3, 0.75], "texture": "#0"}, + "down": {"uv": [2, 0, 3, 0.75], "texture": "#0"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 9.70163, 6.5], + "to": [8.5, 10.29837, 9.5], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [5, 3, 3, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "south": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "up": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "down": {"uv": [4, 3, 6, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 9.70163, 6.5], + "to": [8.5, 10.29837, 9.5], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [5, 3, 3, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "south": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "up": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "down": {"uv": [4, 3, 6, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.5, 7.70163], + "to": [8.5, 11.5, 8.29837], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [4, 3, 6, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 90, "texture": "#5"}, + "south": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 270, "texture": "#5"}, + "up": {"uv": [5, 3, 3, 5], "texture": "#5"}, + "down": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.5, 7.70163], + "to": [8.5, 11.5, 8.29837], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [4, 3, 6, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 90, "texture": "#5"}, + "south": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 270, "texture": "#5"}, + "up": {"uv": [5, 3, 3, 5], "texture": "#5"}, + "down": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.5, 7.70163], + "to": [8.5, 11.5, 8.29837], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [4, 3, 6, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 90, "texture": "#5"}, + "south": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 270, "texture": "#5"}, + "up": {"uv": [5, 3, 3, 5], "texture": "#5"}, + "down": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 8.5, 7.70163], + "to": [8.5, 11.5, 8.29837], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [5, 3, 3, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "south": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 180, "texture": "#5"}, + "up": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "down": {"uv": [4, 3, 6, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 9.70163, 6.5], + "to": [8.5, 10.29837, 9.5], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [4, 3, 6, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 90, "texture": "#5"}, + "south": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 270, "texture": "#5"}, + "up": {"uv": [5, 3, 3, 5], "texture": "#5"}, + "down": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [7.5, 9.70163, 6.5], + "to": [8.5, 10.29837, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [4, 3, 6, 5], "rotation": 180, "texture": "#5"}, + "east": {"uv": [7, 5, 10, 8], "rotation": 90, "texture": "#5"}, + "south": {"uv": [1, 1, 3, 3], "texture": "#5"}, + "west": {"uv": [7, 5, 10, 8], "rotation": 270, "texture": "#5"}, + "up": {"uv": [5, 3, 3, 5], "texture": "#5"}, + "down": {"uv": [5, 4, 3, 2], "rotation": 180, "texture": "#5"} + } + }, + { + "name": "diamon", + "from": [7.5, 9.5, 7.5], + "to": [8.7, 10.5, 8.5], + "rotation": {"angle": 22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1.2, 1], "rotation": 180, "texture": "#1"}, + "east": {"uv": [8, 8, 15, 15], "rotation": 180, "texture": "#1"}, + "south": {"uv": [0, 0, 1.2, 1], "rotation": 180, "texture": "#1"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 180, "texture": "#missing"}, + "up": {"uv": [0, 0, 1.2, 1], "texture": "#1"}, + "down": {"uv": [0, 0, 1.2, 1], "texture": "#1"} + } + }, + { + "name": "diamond", + "from": [7.5, 9.5, 7.5], + "to": [8.7, 10.5, 8.5], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 1.2, 1], "rotation": 180, "texture": "#1"}, + "east": {"uv": [6, 6, 15, 15], "rotation": 90, "texture": "#1"}, + "south": {"uv": [6, 4, 7.2, 5], "texture": "#1"}, + "west": {"uv": [0, 0, 1, 1], "rotation": 270, "texture": "#missing"}, + "up": {"uv": [0, 0, 1.2, 1], "texture": "#1"}, + "down": {"uv": [0, 0, 1.2, 1], "rotation": 180, "texture": "#1"} + } + }, + { + "name": "AufhängungDrehteil", + "from": [5.5, 9, 7.5], + "to": [7.5, 11, 8.5], + "rotation": {"angle": -22.5, "axis": "x", "origin": [8, 10, 8]}, + "faces": { + "north": {"uv": [0, 0, 2, 2], "rotation": 180, "texture": "#0"}, + "east": {"uv": [0, 0, 2, 1], "rotation": 90, "texture": "#0"}, + "south": {"uv": [0, 0, 2, 2], "texture": "#0"}, + "west": {"uv": [0, 0, 2, 1], "rotation": 270, "texture": "#0"}, + "up": {"uv": [0, 0, 2, 1], "texture": "#0"}, + "down": {"uv": [0, 0, 2, 1], "rotation": 180, "texture": "#0"} + } + }, + { + "from": [0.5, 0, 0.75], + "to": [5.5, 1, 15], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 14.25, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 14.25, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 14.25, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 14.25], "texture": "#0"} + } + }, + { + "from": [0.5, 2, 1.75], + "to": [5.5, 3, 13.75], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 12, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 12, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 12, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 12], "texture": "#0"} + } + }, + { + "from": [0.5, 0.5, 0.25], + "to": [5.5, 12.5, 1.25], + "rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]}, + "faces": { + "north": {"uv": [9, 0, 14, 12], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 12], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 12], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 12], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 1], "texture": "#0"} + } + }, + { + "from": [0.5, 1, 1.25], + "to": [5.5, 2, 14.25], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 13, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 13, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 13, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 13], "texture": "#0"} + } + }, + { + "from": [0.5, 10.5, 5], + "to": [5.5, 11.5, 10.75], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 5.75, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 5.75, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 5.75, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 5.75], "texture": "#0"} + } + }, + { + "from": [0.5, 3, 2], + "to": [5.5, 4, 13.75], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 11.75, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 11.75, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 11.75, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 11.75], "texture": "#0"} + } + }, + { + "from": [0.5, 5, 2.75], + "to": [5.5, 6, 12.75], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 10, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 10, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 10, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 10], "texture": "#0"} + } + }, + { + "from": [0.5, 6, 3.25], + "to": [5.5, 7, 12.5], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 9.25, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 9.25, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 9.25, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 9.25], "texture": "#0"} + } + }, + { + "from": [0.5, 7, 3.75], + "to": [5.5, 8, 12], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 8.25, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 8.25, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 8.25, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 8.25], "texture": "#0"} + } + }, + { + "from": [0.5, 9, 4.5], + "to": [5.5, 10, 11.25], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 6.75, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 6.75, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 6.75, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 6.75], "texture": "#0"} + } + }, + { + "from": [0.5, 10, 5], + "to": [5.5, 11, 10.75], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 5.75, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 5.75, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 5.75, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 5.75], "texture": "#0"} + } + }, + { + "from": [0.5, 8, 4], + "to": [5.5, 9, 11.5], + "faces": { + "north": {"uv": [9, 0, 14, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 7.5, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 7.5, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 7.5, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 7.5], "texture": "#0"} + } + }, + { + "from": [0.5, 4, 2.5], + "to": [5.5, 5, 13.25], + "faces": { + "north": {"uv": [9, 0, 12, 1], "texture": "#0"}, + "east": {"uv": [0, 0, 10.75, 1], "texture": "#0"}, + "south": {"uv": [5, 0, 7, 1], "texture": "#0"}, + "west": {"uv": [0, 0, 13.75, 1], "texture": "#0"}, + "up": {"uv": [0, 0, 10.75, 2], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 2, 10.75], "texture": "#0"} + } + }, + { + "from": [0.5, -5.5, 13.25], + "to": [5.5, 6.5, 14.25], + "rotation": {"angle": -22.5, "axis": "x", "origin": [0, 0, 0]}, + "faces": { + "north": {"uv": [9, 0, 14, 12], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 12], "texture": "#0"}, + "south": {"uv": [5, 0, 10, 12], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 12], "texture": "#0"}, + "up": {"uv": [0, 0, 1, 5], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 5, 1], "texture": "#0"} + } + }, + { + "from": [1, 4, 5], + "to": [5.5, 13, 11], + "faces": { + "north": {"uv": [0, 0, 4.5, 9], "texture": "#0"}, + "east": {"uv": [0, 0, 6, 9], "texture": "#0"}, + "south": {"uv": [0, 0, 4.5, 9], "texture": "#0"}, + "west": {"uv": [0, 0, 6, 9], "texture": "#0"}, + "up": {"uv": [0, 0, 4.5, 6], "texture": "#0"}, + "down": {"uv": [0, 0, 4.5, 6], "texture": "#missing"} + } + }, + { + "from": [1, 0, 2], + "to": [5.5, 4, 14], + "faces": { + "north": {"uv": [0, 0, 4.5, 4], "texture": "#0"}, + "east": {"uv": [0, 0, 12, 4], "texture": "#0"}, + "south": {"uv": [0, 0, 4.5, 4], "texture": "#0"}, + "west": {"uv": [0, 0, 12, 4], "texture": "#0"}, + "up": {"uv": [0, 0, 4.5, 12], "texture": "#0"}, + "down": {"uv": [0, 0, 4.5, 12], "texture": "#0"} + } + }, + { + "from": [1, 4, 11], + "to": [5.5, 6, 13], + "faces": { + "north": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "east": {"uv": [0, 0, 2, 2], "texture": "#0"}, + "south": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "west": {"uv": [0, 0, 2, 2], "texture": "#0"}, + "up": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "down": {"uv": [0, 0, 4.5, 2], "texture": "#missing"} + } + }, + { + "from": [1, 4, 3], + "to": [5.5, 6, 5], + "faces": { + "north": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "east": {"uv": [0, 0, 2, 2], "texture": "#0"}, + "south": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "west": {"uv": [0, 0, 2, 2], "texture": "#0"}, + "up": {"uv": [0, 0, 4.5, 2], "texture": "#0"}, + "down": {"uv": [0, 0, 4.5, 2], "texture": "#missing"} + } + }, + { + "from": [2, 9, 0], + "to": [4, 11, 0.25], + "rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]}, + "faces": { + "north": {"uv": [3, 1, 5, 3], "texture": "#4"}, + "east": {"uv": [0, 0, 0.25, 2], "texture": "#4"}, + "south": {"uv": [0, 0, 2, 2], "texture": "#missing"}, + "west": {"uv": [0, 0, 0.25, 2], "texture": "#4"}, + "up": {"uv": [0, 0, 2, 0.25], "texture": "#4"}, + "down": {"uv": [0, 0, 2, 0.25], "texture": "#4"} + } + }, + { + "from": [2, 11.45, 6.65], + "to": [2.6, 13.7, 9.15], + "faces": { + "north": {"uv": [0, 0, 0.6, 2.25], "texture": "#4"}, + "east": {"uv": [0, 0, 2.5, 2.25], "texture": "#4"}, + "south": {"uv": [0, 0, 0.6, 2.25], "texture": "#4"}, + "west": {"uv": [0, 0, 2.5, 2.25], "texture": "#4"}, + "up": {"uv": [0, 0, 0.6, 2.5], "texture": "#4"}, + "down": {"uv": [0, 0, 0.6, 2.5], "texture": "#missing"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 12.35109, 6.85], + "to": [3.375, 12.74891, 8.85], + "rotation": {"angle": -45, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 12.35109, 6.85], + "to": [3.375, 12.74891, 8.85], + "rotation": {"angle": -22.5, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 12.35109, 6.85], + "to": [3.375, 12.74891, 8.85], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 12.35109, 6.85], + "to": [3.375, 12.74891, 8.85], + "rotation": {"angle": 22.5, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 12.35109, 6.85], + "to": [3.375, 12.74891, 8.85], + "rotation": {"angle": 45, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 11.55, 7.65109], + "to": [3.375, 13.55, 8.04891], + "rotation": {"angle": -22.5, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 11.55, 7.65109], + "to": [3.375, 13.55, 8.04891], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + }, + { + "name": "hexadecagon", + "from": [2.625, 11.55, 7.65109], + "to": [3.375, 13.55, 8.04891], + "rotation": {"angle": 22.5, "axis": "x", "origin": [3, 12.55, 7.85]}, + "faces": { + "north": {"uv": [5, 7, 6, 8], "texture": "#5"}, + "east": {"uv": [2, 13, 0, 11], "texture": "#5"}, + "south": {"uv": [2, 13, 3, 14], "texture": "#5"}, + "west": {"uv": [0, 0, 1, 1], "texture": "#missing"}, + "up": {"uv": [8, 2, 9, 3], "texture": "#5"}, + "down": {"uv": [3, 4, 4, 5], "texture": "#5"} + } + } + ], + "display": { + "fixed": { + "rotation": [0, 90, 0] + } + }, + "groups": [ + { + "name": "Rad", + "origin": [8, 8, 8], + "color": 0, + "children": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + { + "name": "Speichen", + "origin": [8, 10, 8], + "color": 0, + "children": [16, 17, 18, 19, 20, 21, 22, 23] + }, + { + "name": "Mittelteil", + "origin": [8, 8, 8], + "color": 0, + "children": [24, 25, 26, 27, 28, 29, 30, 31] + }, + 32, + 33, + 34 + ] + }, + { + "name": "Aufhängung1", + "origin": [0, 0, 0], + "color": 0, + "children": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48] + }, + { + "name": "Aufhängung2", + "origin": [0, 0, 0], + "color": 0, + "children": [49, 50, 51, 52] + }, + 53, + 54, + { + "name": "hexadecagon", + "origin": [8, 8, 8], + "color": 0, + "children": [55, 56, 57, 58, 59, 60, 61, 62] + } + ] } \ No newline at end of file diff --git a/src/main/resources/assets/modchest/models/item/denk_mal_item.json b/src/main/resources/assets/modchest/models/item/denk_mal_item.json new file mode 100644 index 0000000..bad0b9f --- /dev/null +++ b/src/main/resources/assets/modchest/models/item/denk_mal_item.json @@ -0,0 +1,218 @@ +{ + "credit": "Made with Blockbench", + "textures": { + "1": "modchest:item/denk_mal_item" + }, + "elements": [ + { + "from": [7, 0, 8], + "to": [8, 9, 9], + "faces": { + "north": {"uv": [0, 0, 1, 9], "texture": "#1"}, + "east": {"uv": [1, 0, 2, 9], "texture": "#1"}, + "south": {"uv": [2, 0, 3, 9], "texture": "#1"}, + "west": {"uv": [3, 0, 4, 9], "texture": "#1"}, + "up": {"uv": [14, 6, 13, 5], "texture": "#1"}, + "down": {"uv": [14, 6, 13, 7], "texture": "#1"} + } + }, + { + "from": [7, 12, 8], + "to": [8, 13, 9], + "faces": { + "north": {"uv": [13, 7, 14, 8], "texture": "#1"}, + "east": {"uv": [13, 8, 14, 9], "texture": "#1"}, + "south": {"uv": [13, 9, 14, 10], "texture": "#1"}, + "west": {"uv": [13, 10, 14, 11], "texture": "#1"}, + "up": {"uv": [14, 12, 13, 11], "texture": "#1"}, + "down": {"uv": [13, 13, 12, 14], "texture": "#1"} + } + }, + { + "from": [7, 7, 9], + "to": [8, 10, 10], + "faces": { + "north": {"uv": [9, 0, 10, 3], "texture": "#1"}, + "east": {"uv": [1, 9, 2, 12], "texture": "#1"}, + "south": {"uv": [2, 9, 3, 12], "texture": "#1"}, + "west": {"uv": [3, 9, 4, 12], "texture": "#1"}, + "up": {"uv": [14, 13, 13, 12], "texture": "#1"}, + "down": {"uv": [14, 13, 13, 14], "texture": "#1"} + } + }, + { + "from": [7, 7, 7], + "to": [8, 10, 8], + "faces": { + "north": {"uv": [9, 3, 10, 6], "texture": "#1"}, + "east": {"uv": [9, 6, 10, 9], "texture": "#1"}, + "south": {"uv": [9, 9, 10, 12], "texture": "#1"}, + "west": {"uv": [10, 0, 11, 3], "texture": "#1"}, + "up": {"uv": [1, 15, 0, 14], "texture": "#1"}, + "down": {"uv": [15, 0, 14, 1], "texture": "#1"} + } + }, + { + "from": [8, 7, 8], + "to": [9, 10, 9], + "faces": { + "north": {"uv": [10, 3, 11, 6], "texture": "#1"}, + "east": {"uv": [10, 6, 11, 9], "texture": "#1"}, + "south": {"uv": [10, 9, 11, 12], "texture": "#1"}, + "west": {"uv": [11, 0, 12, 3], "texture": "#1"}, + "up": {"uv": [6, 15, 5, 14], "texture": "#1"}, + "down": {"uv": [15, 5, 14, 6], "texture": "#1"} + } + }, + { + "from": [8, 0, 8], + "to": [9, 2, 9], + "faces": { + "north": {"uv": [1, 12, 2, 14], "texture": "#1"}, + "east": {"uv": [2, 12, 3, 14], "texture": "#1"}, + "south": {"uv": [3, 12, 4, 14], "texture": "#1"}, + "west": {"uv": [12, 3, 13, 5], "texture": "#1"}, + "up": {"uv": [8, 15, 7, 14], "texture": "#1"}, + "down": {"uv": [15, 7, 14, 8], "texture": "#1"} + } + }, + { + "from": [6, 0, 8], + "to": [7, 2, 9], + "faces": { + "north": {"uv": [4, 12, 5, 14], "texture": "#1"}, + "east": {"uv": [5, 12, 6, 14], "texture": "#1"}, + "south": {"uv": [12, 5, 13, 7], "texture": "#1"}, + "west": {"uv": [6, 12, 7, 14], "texture": "#1"}, + "up": {"uv": [9, 15, 8, 14], "texture": "#1"}, + "down": {"uv": [15, 8, 14, 9], "texture": "#1"} + } + }, + { + "from": [7, 0, 9], + "to": [8, 2, 10], + "faces": { + "north": {"uv": [7, 12, 8, 14], "texture": "#1"}, + "east": {"uv": [12, 7, 13, 9], "texture": "#1"}, + "south": {"uv": [8, 12, 9, 14], "texture": "#1"}, + "west": {"uv": [9, 12, 10, 14], "texture": "#1"}, + "up": {"uv": [10, 15, 9, 14], "texture": "#1"}, + "down": {"uv": [15, 9, 14, 10], "texture": "#1"} + } + }, + { + "from": [7, 0, 7], + "to": [8, 2, 8], + "faces": { + "north": {"uv": [12, 9, 13, 11], "texture": "#1"}, + "east": {"uv": [10, 12, 11, 14], "texture": "#1"}, + "south": {"uv": [11, 12, 12, 14], "texture": "#1"}, + "west": {"uv": [12, 11, 13, 13], "texture": "#1"}, + "up": {"uv": [11, 15, 10, 14], "texture": "#1"}, + "down": {"uv": [15, 10, 14, 11], "texture": "#1"} + } + }, + { + "from": [6, 7, 8], + "to": [7, 10, 9], + "faces": { + "north": {"uv": [11, 3, 12, 6], "texture": "#1"}, + "east": {"uv": [11, 6, 12, 9], "texture": "#1"}, + "south": {"uv": [11, 9, 12, 12], "texture": "#1"}, + "west": {"uv": [12, 0, 13, 3], "texture": "#1"}, + "up": {"uv": [7, 15, 6, 14], "texture": "#1"}, + "down": {"uv": [15, 6, 14, 7], "texture": "#1"} + } + }, + { + "from": [7, 8, 6], + "to": [8, 12, 7], + "faces": { + "north": {"uv": [4, 0, 5, 4], "texture": "#1"}, + "east": {"uv": [4, 4, 5, 8], "texture": "#1"}, + "south": {"uv": [5, 0, 6, 4], "texture": "#1"}, + "west": {"uv": [5, 4, 6, 8], "texture": "#1"}, + "up": {"uv": [2, 15, 1, 14], "texture": "#1"}, + "down": {"uv": [15, 1, 14, 2], "texture": "#1"} + } + }, + { + "from": [7, 8, 10], + "to": [8, 12, 11], + "faces": { + "north": {"uv": [6, 0, 7, 4], "texture": "#1"}, + "east": {"uv": [6, 4, 7, 8], "texture": "#1"}, + "south": {"uv": [7, 0, 8, 4], "texture": "#1"}, + "west": {"uv": [7, 4, 8, 8], "texture": "#1"}, + "up": {"uv": [3, 15, 2, 14], "texture": "#1"}, + "down": {"uv": [15, 2, 14, 3], "texture": "#1"} + } + }, + { + "from": [9, 8, 8], + "to": [10, 12, 9], + "faces": { + "north": {"uv": [8, 0, 9, 4], "texture": "#1"}, + "east": {"uv": [4, 8, 5, 12], "texture": "#1"}, + "south": {"uv": [8, 4, 9, 8], "texture": "#1"}, + "west": {"uv": [5, 8, 6, 12], "texture": "#1"}, + "up": {"uv": [4, 15, 3, 14], "texture": "#1"}, + "down": {"uv": [15, 3, 14, 4], "texture": "#1"} + } + }, + { + "from": [5, 8, 8], + "to": [6, 12, 9], + "faces": { + "north": {"uv": [6, 8, 7, 12], "texture": "#1"}, + "east": {"uv": [7, 8, 8, 12], "texture": "#1"}, + "south": {"uv": [8, 8, 9, 12], "texture": "#1"}, + "west": {"uv": [0, 9, 1, 13], "texture": "#1"}, + "up": {"uv": [5, 15, 4, 14], "texture": "#1"}, + "down": {"uv": [15, 4, 14, 5], "texture": "#1"} + } + }, + { + "from": [7.25, 9, 8.25], + "to": [7.75, 9.5, 8.75], + "faces": { + "north": {"uv": [0, 13, 1, 14], "texture": "#1"}, + "east": {"uv": [13, 0, 14, 1], "texture": "#1"}, + "south": {"uv": [13, 1, 14, 2], "texture": "#1"}, + "west": {"uv": [13, 2, 14, 3], "texture": "#1"}, + "up": {"uv": [14, 4, 13, 3], "texture": "#1"}, + "down": {"uv": [14, 4, 13, 5], "texture": "#1"} + } + } + ], + "display": { + "thirdperson_righthand": { + "translation": [0.5, 5, 0.5] + }, + "thirdperson_lefthand": { + "translation": [-0.5, 5, 0.5] + }, + "firstperson_righthand": { + "rotation": [-13, 26, 0], + "translation": [1.25, 6, 0] + }, + "firstperson_lefthand": { + "rotation": [-13, 20, 0], + "translation": [1.25, 6, 0] + }, + "ground": { + "rotation": [26, 0, 0], + "translation": [0, 3.25, 0] + }, + "gui": { + "rotation": [0, 0, -34], + "translation": [1.25, 1, 0] + }, + "head": { + "translation": [0, 13.75, 0] + }, + "fixed": { + "translation": [0, 0.75, -0.5] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/modchest/textures/item/denk_mal_item.png b/src/main/resources/assets/modchest/textures/item/denk_mal_item.png new file mode 100644 index 0000000..6203f7a Binary files /dev/null and b/src/main/resources/assets/modchest/textures/item/denk_mal_item.png differ diff --git a/src/main/resources/data/modchest/recipes/denk_mal_item.json b/src/main/resources/data/modchest/recipes/denk_mal_item.json new file mode 100644 index 0000000..367267f --- /dev/null +++ b/src/main/resources/data/modchest/recipes/denk_mal_item.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "buliding", + "key": { + "X": { + "item": "minecraft:emerald" + }, + "H": { + "item": "minecraft:amethyst_cluster" + }, + "M": { + "item": "minecraft:stone" + }, + "I": { + "item": "minecraft:stick" + } + }, + "pattern": [ + "HXH", + " I ", + "MIM" + ], + "result": { + "item": "modchest:denk_mal_item" + } +} \ No newline at end of file