/
codebase/src/net/sourceforge/pain/admin/console/command/
codebase/src/net/sourceforge/pain/data/role/
codebase/src/net/sourceforge/pain/network/console/telnet/
codebase/src/net/sourceforge/pain/network/guitool/
codebase/src/net/sourceforge/pain/plugin/
codebase/src/net/sourceforge/pain/util/
db/src/net/sourceforge/pain/util/
gui/
gui/lib/
gui/src/net/sourceforge/pain/tools/guitool/dbbrowse/
gui/src/net/sourceforge/pain/tools/guitool/dialog/
gui/src/net/sourceforge/pain/tools/guitool/menu/
gui/src/net/sourceforge/pain/tools/guitool/resources/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/explorer/
mudlibs/tinylib/
mudlibs/tinylib/area/
mudlibs/tinylib/etc/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/affect/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/prototype/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/data/trigger/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/affect/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/deploy/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/guitool/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/event/guitool/event/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/fn/util/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/trigger/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/logic/trigger/impl/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/command/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/reset/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/shutdown/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/plugin/social/
mudlibs/tinylib/src/net/sourceforge/pain/tinylib/util/
tests/
tests/src/
tests/src/net/sourceforge/pain/db/data/
package net.sourceforge.pain.tinylib.logic.event.console.command.builder;

import net.sourceforge.pain.data.role.*;
import net.sourceforge.pain.tinylib.*;
import net.sourceforge.pain.tinylib.logic.fn.*;
import net.sourceforge.pain.tinylib.logic.fn.util.*;

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.getEditedPrototypesList();
        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");
    }
}