Esempio n. 1
0
    private void occurAccident(PlayerStatus aPlayer, AccidentMasStatus aAccident, Action aCallback)
    {
        switch (aAccident.mAccidentKey)
        {
        case "heart":
            occurHeartAccident(aPlayer, aCallback);
            break;

        case "bat":
            occurBatAccident(aPlayer, aCallback);
            break;

        case "god":
            occurGodAccident(aPlayer, aCallback);
            break;

        case "gear":
            occurGearAccident(aPlayer, aCallback);
            break;

        case "question":
            occurQuestionAccident(aPlayer, aCallback);
            break;
        }
    }
Esempio n. 2
0
 private void runAccident(PlayerStatus aPlayer, AccidentMasStatus aAccident, Action aCallback)
 {
     mElement.mTable.setStarCard(PlayerStatus.playerColor[aPlayer.mPlayerNumber]);
     aPlayer.mController.flipCard(() => {
         aPlayer.mController.endFlip();
         mElement.mTable.flipStarCard(() => {
             occurAccident(aPlayer, aAccident, aCallback);
         });
     });
 }
Esempio n. 3
0
    private void initStatus()
    {
        //player
        //データ生成
        mElement.mPlayerStatus = new PlayerStatus[mElement.mInitData.mPlayerDataList.Length];
        for (int i = 0; i < mElement.mInitData.mPlayerDataList.Length; i++)
        {
            mElement.mPlayerStatus[i]                   = new PlayerStatus();
            mElement.mPlayerStatus[i].mAnimalName       = mElement.mInitData.mPlayerDataList[i].mAnimalName;
            mElement.mPlayerStatus[i].mPlayerNumber     = i;
            mElement.mPlayerStatus[i].mController       = mElement.mInitData.mPlayerDataList[i].mIsPlayer ? (GameController) new PlayerController() : (GameController) new AiController();
            mElement.mPlayerStatus[i].mRank             = 1;
            mElement.mPlayerStatus[i].mLap              = 0;
            mElement.mPlayerStatus[i].mReverseLap       = 0;
            mElement.mPlayerStatus[i].mFood             = mElement.mStageData.mInitialFood * mElement.mInitData.mInitialFood / 100;
            mElement.mPlayerStatus[i].mTerritory        = 0;
            mElement.mPlayerStatus[i].mCurrentMasNumber = 0;
            mElement.mPlayerStatus[i].mTurn             = i;
        }
        //データ表示
        for (int i = 0; i < mElement.mInitData.mPlayerDataList.Length; i++)
        {
            mElement.mPlayerStatusDisplay[i].initDisplay(mElement.mPlayerStatus[i]);
        }
        //mass
        //データ生成
        List <StageData.Mas> tMasDataList = mElement.mStageData.mMas;

        mElement.mMasStatus = new MasStatus[tMasDataList.Count];
        for (int i = 0; i < tMasDataList.Count; i++)
        {
            StageData.Mas tMasData = tMasDataList[i];
            MasStatus     tMas     = null;
            switch (tMasData.mType)
            {
            case MasStatus.MasType.land:
                StageData.Land tLandData = tMasData as StageData.Land;
                LandMasStatus  tLand     = new LandMasStatus();
                tLand.mName           = tLandData.mName;
                tLand.mValue          = tLandData.mValue;
                tLand.mAttribute1     = tLandData.mAttribute1;
                tLand.mAttribute2     = tLandData.mAttribute2;
                tLand.mOwnerNumber    = -1;
                tLand.mExpansionLevel = 0;
                tMas = tLand;
                break;

            case MasStatus.MasType.start:
                tMas = new StartMasStatus();
                break;

            case MasStatus.MasType.accident:
                AccidentMasStatus tAccident = new AccidentMasStatus();
                tAccident.mAccidentKey = ((StageData.Accident)tMasData).mAccidentType;
                tMas = tAccident;
                break;
            }
            tMas.mType      = tMasData.mType;
            tMas.mMasNumber = i;
            mElement.mMasDisplay[i].mEventListener.mMessage = "touchMas";
            mElement.mMasDisplay[i].mEventListener.mArg     = new Arg(new Dictionary <string, object>()
            {
                { "number", i }
            });
            mElement.mMasStatus[i] = tMas;
        }
        //データ表示
        for (int i = 0; i < mElement.mMasStatus.Length; i++)
        {
            if (mElement.mMasStatus[i].mType == MasStatus.MasType.land)
            {
                ((LandMasDisplay)mElement.mMasDisplay[i]).initDisplay((LandMasStatus)mElement.mMasStatus[i]);
            }
        }
    }