static void WriteCallback( Player player, Vector3I[] marks, object tag ) { Block block = new Block(); string sentence = ( string )tag; //block bugfix kinda if ( player.LastUsedBlockType == Block.Undefined ) { block = Block.Stone; } else { block = player.LastUsedBlockType; } Direction direction = DirectionFinder.GetDirection( marks ); try { FontHandler render = new FontHandler( block, marks, player, direction ); //create new instance render.CreateGraphicsAndDraw( sentence ); //render the sentence if ( render.blockCount > 0 ) { player.Message( "/Write (Size {0}, {1}: Writing '{2}' using {3} blocks of {4}", player.font.Size, player.font.FontFamily.Name, sentence, render.blockCount, block.ToString() ); } else { player.Message( "&WNo direction was set" ); } render = null; //get lost } catch ( Exception e ) { player.Message( e.Message ); Logger.Log( LogType.Error, "WriteCommand: " + e ); } }