private void SpawnPowerUp()
    {
        float perc = Random.Range(0, 99);

        if (perc > 60 && !CheckBoardFull())
        {
            int rand_x = Random.Range(-2, 2);

            int rand_y = Random.Range(-2, 2);

            if (!GameBoardMatrix.row[rand_y + 2].column[rand_x + 2] && !GameBoardMatrix.row[rand_y + 2].pColumn[rand_x + 2])
            {
                var up = Instantiate(PowerHolder, transform).GetComponent <PowerHolder>();
                up.transform.localPosition = new Vector2(rand_x, rand_y);
                up.MyPower = PowerUp[Random.Range(0, PowerUp.Length)];
                up.ChangeSprite();
                GameBoardMatrix.row[rand_y + 2].pColumn[rand_x + 2] = up;
                string[] data = new string[]
                {
                    ProjectConstants.message_spawnPowerUp,
                    up.MyPower.powerType.ToString(),
                    (rand_y).ToString(),
                    (rand_x).ToString()
                };
                GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                              GPGController.GetOpponentId());
            }
        }
    }
Beispiel #2
0
    public static int OpCall()
    {
        LevelManager.GetLevelManager.ToggleLight(myTurn);

        if (YourBet == 0 && OpBet == 0)
        {
            OpBet += TableBet;
            LevelManager.GetLevelManager.BetEventText(GPGController.GetOpponentName() + " called " + TableBet);
            LevelManager.GetLevelManager.BetText();
            myTurn = true;
            return(TableBet);
        }
        else if (YourBet > OpBet)
        {
            int difference = YourBet - OpBet;
            OpBet += difference;
            LevelManager.GetLevelManager.BetText();
            LevelManager.GetLevelManager.BetEventText(GPGController.GetOpponentName() + " called  " + difference);

            myTurn = true;
            if (IsSatisfied())
            {
                LevelManager.GetLevelManager.BetEventText("Game is starting".ToUpper());
                var msg = new string[]
                {
                    ProjectConstants.message_satisfied
                };
                GPGController.SendByteMessage(GPGBytePackager.CreatePackage(msg), GPGController.GetOpponentId());
                LevelManager.GetLevelManager.LoadOnlineGame();
            }
            return(difference);
        }

        return(0);
    }
Beispiel #3
0
    public void UpdateCharge(int value)
    {
        if (Charge - value > 0)
        {
            Charge -= value;
            string[] data = new string[]
            {
                ProjectConstants.message_chargeUpdate,
                Charge.ToString()
            };
            GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                          GPGController.GetOpponentId());
        }

        else if (Charge - value >= GameManager.GetGameManager.Limit)
        {
            Charge = GameManager.GetGameManager.Limit;
        }
        else
        {
            Charge = 0;
            _pieceLimit.rectTransform.sizeDelta = new Vector2(64, 0);
            GameManager.GetGameManager.FinishGame();
            string[] data = new string[]
            {
                ProjectConstants.message_chargeUpdate,
                Charge.ToString()
            };
            GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                          GPGController.GetOpponentId());
            return;
        }
        _pieceLimit.rectTransform.sizeDelta = new Vector2(64, height - (limitPerc * value));
        height -= (limitPerc * value);
    }
Beispiel #4
0
 public void StartTimer()
 {
     _animator.SetTrigger("TimerStart");
     string[] data = new string[]
     {
         ProjectConstants.message_updateTime,
         PlayerTime.ToString()
     };
     GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                   GPGController.GetOpponentId());
 }
Beispiel #5
0
    public static int CallAndIncrease(int increaseAmount)
    {
        if (!myTurn)
        {
            return(0);
        }
        LevelManager.GetLevelManager.ToggleLight(myTurn);
        myTurn = false;

        if ((YourBet == 0 && OpBet == 0) &&
            ProjectConstants.userCredit - TableBet - increaseAmount > 0)
        {
            YourBet += TableBet;
            ProjectConstants.userCredit -= TableBet;
            YourBet += increaseAmount;
            ProjectConstants.userCredit -= increaseAmount;
            var data = new string[]
            {
                ProjectConstants.message_bet,
                increaseAmount.ToString()
            };
            GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                          GPGController.GetOpponentId());
            LevelManager.GetLevelManager.BetEventText("You called " + TableBet);
            LevelManager.GetLevelManager.BetText();
        }
        else if ((YourBet < OpBet) &&
                 ProjectConstants.userCredit - (OpBet - YourBet) - increaseAmount > 0)
        {
            int difference = OpBet - YourBet;
            YourBet += difference;
            ProjectConstants.userCredit -= difference;
            YourBet += increaseAmount;
            ProjectConstants.userCredit -= increaseAmount;
            var data = new string[]
            {
                ProjectConstants.message_bet,
                increaseAmount.ToString()
            };
            GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                          GPGController.GetOpponentId());
            LevelManager.GetLevelManager.BetEventText("You called " + difference);
            LevelManager.GetLevelManager.BetText();
        }

        return(increaseAmount);
    }
Beispiel #6
0
    private void SetNumberIndex(Number number, Number spawned)
    {
        if (number.TurnNumber == 1)
        {
            for (int i = 0; i < PlayerOneNumbers.Length; i++)
            {
                if (PlayerOneNumbers[i] == number)
                {
                    PlayerOneNumbers[i] = spawned;
                    AnimateDoor(1, i);
                    if (isOnline)
                    {
                        string[] data = new string[]
                        {
                            ProjectConstants.message_spawnTile,
                            spawned.MyNumber.ToString(),
                            i.ToString()
                        };
                        GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                                      GPGController.GetOpponentId());
                    }
                    break;
                }
            }
        }
        else if (number.TurnNumber == 2)
        {
            for (int i = 0; i < PlayerTwoNumbers.Length; i++)
            {
                if (PlayerTwoNumbers[i] == number)
                {
                    PlayerTwoNumbers[i] = spawned;
                    AnimateDoor(2, i);

                    break;
                }
            }
        }
    }
Beispiel #7
0
 public bool UpdateMatrix(int pos_x, int pos_y, Number card)
 {
     if (BoardHandler.GameBoardMatrix.row[pos_y].column[pos_x] != null)
     {
         return(false);
     }
     if (isOnline)
     {
         string[] data = new string[]
         {
             ProjectConstants.message_played,
             pos_x.ToString(),
             pos_y.ToString(),
             card.MyNumber.ToString()
         };
         GPGController.SendByteMessage(GPGBytePackager.CreatePackage(data),
                                       GPGController.GetOpponentId());
     }
     BoardHandler.GameBoardMatrix.row[pos_y].column[pos_x] = card;
     BoardHandler.GivePower(pos_x, pos_y, card);
     ControlMatrix(pos_x, pos_y, card.MyNumber);
     return(true);
 }