update textures #3 + item code cleanup

This commit is contained in:
Sen 2025-07-19 23:55:20 +02:00
parent 3c7f2cf874
commit 3e58287efa
Signed by: sen
GPG key ID: 3AC50A6F47D1B722
189 changed files with 1649 additions and 2258 deletions

View file

@ -64,7 +64,7 @@ public abstract class ReorderRegistry {
PLACE_LAST.add(Blocks.soul_fire);
PLACE_LAST.add(Blocks.black_fire);
// PLACE_LAST.add(Blocks.wire);
PLACE_LAST.add(Blocks.wheat);
PLACE_LAST.add(Blocks.wheats);
PLACE_LAST.add(Blocks.ladder);
PLACE_LAST.add(Blocks.rail);
PLACE_LAST.add(Blocks.lever);
@ -78,7 +78,7 @@ public abstract class ReorderRegistry {
PLACE_LAST.add(Blocks.trapdoor);
PLACE_LAST.add(Blocks.vine);
PLACE_LAST.add(Blocks.waterlily);
PLACE_LAST.add(Blocks.soul_wart);
PLACE_LAST.add(Blocks.soul_warts);
PLACE_LAST.add(Blocks.piston);
PLACE_LAST.add(Blocks.sticky_piston);
PLACE_LAST.add(Blocks.tripwire_hook);
@ -86,8 +86,8 @@ public abstract class ReorderRegistry {
for(BlockFlowerPot block : BlockFlowerPot.POTS) {
PLACE_LAST.add(block);
}
PLACE_LAST.add(Blocks.carrot);
PLACE_LAST.add(Blocks.potato);
PLACE_LAST.add(Blocks.carrots);
PLACE_LAST.add(Blocks.potatoes);
PLACE_LAST.add(Blocks.wooden_button);
for(BlockAnvil block : BlockAnvil.ANVILS) {
PLACE_LAST.add(block); // becomes relevant with asynchronous placement

View file

@ -47,7 +47,6 @@ import common.block.foliage.BlockLeaves;
import common.block.foliage.BlockLilyPad;
import common.block.foliage.BlockLog;
import common.block.foliage.BlockPotato;
import common.block.foliage.BlockPumpkin;
import common.block.foliage.BlockReed;
import common.block.foliage.BlockStem;
import common.block.foliage.BlockVine;
@ -664,14 +663,14 @@ public abstract class Converter {
mapBlock(Blocks.diamond_ore, 56);
mapBlock(Blocks.diamond_block, 57);
mapBlock(Blocks.workbench, 58);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 0), 59);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 1), 59, 1);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 2), 59, 2);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 3), 59, 3);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 4), 59, 4);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 5), 59, 5);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 6), 59, 6);
mapBlock(Blocks.wheat.getState().withProperty(BlockCrops.AGE, 7), 59, 7);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 0), 59);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 1), 59, 1);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 2), 59, 2);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 3), 59, 3);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 4), 59, 4);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 5), 59, 5);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 6), 59, 6);
mapBlock(Blocks.wheats.getState().withProperty(BlockCrops.AGE, 7), 59, 7);
mapBlock(Blocks.farmland.getState().withProperty(BlockFarmland.MOISTURE, 0), 60, 0, 8);
mapBlock(Blocks.farmland.getState().withProperty(BlockFarmland.MOISTURE, 1), 60, 1, 9);
mapBlock(Blocks.farmland.getState().withProperty(BlockFarmland.MOISTURE, 2), 60, 2, 10);
@ -810,18 +809,12 @@ public abstract class Converter {
mapBlock(Blocks.reeds.getState().withProperty(BlockReed.AGE, 15), 83, 15);
mapBlock(Blocks.spruce_planks, 84);
mapBlock(Blocks.oak_fence, 85);
mapBlock(Blocks.pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.SOUTH), 86, 0, 4, 8, 12);
mapBlock(Blocks.pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.WEST), 86, 1, 5, 9, 13);
mapBlock(Blocks.pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.NORTH), 86, 2, 6, 10, 14);
mapBlock(Blocks.pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.EAST), 86, 3, 7, 11, 15);
mapBlock(Blocks.pumpkin, 86);
mapBlock(Blocks.hellrock, 87);
mapBlock(Blocks.soul_sand, 88);
mapBlock(Blocks.glowstone, 89);
mapBlock(Blocks.purple_glass_pane, 90);
mapBlock(Blocks.lit_pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.SOUTH), 91, 0, 4, 8, 12);
mapBlock(Blocks.lit_pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.WEST), 91, 1, 5, 9, 13);
mapBlock(Blocks.lit_pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.NORTH), 91, 2, 6, 10, 14);
mapBlock(Blocks.lit_pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.EAST), 91, 3, 7, 11, 15);
mapBlock(Blocks.lit_lamp, 91);
mapBlock(Blocks.cake.getState().withProperty(BlockCake.BITES, 0), 92);
mapBlock(Blocks.cake.getState().withProperty(BlockCake.BITES, 1), 92, 1);
mapBlock(Blocks.cake.getState().withProperty(BlockCake.BITES, 2), 92, 2);
@ -965,10 +958,10 @@ public abstract class Converter {
mapBlock(Blocks.blood_brick_stairs.getState().withProperty(BlockStairs.FACING, Facing.WEST).withProperty(BlockStairs.HALF, EnumHalf.TOP), 114, 5, 13);
mapBlock(Blocks.blood_brick_stairs.getState().withProperty(BlockStairs.FACING, Facing.SOUTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 114, 6, 14);
mapBlock(Blocks.blood_brick_stairs.getState().withProperty(BlockStairs.FACING, Facing.NORTH).withProperty(BlockStairs.HALF, EnumHalf.TOP), 114, 7, 15);
mapBlock(Blocks.soul_wart.getState().withProperty(BlockWart.AGE, 0), 115);
mapBlock(Blocks.soul_wart.getState().withProperty(BlockWart.AGE, 1), 115, 1);
mapBlock(Blocks.soul_wart.getState().withProperty(BlockWart.AGE, 2), 115, 2);
mapBlock(Blocks.soul_wart.getState().withProperty(BlockWart.AGE, 3), 115, 3);
mapBlock(Blocks.soul_warts.getState().withProperty(BlockWart.AGE, 0), 115);
mapBlock(Blocks.soul_warts.getState().withProperty(BlockWart.AGE, 1), 115, 1);
mapBlock(Blocks.soul_warts.getState().withProperty(BlockWart.AGE, 2), 115, 2);
mapBlock(Blocks.soul_warts.getState().withProperty(BlockWart.AGE, 3), 115, 3);
mapBlock(Blocks.enchanting_table, 116);
mapBlock(Blocks.brewing_stand.getState().withProperty(BlockBrewingStand.HAS_BOTTLE_0, false).withProperty(BlockBrewingStand.HAS_BOTTLE_1, false).withProperty(BlockBrewingStand.HAS_BOTTLE_2, false), 117, 0, 8);
mapBlock(Blocks.brewing_stand.getState().withProperty(BlockBrewingStand.HAS_BOTTLE_0, true).withProperty(BlockBrewingStand.HAS_BOTTLE_1, false).withProperty(BlockBrewingStand.HAS_BOTTLE_2, false), 117, 1, 9);
@ -1099,22 +1092,22 @@ public abstract class Converter {
mapBlock(Blocks.cobblestone_wall, 139);
mapBlock(Blocks.mossy_cobblestone_wall, 139, 1);
mapBlock(Blocks.flowerpot, 140);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 0), 141);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 1), 141, 1);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 2), 141, 2);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 3), 141, 3);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 4), 141, 4);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 5), 141, 5);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 6), 141, 6);
mapBlock(Blocks.carrot.getState().withProperty(BlockCarrot.AGE, 7), 141, 7);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 0), 142);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 1), 142, 1);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 2), 142, 2);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 3), 142, 3);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 4), 142, 4);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 5), 142, 5);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 6), 142, 6);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 7), 142, 7);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 0), 141);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 1), 141, 1);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 2), 141, 2);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 3), 141, 3);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 4), 141, 4);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 5), 141, 5);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 6), 141, 6);
mapBlock(Blocks.carrots.getState().withProperty(BlockCarrot.AGE, 7), 141, 7);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 0), 142);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 1), 142, 1);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 2), 142, 2);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 3), 142, 3);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 4), 142, 4);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 5), 142, 5);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 6), 142, 6);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 7), 142, 7);
mapBlock(Blocks.wooden_button.getState().withProperty(BlockButton.FACING, Facing.DOWN).withProperty(BlockButton.POWERED, false), 143, 0);
mapBlock(Blocks.wooden_button.getState().withProperty(BlockButton.FACING, Facing.EAST).withProperty(BlockButton.POWERED, false), 143, 1);
mapBlock(Blocks.wooden_button.getState().withProperty(BlockButton.FACING, Facing.WEST).withProperty(BlockButton.POWERED, false), 143, 2);
@ -1434,14 +1427,14 @@ public abstract class Converter {
mapBlock(Blocks.quartz_slab.getState().withProperty(BlockSlab.FACING, Facing.UP),
205, 8);
mapBlock(Blocks.stonebrick, 206);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 0), 207);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 1), 207, 1);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 2), 207, 2);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 3), 207, 3);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 4), 207, 4);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 5), 207, 5);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 6), 207, 6);
mapBlock(Blocks.potato.getState().withProperty(BlockPotato.AGE, 7), 207, 7);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 0), 207);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 1), 207, 1);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 2), 207, 2);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 3), 207, 3);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 4), 207, 4);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 5), 207, 5);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 6), 207, 6);
mapBlock(Blocks.potatoes.getState().withProperty(BlockPotato.AGE, 7), 207, 7);
mapBlock(Blocks.farmland, 208);
mapBlock(Blocks.black_glass, 209);
mapBlock(Blocks.obsidian, 210);

