package net.sourceforge.pain.data.type;
import net.sourceforge.pain.data.*;
import net.sourceforge.pain.db.*;
import java.util.*;
/**
 Exit.
 */
public final class Exit extends Role {
	public static final int TARGET_SPACE = 1 + LAST_BASE_FIELD_INDEX;
	public static final int EXIT_DESC = 2 + LAST_BASE_FIELD_INDEX;
	public static final int MOVE_COST = 3 + LAST_BASE_FIELD_INDEX;
	public static final int NFIELDS = 4 + LAST_BASE_FIELD_INDEX;
	public Exit(PainDB db) {
		super(db);
	}
	public Exit() {
	}
	public DbClassSchema provideSchema() {
		byte types[] = new byte[NFIELDS];
		String names[] = new String[NFIELDS];
		fillSuperSchema(types, names);
		types[TARGET_SPACE] = DbType.REFERENCE;
		names[TARGET_SPACE] = "target_space";
		types[EXIT_DESC] = DbType.STRING;
		names[EXIT_DESC] = "exit_desc";
		types[MOVE_COST] = DbType.INT;
		names[MOVE_COST] = "move_costs";
		return new DbClassSchema(types, names);
	}
	public Space getTargetSpace() {
		return (Space) getReference(TARGET_SPACE);
	}
	public void setTargetSpace(Space value) {
		setReference(TARGET_SPACE, value);
	}
	public String getExitDesc() {
		return getString(EXIT_DESC);
	}
	public void setExitDesc(String desc) {
		setString(EXIT_DESC, desc);
	}
	public int getMoveCost() {
		return getInt(MOVE_COST);
	}
	public void setMoveConst(int moveCost) {
		setInt(MOVE_COST, moveCost);
	}
}