/
area/
classes/net/sourceforge/pain/logic/
classes/net/sourceforge/pain/logic/event/
classes/net/sourceforge/pain/logic/fn/util/
classes/net/sourceforge/pain/network/console/
classes/net/sourceforge/pain/plugin/
classes/net/sourceforge/pain/plugin/reset/
classes/net/sourceforge/pain/plugin/shutdown/
classes/net/sourceforge/pain/plugin/social/
classest/net/sourceforge/pain/db/data/
doc/
doc/paindb/resources/
src/net/sourceforge/pain/logic/
src/net/sourceforge/pain/logic/event/
src/net/sourceforge/pain/logic/fn/util/
src/net/sourceforge/pain/network/console/
src/net/sourceforge/pain/network/console/telnet/
src/net/sourceforge/pain/plugin/
src/net/sourceforge/pain/plugin/command/
src/net/sourceforge/pain/plugin/reset/
src/net/sourceforge/pain/plugin/shutdown/
src/net/sourceforge/pain/plugin/social/
src/net/sourceforge/pain/util/
tests/
tests/net/sourceforge/pain/db/data/
package net.sourceforge.pain.logic.event.console.command.builder;

import net.sourceforge.pain.data.prototype.*;
import net.sourceforge.pain.logic.fn.*;
import net.sourceforge.pain.logic.fn.util.*;
import net.sourceforge.pain.network.console.*;

import java.util.*;

/**
 * PAiN  Date: 06.06.2003  Time: 0:52:45
 */
public class BC_List extends BuilderCommand {
	public void processBuilderCommand(BuilderShell p, String args) throws Exception {
		java.util.List protos = p.builder.getPrototypes();
		Console console = p.console;
		MessageOutFn.outln(console, "  List of prototypes:");
		if (protos.isEmpty()) {
			MessageOutFn.outln(console, "    No active prototypes found.\n");
		} else {
			MessageOutFn.outln(console, "    N" + Utils.whiteSpaceChars(5 - Utils.numStrLen(protos.size())) + "VNUM \tNAME");
			Prototype editedRole = p.builder.getEditedRole();
			PrototypeInfo active = editedRole == null ? null : (PrototypeInfo) editedRole.getRole(PrototypeInfo.class);
			int i = 0;
			for (Iterator it = protos.iterator(); it.hasNext(); i++) {
				PrototypeInfo pi = (PrototypeInfo) it.next();
				String name = pi.getName();
				String vnum = pi.getVnum();
				MessageOutFn.outln(console, "" + (pi == active ? "  {CA{x " : "    ") + i + Utils.whiteSpaceChars(5 - Utils.numStrLen(i)) + "{c" + vnum + "{x \t" + name);
			}
			MessageOutFn.outln(console, "{y====  Total:" + protos.size() + "{x");
		}

	}

	public void showHelp(Console console) {
		MessageOutFn.outln(console, "Builder command LIST shows list of edited prototypes");
		MessageOutFn.outln(console, "Usage: list");
	}
}