コード例 #1
0
 public FluxxMainViewModel(CommandContainer commandContainer,
                           FluxxMainGameClass mainGame,
                           FluxxVMData viewModel,
                           BasicData basicData,
                           TestOptions test,
                           IGamePackageResolver resolver,
                           FluxxGameContainer gameContainer,
                           IDiscardProcesses discardProcesses,
                           IAnalyzeProcesses analyzeQueProcesses,
                           KeeperContainer keeperContainer,
                           FluxxDelegates delegates
                           )
     : base(commandContainer, mainGame, viewModel, basicData, test, resolver)
 {
     _mainGame                              = mainGame;
     _model                                 = viewModel;
     _resolver                              = resolver;
     _gameContainer                         = gameContainer;
     _discardProcesses                      = discardProcesses;
     _analyzeQueProcesses                   = analyzeQueProcesses;
     _keeperContainer                       = keeperContainer;
     _delegates                             = delegates;
     _model.Deck1.NeverAutoDisable          = true;
     _gameContainer.LoadGiveAsync           = LoadGiveAsync;
     _gameContainer.LoadPlayAsync           = LoadPlayAsync;
     _model.Keeper1.ConsiderSelectOneAsync += OnConsiderSelectOneCardAsync;
     _model.Goal1.ConsiderSelectOneAsync   += OnConsiderSelectOneCardAsync;
 }
コード例 #2
0
 public ActionEverybodyGetsOneViewModel(FluxxGameContainer gameContainer,
                                        ActionContainer actionContainer,
                                        KeeperContainer keeperContainer,
                                        FluxxDelegates delegates,
                                        IFluxxEvent fluxxEvent,
                                        BasicActionLogic basicActionLogic) : base(gameContainer, actionContainer, keeperContainer, delegates, fluxxEvent, basicActionLogic)
 {
 }
 public ActionFirstCardRandomViewModel(FluxxGameContainer gameContainer,
                                       ActionContainer actionContainer,
                                       KeeperContainer keeperContainer,
                                       FluxxDelegates delegates,
                                       IFluxxEvent fluxxEvent,
                                       BasicActionLogic basicActionLogic) : base(gameContainer, actionContainer, keeperContainer, delegates, fluxxEvent, basicActionLogic)
 {
 }
コード例 #4
0
 public ActionDiscardRulesViewModel(FluxxGameContainer gameContainer,
                                    ActionContainer actionContainer,
                                    KeeperContainer keeperContainer,
                                    FluxxDelegates delegates,
                                    IFluxxEvent fluxxEvent,
                                    BasicActionLogic basicActionLogic) : base(gameContainer, actionContainer, keeperContainer, delegates, fluxxEvent, basicActionLogic)
 {
     RulesToDiscard = actionContainer.RulesToDiscard;
 }
コード例 #5
0
 public FinalKeeperProcesses(FluxxGameContainer gameContainer,
                             IAnalyzeProcesses analyzeProcesses,
                             FluxxDelegates delegates,
                             IDiscardProcesses discardProcesses
                             )
 {
     _gameContainer    = gameContainer;
     _analyzeProcesses = analyzeProcesses;
     _delegates        = delegates;
     _discardProcesses = discardProcesses;
 }
