public StealGameCommandEditorWindowViewModel(StealGameCommandModel command)
     : base(command)
 {
     this.UserSelectionTargeted = command.PlayerSelectionType.HasFlag(GamePlayerSelectionType.Targeted);
     this.UserSelectionRandom   = command.PlayerSelectionType.HasFlag(GamePlayerSelectionType.Random);
     this.SuccessfulOutcome     = new GameOutcomeViewModel(command.SuccessfulOutcome);
     this.FailedCommand         = command.FailedCommand;
 }
        public override async Task UpdateExistingCommand(CommandModelBase command)
        {
            await base.UpdateExistingCommand(command);

            StealGameCommandModel gCommand = (StealGameCommandModel)command;

            gCommand.PlayerSelectionType = this.GetSelectionType();
            gCommand.SuccessfulOutcome   = this.SuccessfulOutcome.GetModel();
            gCommand.FailedCommand       = this.FailedCommand;
        }