public FiveCrownsMainGameClass(IGamePackageResolver mainContainer, IEventAggregator aggregator, BasicData basicData, TestOptions test, FiveCrownsVMData currentMod, IMultiplayerSaveState state, IAsyncDelayer delay, ICardInfo <FiveCrownsCardInformation> cardInfo, CommandContainer command, FiveCrownsGameContainer gameContainer, FiveCrownsDelegates delegates ) : base(mainContainer, aggregator, basicData, test, currentMod, state, delay, cardInfo, command, gameContainer) { _model = currentMod; _command = command; _gameContainer = gameContainer; _rummys = new RummyProcesses <EnumSuitList, EnumColorList, FiveCrownsCardInformation>(); delegates.CardsToPassOut = (() => CardsToPassOut); }
private readonly FiveCrownsGameContainer _gameContainer; //if not needed, delete. public FiveCrownsMainViewModel(CommandContainer commandContainer, FiveCrownsMainGameClass mainGame, FiveCrownsVMData viewModel, BasicData basicData, TestOptions test, IGamePackageResolver resolver, FiveCrownsGameContainer gameContainer ) : base(commandContainer, mainGame, viewModel, basicData, test, resolver) { _mainGame = mainGame; _model = viewModel; _gameContainer = gameContainer; _model.Deck1.NeverAutoDisable = false; var player = _mainGame.PlayerList.GetSelf(); mainGame.Aggregator.Subscribe(player); //hopefully this works now. _model.PlayerHand1.AutoSelect = HandObservable <FiveCrownsCardInformation> .EnumAutoType.SelectAsMany; _model.TempSets.Init(this); _model.TempSets.ClearBoard(); //try this too. _model.TempSets.SetClickedAsync += TempSets_SetClickedAsync; _model.MainSets.SendEnableProcesses(this, () => false); //always disabled this time. }