// Copyright 2014-2017 ClassicalSharp | Licensed under BSD-3 using System; using BlockID = System.Byte; namespace ClassicalSharp.Events { public class UserEvents : EventsBase { //BlockChanging event_here; // ?? /// Raised when the user changes a block in the world. public event EventHandler BlockChanged; public void RaiseBlockChanged(Vector3I coords, BlockID old, BlockID block) { blockArgs.Coords = coords; blockArgs.OldBlock = old; blockArgs.Block = block; Raise(BlockChanged, blockArgs); } BlockChangedEventArgs blockArgs = new BlockChangedEventArgs(); } public sealed class BlockChangedEventArgs : EventArgs { /// Location within the world the block was updated at. public Vector3I Coords; /// Block ID that was at the given location before. public BlockID OldBlock; /// Block ID that is now at the given location. public BlockID Block; } }