public override void PlaceBlock(Level world, Player player, BlockCoordinates blockCoordinates, BlockFace face, Vector3 faceCoords) { Random random = new Random(); var rocket = new FireworksRocket(player, world, this, random); rocket.KnownPosition = blockCoordinates; rocket.KnownPosition += faceCoords + new Vector3(0, 0.01f, 0); rocket.KnownPosition.Yaw = random.Next(360); rocket.KnownPosition.Pitch = -1 * (float)(90f + (random.NextDouble() * Spread - Spread / 2)); rocket.BroadcastMovement = true; rocket.DespawnOnImpact = true; rocket.SpawnEntity(); }
public override void PlaceBlock(Level world, Player player, BlockCoordinates blockCoordinates, BlockFace face, Vector3 faceCoords) { Random random = new Random(); var rocket = new FireworksRocket(player, world, this, random); rocket.KnownPosition = blockCoordinates; rocket.KnownPosition += faceCoords + new Vector3(0, 0.01f, 0); rocket.KnownPosition.Yaw = random.Next(360); rocket.KnownPosition.Pitch = -1 * (float)(90f + (random.NextDouble() * Spread - Spread / 2)); rocket.BroadcastMovement = true; rocket.DespawnOnImpact = true; rocket.SpawnEntity(); if (player.GameMode == GameMode.Survival) { var itemInHand = player.Inventory.GetItemInHand(); itemInHand.Count--; player.Inventory.SetInventorySlot(player.Inventory.InHandSlot, itemInHand); } }