public TriggerViewModel Clone(PlayerStatusTypeViewModel newPlayerStatus) { var clone = new TriggerViewModel(newPlayerStatus.Name, newPlayerStatus, _serviceLocator); foreach (var condition in this.Conditions) { clone.Conditions.Add(new ConditionViewModel(condition.Field, condition.EquationType, condition.ValueEditor.Clone())); } return(clone); }
public TriggerViewModel(string name, PlayerStatusTypeViewModel playerStatus, IServiceLocator serviceLocator) { _name = name; PlayerStatus = playerStatus; if (string.IsNullOrEmpty(_name)) { _name = playerStatus.Name; } _serviceLocator = serviceLocator; AddNewConditionCommand = new Command(AddNewCondition); _conditions.CollectionChanged += Conditions_CollectionChanged; }