protected override void BeforeProcessFunction()
        {
            if (duelScene.GetCurrentPhaseType() == phaseType)
            {
                Debug.LogError("当前流程已经是:" + phaseType + "无法重复进入!");
                return;
            }
            switch (duelScene.GetCurrentPhaseType())
            {
            case PhaseType.Unknown:
                break;

            case PhaseType.Draw:
                break;

            case PhaseType.Prepare:
                break;

            case PhaseType.Main:
                break;

            case PhaseType.Battle:
                EndBattlePhaseTypeEvent();
                break;

            case PhaseType.Second:
                break;

            case PhaseType.End:
                break;

            default:
                break;
            }
            duelScene.SetCurrentPhaseType(phaseType);
            duelScene.ResetPhaseTypePanelInfo();
            string          ex = duelScene.GetCurrentPlayer() == duelScene.GetMyPlayer() ? "我方进入" : "对方进入";
            PhaseTypeConfig phaseTypeConfig = ConfigManager.GetConfigByName("PhaseType") as PhaseTypeConfig;

            GameManager.ShowMessage(ex + phaseTypeConfig.GetRecordById((int)phaseType).value + "流程!");
            duelScene.GetCurrentPlayer().GetOpponentPlayer().EnterPhaseNotify(phaseType);
            TimerFunction timerFunction = new TimerFunction();

            timerFunction.SetFunction(1, () =>
            {
                DoProcessFunction();
            });
            GameManager.AddTimerFunction(timerFunction);
        }
Esempio n. 2
0
        void Start()
        {
            GameManager.GetSingleInstance().SetAudioByName(duelBgmName);
            duelScene = GameManager.GetDuelScene();
            duelScene.Init();
            cardImage = GameObject.Find("cardImage").GetComponent <Image>();

            Transform canvasTransform = GameObject.Find("Canvas").transform;

            duelResultPanel = canvasTransform.Find("DuelResultPanel").gameObject;
            duelResultPanel.SetActive(false);

            phaseTypePanel = canvasTransform.Find("rightPanel/PhaseTypePanel").gameObject;
            phaseTypePanel.SetActive(false);

            PhaseTypeConfig phaseTypeConfig = ConfigManager.GetConfigByName("PhaseType") as PhaseTypeConfig;

            for (int i = 1; i < phaseTypePanel.transform.GetChild(0).childCount; i++)
            {
                phaseTypePanel.transform.GetChild(0).GetChild(i).GetComponent <Text>().text = phaseTypeConfig.GetRecordById(i).value;
            }

            attackOrDefensePanel = canvasTransform.Find("rightPanel/AttackOrDefensePanel").gameObject;
            attackOrDefensePanel.SetActive(false);

            effectSelectPanel = canvasTransform.Find("rightPanel/EffectSelectPanel").gameObject;
            effectSelectPanel.SetActive(false);

            cardListPanel            = canvasTransform.Find("rightPanel/CardListPanel").gameObject;
            cardListContentTransform = cardListPanel.transform.GetChild(0).GetChild(0).GetChild(0);
            cardListPanel.SetActive(false);

            tossCoinPanel = canvasTransform.Find("rightPanel/TossCoinPanel").gameObject;
            tossCoinPanel.SetActive(false);

            throwDicePanel = canvasTransform.Find("rightPanel/ThrowDicePanel").gameObject;
            throwDicePanel.SetActive(false);

            selectItemPanel = canvasTransform.Find("rightPanel/SelectItemPanel").gameObject;
            selectItemPanel.SetActive(false);

            makeSurePanel = canvasTransform.Find("rightPanel/MakeSurePanel").gameObject;
            makeSurePanel.SetActive(false);
        }