예제 #1
0
 public void CreatePair(StringBackchannelType s)
 {
     if (c.playerTurn == p)
     {
         if (s.STRING_VALUE != null)
         {
             if (s.STRING_VALUE == "0000")
             {
                 return;
             }
             //Debug.Log(s.STRING_VALUE);
             if (s.STRING_VALUE.Length > 4)
             {
                 return;
             }
             Vector2 slots = new Vector2(-1, -1);
             for (var i = 0; i < 4; i++)
             {
                 if (s.STRING_VALUE[i] == char.Parse("1"))
                 {
                     if (slots.x == -1)
                     {
                         slots.x = i;
                     }
                     else
                     {
                         slots.y = i;
                     }
                 }
             }
             CreatePairGeneration(slots);
         }
     }
 }
예제 #2
0
    public void HandUpdated(StringBackchannelType str)
    {
        if (wait > 0)
        {
            return;
        }
        if (str.STRING_VALUE != null)
        {
            //Debug.Log(str.STRING_VALUE);
            string handStr = str.STRING_VALUE;
            for (var i = 0; i < 4; i++)
            {
                cardIds[i] = handStr[i] - 65;
            }
            currentDiscard = handStr[4] - 65;
            pnum           = int.Parse(handStr.Substring(5, 1));
            var playerTurn = int.Parse(handStr.Substring(6, 1));
            for (var i = 0; i < 4; i++)   //top stacks
            {
                topStacks[i] = handStr[7 + i] - 65;
            }
            challengeType    = handStr[11] - 65;
            wasChallengeTurn = isChallengeTurn;
            isChallengeTurn  = int.Parse(handStr.Substring(12, 1));
            if (isChallengeTurn == 1 && wasChallengeTurn == 0)
            {
                dcCardToChallenge.setValue(-1);
                dcGiveUp.setValue(false);
            }
            wasChallengeTurn = isChallengeTurn;

            if (isChallengeTurn == 1 && wait == 0)
            {
                StartChallengeTurn();
            }
            var isTurnLastFrame = isTurn;
            if (playerTurn == pnum)
            {
                isTurn = true;
            }
            else
            {
                isTurn = false;
            }
            if (!isTurnLastFrame && isTurn)   //start turn
            {
                RefreshClient();
            }
            if (isTurn)
            {
                yourTurnText.text = "Your Turn!";
            }
            else
            {
                yourTurnText.text = "Waiting...";
            }
            playerNumberText.text = "Player " + (pnum + 1);
        }
    }
예제 #3
0
 // game state
 public void receiveGameState(StringBackchannelType stringBackchannel)
 {
     gameState = stringBackchannel.STRING_VALUE;
 }
예제 #4
0
 // spell /// useless
 public void receiveSpell(StringBackchannelType stringBackchannel)
 {
     spellText = stringBackchannel.STRING_VALUE;
 }
예제 #5
0
 // navgation
 public void receiveNav(StringBackchannelType stringBackchannel)
 {
     nav = stringBackchannel.STRING_VALUE;
 }
예제 #6
0
 // character
 public void receiveMsgPlayer(StringBackchannelType stringBackchannel)
 {
     msg = stringBackchannel.STRING_VALUE;
 }
 void Awake()
 {
     backchannelKey    = EasyWiFiController.registerControl(EasyWiFiConstants.BACKCHANNELTYPE_STRING, controlName);
     stringBackchannel = (StringBackchannelType)EasyWiFiController.controllerDataDictionary[backchannelKey];
 }
예제 #8
0
 // Use this for initialization
 void Awake()
 {
     stringKey  = EasyWiFiController.registerControl(EasyWiFiConstants.CONTROLLERTYPE_STRING, controlName);
     stringData = (StringBackchannelType)EasyWiFiController.controllerDataDictionary[stringKey];
 }