コード例 #6
0
 public FluxxMainGameClass(IGamePackageResolver mainContainer,
                           IEventAggregator aggregator,
                           BasicData basicData,
                           TestOptions test,
                           FluxxVMData currentMod,
                           IMultiplayerSaveState state,
                           IAsyncDelayer delay,
                           ICardInfo <FluxxCardInformation> cardInfo,
                           CommandContainer command,
                           FluxxGameContainer gameContainer,
                           IGiveTaxationProcesses giveTaxationProcesses,
                           IEmptyTrashProcesses emptyTrashProcesses,
                           IPlayProcesses playProcesses,
                           ActionContainer actionContainer,
                           KeeperContainer keeperContainer,
                           FluxxDelegates delegates,
                           IShowActionProcesses showActionProcesses,
                           IDiscardProcesses discardProcesses,
                           IRotateTradeHandProcesses rotateTradeHandProcesses,
                           IFinalKeeperProcesses finalKeeperProcesses,
                           IFinalRuleProcesses finalRuleProcesses,
                           IEverybodyOneProcesses everybodyOneProcesses,
                           IDrawUseProcesses drawUseProcesses,
                           IAnalyzeProcesses analyzeProcesses,
                           ILoadActionProcesses loadActionProcesses
                           )
     : base(mainContainer, aggregator, basicData, test, currentMod, state, delay, cardInfo, command, gameContainer)
 {
     _model                        = currentMod;
     _command                      = command;
     _gameContainer                = gameContainer;
     _giveTaxationProcesses        = giveTaxationProcesses;
     _emptyTrashProcesses          = emptyTrashProcesses;
     _playProcesses                = playProcesses;
     _actionContainer              = actionContainer;
     _keeperContainer              = keeperContainer;
     _delegates                    = delegates;
     _showActionProcesses          = showActionProcesses;
     _discardProcesses             = discardProcesses;
     _rotateTradeHandProcesses     = rotateTradeHandProcesses;
     _finalKeeperProcesses         = finalKeeperProcesses;
     _finalRuleProcesses           = finalRuleProcesses;
     _everybodyOneProcesses        = everybodyOneProcesses;
     _drawUseProcesses             = drawUseProcesses;
     _analyzeProcesses             = analyzeProcesses;
     _loadActionProcesses          = loadActionProcesses;
     _model.PlayerHand1.AutoSelect = HandObservable <FluxxCardInformation> .EnumAutoType.SelectAsMany;
 }
コード例 #7
0
 public FluxxShellViewModel(IGamePackageResolver mainContainer,
                            CommandContainer container,
                            IGameInfo gameData,
                            BasicData basicData,
                            IMultiplayerSaveState save,
                            TestOptions test,
                            FluxxDelegates delegates
                            )
     : base(mainContainer, container, gameData, basicData, save, test)
 {
     delegates.LoadMainScreenAsync         = LoadMainScreenAsync;
     delegates.LoadProperActionScreenAsync = LoadActionScreenAsync;
     delegates.LoadKeeperScreenAsync       = LoadKeeperScreenAsync;
     delegates.CurrentScreen = GetCurrentScreenCategory;
     _delegates = delegates;
 }
コード例 #8
0
 public BasicActionScreen(FluxxGameContainer gameContainer,
                          ActionContainer actionContainer,
                          KeeperContainer keeperContainer,
                          FluxxDelegates delegates,
                          IFluxxEvent fluxxEvent,
                          BasicActionLogic basicActionLogic
                          )
 {
     GameContainer    = gameContainer;
     ActionContainer  = actionContainer;
     _keeperContainer = keeperContainer;
     _delegates       = delegates;
     FluxxEvent       = fluxxEvent;
     BasicActionLogic = basicActionLogic;
     CommandContainer = gameContainer.Command;
     ActionContainer.PropertyChanged += ActionContainer_PropertyChanged;
     ButtonChooseCardVisible          = ActionContainer.ButtonChooseCardVisible;
 }
コード例 #9
0
 public BasicActionLogic(FluxxGameContainer gameContainer, ActionContainer actionContainer, FluxxDelegates delegates)
 {
     _gameContainer   = gameContainer;
     _actionContainer = actionContainer;
     _delegates       = delegates;
 }
コード例 #10
0
        public static async Task PrepActionScreenAsync(this ActionContainer actionContainer, FluxxGameContainer gameContainer, FluxxDelegates delegates, ILoadActionProcesses loadAction)
        {
            actionContainer.Loads++;
            actionContainer.ActionFrameText           = "Action Card Information";
            actionContainer.ButtonChoosePlayerVisible = false;
            actionContainer.OtherHand.Visible         = false; //has to be proven true here too.
            actionContainer.ButtonChooseCardVisible   = false;
            if (delegates.LoadProperActionScreenAsync == null)
            {
                throw new BasicBlankException("Nobody is loading action screen.  Rethink");
            }
            actionContainer.CurrentDetail !.ResetCard();
            if (gameContainer.IsFirstPlayRandom() || gameContainer.CurrentAction == null)
            {
                actionContainer.ActionCategory = EnumActionCategory.FirstRandom; //take a risk.  if hidden bug, then rethink.
                loadAction.LoadFirstRandom();
                await delegates.LoadProperActionScreenAsync(actionContainer);

                return;
            }

            switch (gameContainer.CurrentAction !.Deck)
            {