View file

@ -37,7 +37,6 @@ import common.entity.types.EntityLiving;
import common.init.Blocks;
import common.init.SoundEvent;
import common.init.UniverseRegistry;
import common.item.block.ItemDoor;
import common.log.Log;
import common.network.IPlayer;
import common.network.Packet;
@ -2033,7 +2032,7 @@ public final class WorldServer extends AWorldServer {
State newState = block.getState();
if(newState.getBlock() instanceof BlockDoor) {
if(newState.getValue(BlockDoor.HALF) == BlockDoor.EnumDoorHalf.LOWER) {
ItemDoor.placeDoor(this, pos, newState.getValue(BlockDoor.FACING)/* .rotateYCCW() */, newState.getBlock(), false);
BlockDoor.placeDoor(this, pos, newState.getValue(BlockDoor.FACING)/* .rotateYCCW() */, newState.getBlock(), false);
}
return true;
}

View file

@ -40,8 +40,8 @@ public abstract class LootConstants {
new RngLoot(Items.gold_ingot, 1, 3, 5), new RngLoot(Items.charged_powder, 4, 9, 5),
new RngLoot(Items.lapis_lazuli, 4, 9, 5), new RngLoot(Items.diamond, 1, 2, 3),
new RngLoot(Items.coal, 3, 8, 10), new RngLoot(Items.bread, 1, 3, 15), new RngLoot(Items.iron_pickaxe, 1, 1, 1),
new RngLoot(Items.rail, 4, 8, 1), new RngLoot(Items.melon_stem, 2, 4, 10),
new RngLoot(Items.pumpkin_stem, 2, 4, 10), new RngLoot(Items.saddle, 1, 1, 3), new RngLoot(Items.iron_horse_armor, 1, 1, 1));
new RngLoot(Items.rail, 4, 8, 1), new RngLoot(Items.melon_seed, 2, 4, 10),
new RngLoot(Items.pumpkin_seed, 2, 4, 10), new RngLoot(Items.saddle, 1, 1, 3), new RngLoot(Items.iron_horse_armor, 1, 1, 1));
public static final WeightedList<RngLoot> HELL_FORTRESS = new WeightedList(new RngLoot(Items.diamond, 1, 3, 5),
new RngLoot(Items.iron_ingot, 1, 5, 5), new RngLoot(Items.gold_ingot, 1, 3, 15), new RngLoot(Items.gold_sword, 1, 1, 5),
new RngLoot(Items.gold_chestplate, 1, 1, 5), new RngLoot(Items.lighter, 1, 1, 5),
@ -49,7 +49,7 @@ public abstract class LootConstants {
new RngLoot(Items.iron_horse_armor, 1, 1, 5), new RngLoot(Items.diamond_horse_armor, 1, 1, 3),
new RngLoot(Items.obsidian, 2, 4, 2));
public static final WeightedList<RngLoot> DUNGEON_CHEST = new WeightedList(new RngLoot(Items.saddle, 1, 1, 11),
new RngLoot(Items.iron_ingot, 1, 4, 11), new RngLoot(Items.bread, 1, 1, 11), new RngLoot(Items.wheats, 1, 4, 11),
new RngLoot(Items.iron_ingot, 1, 4, 11), new RngLoot(Items.bread, 1, 1, 11), new RngLoot(Items.wheat, 1, 4, 11),
new RngLoot(Items.gunpowder, 1, 4, 11), new RngLoot(Items.string, 1, 4, 11), new RngLoot(Items.bucket, 1, 1, 11),
new RngLoot(Items.golden_apple, 1, 1, 1), new RngLoot(Items.charged_powder, 1, 4, 11), new RngLoot(Items.aluminium_ingot, 1, 1, 5),
new RngLoot(Items.copper_ingot, 1, 1, 5), new RngLoot(Items.name_tag, 1, 1, 11), new RngLoot(Items.gold_horse_armor, 1, 1, 3),

View file

@ -1,10 +1,8 @@
package server.worldgen.foliage;
import common.block.foliage.BlockPumpkin;
import common.init.Blocks;
import common.rng.Random;
import common.util.BlockPos;
import common.util.Facing;
import server.world.WorldServer;
import server.worldgen.FeatureGenerator;
@ -18,7 +16,7 @@ public class WorldGenPumpkin extends FeatureGenerator
if (worldIn.isAirBlock(blockpos) && worldIn.getState(blockpos.down()).getBlock() == Blocks.grass && Blocks.pumpkin.canPlaceBlockAt(worldIn, blockpos))
{
worldIn.setState(blockpos, Blocks.pumpkin.getState().withProperty(BlockPumpkin.FACING, Facing.Plane.HORIZONTAL.random(rand)), 2);
worldIn.setState(blockpos, Blocks.pumpkin.getState(), 2);
}
}

View file

@ -912,8 +912,8 @@ public class StructureBridge
this.setBlockState(worldIn, i2, 8, 5, 10, structureBoundingBoxIn);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 3, 4, 4, 4, 4, 8, Blocks.soul_sand.getState(), Blocks.soul_sand.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 8, 4, 4, 9, 4, 8, Blocks.soul_sand.getState(), Blocks.soul_sand.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 3, 5, 4, 4, 5, 8, Blocks.soul_wart.getState(), Blocks.soul_wart.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 8, 5, 4, 9, 5, 8, Blocks.soul_wart.getState(), Blocks.soul_wart.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 3, 5, 4, 4, 5, 8, Blocks.soul_warts.getState(), Blocks.soul_warts.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 8, 5, 4, 9, 5, 8, Blocks.soul_warts.getState(), Blocks.soul_warts.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 2, 0, 8, 2, 12, Blocks.blood_brick.getState(), Blocks.blood_brick.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 0, 2, 4, 12, 2, 8, Blocks.blood_brick.getState(), Blocks.blood_brick.getState(), false);
this.fillWithBlocks(worldIn, structureBoundingBoxIn, 4, 0, 0, 8, 1, 3, Blocks.blood_brick.getState(), Blocks.blood_brick.getState(), false);

