public Game() { GameState = StateList.Init("gameState", STATE_BASE, STATE_DOME_PANEL, STATE_COLONIST); GameState.Change(STATE_BASE); TerrainHex.SelectedHexEvent += HandleSelectedHexEvent; GameState.StateChangedEvent += delegate(StateChange change) { Debug.Log("STATE CHANGED TO " + change.state); }; }
public StateChange(StateListItem fromS, StateListItem toS, StateList li, bool a) { if (fromS.name == "" || toS.name == "") { throw new Exception("cannot change to empty states"); } fromState = fromS; toState = toS; list = li; allowed = a; }
public StateListItem(string n, StateList l) { name = n; list = l; }
public State(string name, string itemName) { list = StateList.GetList(name); myState = list.Item(itemName); }
public State(string name) { list = StateList.GetList(name); myState = list.First(); }