public override void PlaceBlock(Level world, Player player, BlockCoordinates blockCoordinates, BlockFace face, Vector3 faceCoords) { Block block = world.GetBlock(blockCoordinates); if (block is Grass || (block is Dirt && block.Metadata != 1) || block is GrassPath) { Farmland farmland = new Farmland { Coordinates = blockCoordinates, Metadata = 0 }; if (farmland.FindWater(world, blockCoordinates, new List <BlockCoordinates>(), 0)) { Log.Warn("Found water source"); farmland.Metadata = 7; } world.SetBlock(farmland); } else if (block is Dirt && block.Metadata == 1) { Dirt dirt = new Dirt { Coordinates = blockCoordinates }; world.SetBlock(dirt); } }
public override void PlaceBlock(Level world, Player player, BlockCoordinates blockCoordinates, BlockFace face, Vector3 faceCoords) { Block block = world.GetBlock(blockCoordinates); if (block is Grass || (block is Dirt normalDirt && normalDirt.DirtType == "normal") || block is GrassPath) { var farmland = new Farmland { Coordinates = blockCoordinates, }; if (farmland.FindWater(world, blockCoordinates, new List <BlockCoordinates>(), 0)) { Log.Warn("Found water source"); farmland.MoisturizedAmount = 7; } world.SetBlock(farmland); player.Inventory.DamageItemInHand(ItemDamageReason.BlockInteract, null, block); }
public override void UseItem(Level world, Player player, BlockCoordinates blockCoordinates, BlockFace face, Vector3 faceCoords) { Block block = world.GetBlock(blockCoordinates); if (block is Grass || block is Dirt || block is GrassPath) { Farmland farmland = new Farmland { Coordinates = blockCoordinates, Metadata = 0 }; if (farmland.FindWater(world, blockCoordinates, new List <BlockCoordinates>(), 0)) { Log.Warn("Found water source"); farmland.Metadata = 7; } world.SetBlock(farmland); } }