package net.alcuria.umbracraft.definitions.npc;
import net.alcuria.umbracraft.annotations.Tooltip;
import net.alcuria.umbracraft.definitions.Definition;
import net.alcuria.umbracraft.engine.components.ScriptComponent;
import com.badlogic.gdx.utils.Array;
/** Defines a a Script to be attached to a {@link ScriptComponent}. Scripts
* consist of a list of states (or "Pages" in RPG Maker lingo) with their own
* set of prerequisites and behaviors. The {@link ScriptComponent} is
* responsible for determining which Pages to execute at run-time.
* @author Andrew Keturi */
public class ScriptDefinition extends Definition {
@Tooltip("The name of the script, for reference by the ScriptComponent.")
public String name;
@Tooltip("The pages, or states, of the script.")
public Array<ScriptPageDefinition> pages;
@Tooltip("A tag for sorting")
public String tag;
@Override
public String getName() {
return name;
}
@Override
public String getTag() {
return tag != null ? tag : "";
}
}