public Action(Dictionary<int, Entity> entities, ActionType type, int source = 0, int target = 0, int level = 0) { GameState = new GameState(entities); Type = type; if(source != 0) Source = entities[source]; if(target != 0) Target = entities[target]; SubActions = new List<Action>(); Level = level; }
private void AddGameState(ActionType type) { var gState = new GameState((Dictionary<int, Entity>)Utility.DeepClone(_entities), type); GameStates.Add(gState); }