/* ** j###t ########## #### #### ** j###t ########## #### #### ** j###T "###L J###" ** ######P' ########## ######### ** ######k, ########## T######T ** ####~###L #### ** #### q###L ########## .##### ** #### \###L ########## #####" ** ** $Id$ ** ** Class History ** ** Date Name Description ** ---------|------------|----------------------------------------------- ** 24Aug98 subtle start of recorded history ** */ package key.commands; import key.*; import java.util.StringTokenizer; import java.util.Enumeration; import java.io.IOException; public class Blocking extends Command { private static final long serialVersionUID = 6644375402988691405L; public Blocking() { setKey( "blocking" ); usage = ""; } public static final ColumnParagraph buildColumnParagraph( Player p ) { QualifierList.Immutable ql = p.getImmutableQualifierList(); ColumnParagraph.Generator cp = new ColumnParagraph.Generator( 30, 5 ); for( Enumeration e = ql.elements(); e.hasMoreElements(); ) { QualifierList.Entry.Immutable qle = (QualifierList.Entry.Immutable) e.nextElement(); if( qle.get() == Qualifiers.SUPPRESSION_CODE ) { Type t = qle.getTypeFor(); if( t == Type.PLAYER ) cp.appendEntry( "tells" ); else cp.appendEntry( t.getName() ); } } return( cp.getParagraph() ); } public void run( Player p, StringTokenizer args, String fullLine, CategoryCommand caller, InteractiveConnection ic, Flags flags ) throws IOException { Atom context = p.getContext(); ColumnParagraph cp = buildColumnParagraph( p ); int c = cp.count(); ic.send( headingParagraph ); if( c == 0 ) { ic.send( noBlockingParagraph ); ic.sendLine(); return; } ic.send( cp ); ic.send( new HeadingParagraph( c + " entr" + ((c==1) ? "y" : "ies"), HeadingParagraph.RIGHT ) ); } private static HeadingParagraph headingParagraph = new HeadingParagraph( "blocking" ); private static TextParagraph noBlockingParagraph = new TextParagraph( TextParagraph.CENTERALIGNED, " You haven't blocked anything, at the moment.\n" + "\n" + "Look at the command 'block' to add things to this list." ); }