/* ** j###t ########## #### #### ** j###t ########## #### #### ** j###T "###L J###" ** ######P' ########## ######### ** ######k, ########## T######T ** ####~###L #### ** #### q###L ########## .##### ** #### \###L ########## #####" ** ** Class History ** ** Date Name Description ** ---------|------------|----------------------------------------------- ** 12Jul97 snapper created this command ** */ package key.commands.clan; import key.*; import java.io.IOException; import java.util.StringTokenizer; /** * This command is intended to change the players context to * their clan. */ public class RefRank extends Command { public RefRank() { setKey( "rank" ); usage = "[<rank>]"; } public void run( Player p, StringTokenizer args, String fullLine, CategoryCommand caller, InteractiveConnection ic, Flags flags ) throws IOException { Clan currentClan = p.getClan(); if( currentClan == null ) { ic.sendFeedback( "No Clan to reference, join one today!" ); return; } if( args.hasMoreTokens() ) { // the next argument should be a rank String refRank = args.nextToken(); Rank targetRank = (Rank) currentClan.ranks.getElement( refRank ); if( targetRank == null ) { ic.sendFeedback( "Your Clan does not have that rank!" ); return; } if( args.hasMoreTokens() ) { Atom old = p.getContext(); p.setContext( targetRank ); p.command( args.nextToken( "" ), ic, false ); p.setContext( old ); return; } else { p.setContext( targetRank ); ic.sendFeedback( "Now referencing '" + p.getContext().getId() + "'" ); } } else { usage( ic ); } } }