示例#1
0
        public void StartBattle(Utility.TreeNode <MapItem> location)
        {
            mMapState.SetCurrentLocation(location);

            State.CardsSetupState cardsSetupState = new State.CardsSetupState(true, true);
            cardsSetupState.mPlayerDeck   = mCampaignState.mCurrentCollection.mDeck;
            cardsSetupState.mOpposingDeck = GenerateOpposingDeck(location.mItem.mDifficultyTier,
                                                                 State.StateHolder.StateManager.MetaDataLibrary);

            State.StateHolder.StateManager.SetPassedState(cardsSetupState);
            State.StateHolder.StateManager.MoveToNextScene(State.GameScene.CampaignCardGame);
        }
示例#2
0
        // Use this for initialization
        void Start()
        {
            State.CardsSetupState setupState = (State.CardsSetupState)State.StateHolder.StateManager.GetAndClearPassedState();
            if (setupState == null)
            {
                mIsCampaignCardGame = false;
            }
            else
            {
                mIsCampaignCardGame = setupState.mIsCampaign;
            }

            TheCardGameState = State.StateHolder.StateManager.LoadCardGameState();

            if (setupState == null || setupState.mNeedsInit)
            {
                TheCardGameState.Init();
                TheCardGameState.GeneratePlayerDecks(setupState == null ? null : setupState.mPlayerDeck,
                                                     setupState == null ? null : setupState.mOpposingDeck);
                TheCardGameState.NewMatch();
            }

            TheTurnManager = new TurnManager(TheCardGameState, this);

            TheUIManager = this.gameObject.GetComponent <UI.CardGameUIManager>();
            TheUIManager.SetUp(this, TheCardGameState, TheTurnManager.GetTurnInfo());

            if (setupState == null || setupState.mNeedsInit)
            {
                TheTurnManager.NewMatch();
                NewRound();
            }

            if (mIsCampaignCardGame)
            {
                SaveGame();
            }

            TheUIManager.UpdateUI();
        }