/
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.logic.fn.*;
import net.sourceforge.pain.logic.event.console.*;
import net.sourceforge.pain.*;
import net.sourceforge.pain.network.console.*;
import net.sourceforge.pain.data.*;
import net.sourceforge.pain.data.prototype.*;

/**
 * PAiN  Date: 05.06.2003  Time: 1:40:02
 */
public final class BC_New extends BuilderCommand {

	public void processBuilderCommand(BuilderShell p, String args) throws Exception {
		if (args != null) {
			String params[] = new String[2];
			ConsoleInputEvent.parseCommand(args, params);
			if (params[1] != null) {
				PrototypesRegistry prototypesRegistry = Core.getWorld().getPrototypesRegistry();
				if (prototypesRegistry.isUsedVnum(params[0])) {
					MessageOutFn.outln(p.console, "Vnum is already in use:" + params[0]);
				} else {
					MessageOutFn.outln(p.console, "Prototype created vnum:" + params[0] + " name:" + params[1]);
					PrototypeInfo prototype = (PrototypeInfo) ObjectFactory.create(PrototypeInfo.class);
					prototype.setAuthor(p.console.getPlayer().getName());
					prototype.setName(params[1]);
					prototype.setDesc("NONE");
					prototype.setVnum(params[0]);
					prototypesRegistry.registerPrototype(prototype);
					p.builder.getPrototypes().add(prototype);
					p.builder.setEditedRole(prototype);
				}
				return;
			} else {
				showUsage(p.console);
			}
		} else {
			showUsage(p.console);
		}
	}

	public void showUsage(Console console) {
		MessageOutFn.outln(console, "NEW:Command syntax <VNUM> <PROTONAME>\n");
	}

	public void showHelp(Console console) {
		MessageOutFn.outln(console, "Builder command NEW creates new prototype object and adds it to edited prototypes list");
		MessageOutFn.outln(console, "Usage: new <VNUM> <PROTONAME>");
	}

}