added thick end rod

This commit is contained in:
J-onasJones 2024-10-06 14:35:57 +02:00
parent 3962ff157f
commit 2c0c31a964
10 changed files with 141 additions and 1 deletions

View file

@ -1,5 +1,6 @@
package me.jonasjones.nec.block;
import me.jonasjones.nec.block.util.ThickEndRodBlock;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.minecraft.block.*;
import net.minecraft.item.BlockItem;
@ -19,7 +20,8 @@ public class ModBlocks {
public static Block DEEPSLATE_DIAMOND_ORE_ORE;
public static Block JAVA_BLOCK;
public static Block POCKET_BLOCK;
public static Block FLETCHING_STAIRS_BLOCK = null;
public static Block FLETCHING_STAIRS_BLOCK;
public static Block THICK_END_ROD;
public static BlockItem GUN_BLOCK_ITEM;
public static Block GUN_BLOCK_BLOCK;
public static BlockItem BLAZE_BLOCK_ITEM;
@ -36,6 +38,8 @@ public class ModBlocks {
public static Block POCKET_BLOCK_BLOCK;
public static BlockItem FLETCHING_STAIRS_TIEM;
public static Block FLETCHING_STAIRS_BLOCK_BLOCK;
public static BlockItem THICK_END_ROD_ITEM;
public static Block THICK_END_ROD_BLOCK;
public static void register() {
BLAZE_BLOCK = new Block(FabricBlockSettings.copyOf(Blocks.DIAMOND_BLOCK).strength(5.0F));
@ -69,5 +73,9 @@ public class ModBlocks {
FLETCHING_STAIRS_BLOCK = new StairsBlock(GREEEN_BIRCH_LOG_BLOCK.getDefaultState(), FabricBlockSettings.copyOf(Blocks.OAK_STAIRS).strength(1.0F));
FLETCHING_STAIRS_BLOCK_BLOCK = Registry.register(BLOCK, Identifier.of(MOD_ID, "fletching_stairs"), FLETCHING_STAIRS_BLOCK);
FLETCHING_STAIRS_TIEM = Registry.register(ITEM, Identifier.of(MOD_ID, "fletching_stairs"), new BlockItem(FLETCHING_STAIRS_BLOCK, new Item.Settings()));
THICK_END_ROD = new ThickEndRodBlock(FabricBlockSettings.copyOf(Blocks.END_ROD).strength(0.0F));
THICK_END_ROD_BLOCK = Registry.register(BLOCK, Identifier.of(MOD_ID, "thick_end_rod"), THICK_END_ROD);
THICK_END_ROD_ITEM = Registry.register(ITEM, Identifier.of(MOD_ID, "thick_end_rod"), new BlockItem(THICK_END_ROD, new Item.Settings()));
}
}

View file

@ -0,0 +1,36 @@
package me.jonasjones.nec.block.util;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.EndRodBlock;
import net.minecraft.block.ShapeContext;
import net.minecraft.particle.ParticleTypes;
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;
import net.minecraft.world.World;
public class ThickEndRodBlock extends EndRodBlock {
public ThickEndRodBlock(Settings settings) {
super(settings);
}
protected static final VoxelShape Y_SHAPE = Block.createCuboidShape(5.0, 0.0, 5.0, 11.0, 16.0, 11.0);
protected static final VoxelShape Z_SHAPE = Block.createCuboidShape(5.0, 5.0, 0.0, 11.0, 11.0, 16.0);
protected static final VoxelShape X_SHAPE = Block.createCuboidShape(0.0, 5.0, 5.0, 16.0, 11.0, 11.0);
@Override
protected VoxelShape getOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) {
switch (((Direction)state.get(FACING)).getAxis()) {
case X:
default:
return X_SHAPE;
case Z:
return Z_SHAPE;
case Y:
return Y_SHAPE;
}
}
}

View file

@ -46,6 +46,7 @@ public class ModRegistries {
entries.add(new ItemStack(ModBlocks.JAVA_BLOCK));
entries.add(new ItemStack(ModBlocks.POCKET_BLOCK));
entries.add(new ItemStack(ModBlocks.FLETCHING_STAIRS_BLOCK));
entries.add(new ItemStack(ModBlocks.THICK_END_ROD));
entries.add(new ItemStack(ModItems.STEEL_ITEM));
entries.add(new ItemStack(ModItems.NEGATIVE_FLINT_ITEM));

View file

@ -0,0 +1,30 @@
{
"variants": {
"facing=down": {
"model": "nec:block/thick_end_rod",
"x": 180
},
"facing=east": {
"model": "nec:block/thick_end_rod",
"x": 90,
"y": 90
},
"facing=north": {
"model": "nec:block/thick_end_rod",
"x": 90
},
"facing=south": {
"model": "nec:block/thick_end_rod",
"x": 90,
"y": 180
},
"facing=up": {
"model": "nec:block/thick_end_rod"
},
"facing=west": {
"model": "nec:block/thick_end_rod",
"x": 90,
"y": 270
}
}
}

View file

@ -26,6 +26,7 @@
"block.nec.gun_block": "Schießblock",
"block.nec.java_block": "Javablock",
"block.nec.pocket_block": "Pocketblock",
"block.nec.thick_end_rod": "Dicker Endstab",
"item.nec.ak_47": "AK-47",
"item.nec.chainmail": "Kettenbrief",
"item.nec.dirt_sword": "Erdschwert",

View file

@ -26,6 +26,7 @@
"block.nec.gun_block": "Gun Block",
"block.nec.java_block": "Java Block",
"block.nec.pocket_block": "Pocket Block",
"block.nec.thick_end_rod": "Thick End Rod",
"item.nec.ak_47": "AK-47",
"item.nec.chainmail": "Chainmail",
"item.nec.dirt_sword": "Dirt Sword",

View file

@ -0,0 +1,41 @@
{
"parent": "block/block",
"textures": {
"0": "nec:block/thick_end_rod",
"particle": "nec:block/thick_end_rod"
},
"elements": [
{
"from": [4, 0, 4],
"to": [12, 1, 12],
"faces": {
"north": {"uv": [2, 6, 6, 7], "texture": "#0"},
"east": {"uv": [2, 6, 6, 7], "texture": "#0"},
"south": {"uv": [2, 6, 6, 7], "texture": "#0"},
"west": {"uv": [2, 6, 6, 7], "texture": "#0"},
"up": {"uv": [2, 2, 6, 6], "texture": "#0"},
"down": {"uv": [6, 8, 2, 7], "texture": "#0", "cullface": "down"}
}
},
{
"from": [5, 1, 5],
"to": [11, 16, 11],
"faces": {
"north": {"uv": [0, 0, 2, 15], "texture": "#0"},
"east": {"uv": [0, 0, 2, 15], "texture": "#0"},
"south": {"uv": [0, 0, 2, 15], "texture": "#0"},
"west": {"uv": [0, 0, 2, 15], "texture": "#0"},
"up": {"uv": [2, 0, 4, 2], "texture": "#0", "cullface": "up"}
}
}
],
"display": {
"thirdperson_righthand": {
"scale": [0.375, 0.375, 0.375]
},
"head": {
"rotation": [-60, 0, 0],
"translation": [0, 5, -9]
}
}
}

View file

@ -0,0 +1,3 @@
{
"parent": "nec:block/thick_end_rod"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 B

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "nec:thick_end_rod"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}