View file

@ -13,7 +13,6 @@ import common.block.tech.BlockPistonBase;
import common.block.tech.BlockRail;
import common.init.Blocks;
import common.item.RngLoot;
import common.item.block.ItemDoor;
import common.rng.Random;
import common.rng.WeightedList;
import common.tags.TagObject;
@ -748,7 +747,7 @@ public abstract class StructureComponent
if (boundingBoxIn.isVecInside(blockpos))
{
ItemDoor.placeDoor(worldIn, blockpos, state.getValue(BlockDoor.FACING).rotateYCCW(), Blocks.oak_door, true);
BlockDoor.placeDoor(worldIn, blockpos, state.getValue(BlockDoor.FACING).rotateYCCW(), Blocks.oak_door, true);
}
}

View file

@ -415,10 +415,10 @@ public class StructureVillage
protected void readTags(TagObject tagCompound)
{
super.readTags(tagCompound);
this.cropTypeA = BlockRegistry.byName(tagCompound.getString("CA")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeB = BlockRegistry.byName(tagCompound.getString("CB")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeC = BlockRegistry.byName(tagCompound.getString("CC")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeD = BlockRegistry.byName(tagCompound.getString("CD")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeA = BlockRegistry.byName(tagCompound.getString("CA")) instanceof BlockCrops crops ? crops : Blocks.wheats;
this.cropTypeB = BlockRegistry.byName(tagCompound.getString("CB")) instanceof BlockCrops crops ? crops : Blocks.wheats;
this.cropTypeC = BlockRegistry.byName(tagCompound.getString("CC")) instanceof BlockCrops crops ? crops : Blocks.wheats;
this.cropTypeD = BlockRegistry.byName(tagCompound.getString("CD")) instanceof BlockCrops crops ? crops : Blocks.wheats;
}
private BlockCrops func_151559_a(Random rand)
@ -426,13 +426,13 @@ public class StructureVillage
switch (rand.zrange(5))
{
case 0:
return Blocks.carrot;
return Blocks.carrots;
case 1:
return Blocks.potato;
return Blocks.potatoes;
default:
return Blocks.wheat;
return Blocks.wheats;
}
}
@ -522,8 +522,8 @@ public class StructureVillage
protected void readTags(TagObject tagCompound)
{
super.readTags(tagCompound);
this.cropTypeA = BlockRegistry.byName(tagCompound.getString("CA")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeB = BlockRegistry.byName(tagCompound.getString("CB")) instanceof BlockCrops crops ? crops : Blocks.wheat;
this.cropTypeA = BlockRegistry.byName(tagCompound.getString("CA")) instanceof BlockCrops crops ? crops : Blocks.wheats;
this.cropTypeB = BlockRegistry.byName(tagCompound.getString("CB")) instanceof BlockCrops crops ? crops : Blocks.wheats;
}
private BlockCrops func_151560_a(Random rand)
@ -531,13 +531,13 @@ public class StructureVillage
switch (rand.zrange(5))
{
case 0:
return Blocks.carrot;
return Blocks.carrots;
case 1:
return Blocks.potato;
return Blocks.potatoes;
default:
return Blocks.wheat;
return Blocks.wheats;
}
}