Ejemplo n.º 1
0
 /// <summary>
 /// 设置猜先内容
 /// </summary>
 /// <param name="guessEnum"></param>
 /// <returns></returns>
 public bool SetGuessEnum(GuessEnum guessEnum)
 {
     if (this.guessEnum == GuessEnum.Unknown || guessEnum == GuessEnum.Unknown)
     {
         this.guessEnum = guessEnum;
         opponentPlayer.GuessFirstNotify(guessEnum);
         return(true);
     }
     return(false);
 }
Ejemplo n.º 2
0
        public override void GuessFirstNotify(GuessEnum guessEnum)
        {
            if (guessEnum == GuessEnum.Unknown)
            {
                return;
            }
            CGuessFirst guessFirst = new CGuessFirst();

            guessFirst.AddContent("guess", guessEnum.ToString());
            ClientManager.GetSingleInstance().SendProtocol(guessFirst);
        }
Ejemplo n.º 3
0
 public bool SetOpponentGuess(GuessEnum guessEnum)
 {
     if (duelScene.GetOpponentPlayer().SetGuessEnum(guessEnum))
     {
         GameObject.Find("opponentPanel").transform.GetChild((int)duelScene.GetOpponentPlayer().GetGuessEnum() - 1).GetComponent <GuessFirstScript>().SetChooseState();
         DecideGuessFirst();
         return(true);
     }
     else
     {
         GameManager.ShowMessage("选择后不能修改!");
     }
     return(false);
 }
Ejemplo n.º 4
0
 public override void GuessFirstNotify(GuessEnum guessEnum)
 {
     if (guessEnum == GuessEnum.Unknown)
     {
         return;
     }
     if (GameManager.GetSingleInstance().GetUserData().guessMustWin)
     {
         int tempMyGuessEnum       = (int)duelScene.GetMyPlayer().GetGuessEnum();
         int tempOpponentGuessEnum = tempMyGuessEnum - 1 > 0 ? tempMyGuessEnum - 1 : 3;
         GameObject.Find("Main Camera").GetComponent <GuessFirstSceneScript>().SetOpponentGuess((GuessEnum)tempOpponentGuessEnum);
     }
     else
     {
         GameObject.Find("Main Camera").GetComponent <GuessFirstSceneScript>().SetOpponentGuess((GuessEnum)UnityEngine.Random.Range(1, 4));
     }
 }
Ejemplo n.º 5
0
    /// <summary>
    /// 决定谁先出牌
    /// </summary>
    public void DecideGuessFirst()
    {
        if (iGuessWin != 0)
        {
            return;
        }
        GuessEnum myGuessEnum       = duelScene.GetMyPlayer().GetGuessEnum();
        GuessEnum opponentGuessEnum = duelScene.GetOpponentPlayer().GetGuessEnum();

        if (myGuessEnum != GuessEnum.Unknown && opponentGuessEnum != GuessEnum.Unknown)
        {
            if (myGuessEnum == opponentGuessEnum)
            {
                TimerFunction reguessTimeFunction = new TimerFunction();
                reguessTimeFunction.SetFunction(1, () =>
                {
                    ClearChoose();
                });

                GameManager.AddTimerFunction(reguessTimeFunction);
                GameManager.ShowMessage("双方选择相同,需重新选择!");

                return;
            }

            int             tempValue       = (int)myGuessEnum - (int)opponentGuessEnum;
            StringResConfig stringResConfig = ConfigManager.GetConfigByName("StringRes") as StringResConfig;
            string          title;
            if (tempValue == 1 || tempValue == -2)
            {
                iGuessWin = 1;
                title     = stringResConfig.GetRecordById(13).value;
            }
            else
            {
                iGuessWin = 2;
                title     = stringResConfig.GetRecordById(14).value;
            }

            TimerFunction timerFunction = new TimerFunction();

            timerFunction.SetFunction(1, () =>
            {
                selectCardGroupPanel.SetActive(false);
                guessFirstPanel.SetActive(false);
                selectFirstPanel.SetActive(true);
                selectFirstPanel.transform.GetChild(0).GetComponent <Text>().text = title;

                if (iGuessWin == 1)
                {
                    duelScene.GetMyPlayer().SelectFristOrBack();
                }

                if (iGuessWin == 2)
                {
                    duelScene.GetOpponentPlayer().SelectFristOrBack();
                }
            });
            GameManager.AddTimerFunction(timerFunction);
        }
    }
Ejemplo n.º 6
0
        public override void Process()
        {
            GuessEnum opponentGuess = (GuessEnum)Enum.Parse(typeof(GuessEnum), GetContent("guess"));

            GameObject.Find("Main Camera").GetComponent <GuessFirstSceneScript>().SetOpponentGuess(opponentGuess);
        }
Ejemplo n.º 7
0
 /// <summary>
 /// 玩家猜先通知
 /// </summary>
 public virtual void GuessFirstNotify(GuessEnum guessEnum)
 {
 }