public override void OnItemUsedOnBlock(World world, Vector3 clickedBlock, Vector3 clickedSide, Vector3 cursorPosition, Entity usedBy) { var entity = PaintingEntity.CreateEntity(world, clickedBlock, clickedSide); if (entity != null) world.OnSpawnEntity(entity); // TODO: Remove items like this from the inventory after use base.OnItemUsedOnBlock(world, clickedBlock, clickedSide, cursorPosition, usedBy); }
public override void OnItemUsedOnBlock(World world, Vector3 clickedBlock, Vector3 clickedSide, Vector3 cursorPosition, Entity usedBy) { if (clickedSide == Vector3.Up) { // Floor sign } else if (clickedSide != Vector3.Down) { // Wall sign world.SetBlock(clickedBlock + clickedSide, new WallSignBlock(MathHelper.DirectionByRotationFlat(usedBy, true))); } }
public override void OnItemUsedOnBlock(World world, Vector3 clickedBlock, Vector3 clickedSide, Vector3 cursorPosition, Entity usedBy) { if (clickedSide == Vector3.Up) { // Floor sign byte metadata = (byte)((usedBy.Yaw % 360 / 360 * 16) + 8 % 16); world.SetBlock(clickedBlock + clickedSide, new SignPostBlock(metadata)); } else if (clickedSide != Vector3.Down) { // Wall sign world.SetBlock(clickedBlock + clickedSide, new WallSignBlock(MathHelper.DirectionByRotationFlat(usedBy, true))); } }
public override void OnItemUsed(World world, Entity usedBy) { var player = usedBy as PlayerEntity; if (player != null) player.OnStartEating(); }