Exemple #1
0
    private int CheckLines()
    {
        int win = 0;

        foreach (var typeCell in typeCells)
        {
            foreach (var line in lines)
            {
                int counter = 0;
                foreach (var point in line.Points)
                {
                    if ((cells[(int)point.x][(int)point.y].TypeCell.Id == typeCell.Id) ||
                        (cells[(int)point.x][(int)point.y].TypeCell.typeOfCell == TypeCell.TypeOfCell.Wild))
                    {
                        counter++;
                    }
                }
                if (typeCell.GetScore(counter) > 0)
                {
                    Achivements.SetLinesCounter();
                    if (typeCell.typeOfCell == TypeCell.TypeOfCell.Wild)
                    {
                        AudioManager.Instance.ScatterWildSound();
                        Achivements.SetWildCounter();
                    }
                    if (typeCell.typeOfCell == TypeCell.TypeOfCell.Diamond)
                    {
                        diamonds++;
                        Purse.AddMoney(0, 1);
                        AudioManager.Instance.MoneySound();
                        SpecialEventsStore.SetCollectedDiamonds(levelId, 1);
                    }
                    if (typeCell.typeOfCell == TypeCell.TypeOfCell.Scatter)
                    {
                        Achivements.SetScatterCounter();
                        AudioManager.Instance.ScatterWildSound();
                        switch (typeCell.GetScore(counter))
                        {
                        case 1:
                            StartCoroutine(FreeSpinAdd(spin1));
                            break;

                        case 3:
                            StartCoroutine(FreeSpinAdd(spin3));
                            break;
                        }
                        LevelsState.AddFreeSpin(levelId, typeCell.GetScore(counter));
                        freeSpin = freeSpin;
                    }
                    else
                    {
                        win += (int)((float)(typeCell.GetScore(counter)) * (float)bet * .01f);
                    }
                    AudioManager.Instance.LineSound();
                    line.Show();
                }
            }
        }
        return(win);
    }
 private void Awake()
 {
     specialEventButton.onClick.AddListener(OpenSpecialEvent);
     hour   = LevelsState.GetRestOfTime(Page.CurrentLevelId).Days * 24 + LevelsState.GetRestOfTime(Page.CurrentLevelId).Hours;
     minute = LevelsState.GetRestOfTime(Page.CurrentLevelId).Minutes;
     StartCoroutine(TimerCoroutine());
 }
Exemple #3
0
 private void Spin()
 {
     foreach (var line in lines)
     {
         line.Hide();
     }
     if (IsSpinning() || isSpin)
     {
         return;
     }
     StartCoroutine(IsSpinCoroutine());
     if (freeSpin > 0)
     {
         SpecialEventsStore.SetDidTenFreeSpins(levelId);
         Achivements.SetFreeSpinCounter();
         Achivements.SetMaxBetCounter();
         bet = MAX_BET;
         LevelsState.RemoveFreeSpin(levelId);
         freeSpin = freeSpin;
         AudioManager.Instance.ScrolingSlotSound();
         StartCoroutine(SpinCoroutine());
     }
     else if (coins >= bet)
     {
         if (bet == MAX_BET)
         {
             Achivements.SetMaxBetCounter();
         }
         coins -= bet;
         Purse.RemoveMoney(bet, 0);
         AudioManager.Instance.ScrolingSlotSound();
         StartCoroutine(SpinCoroutine());
     }
 }
Exemple #4
0
 private void NewGame()
 {
     Purse.RemoveAllMoney();
     for (int i = 0; i < LevelPages.Length; i++)
     {
         LevelsState.AddFreeSpin(i, 10);
         LevelsState.LockLevel(i);
     }
     LevelsState.UnlockLevel(0);
     Close();
     StartScreenPage.Open();
 }
Exemple #5
0
    private new void Awake()
    {
        base.Awake();
        MenuPage = this;

        if (!LevelsState.IsLevelAvailible(0))
        {
            LevelsState.UnlockLevel(0);
        }
        soundSettingsButton.onClick.AddListener(OpenSoundSettings);
        newGameButton.onClick.AddListener(NewGame);
    }
Exemple #6
0
 private void OpenOrBuy()
 {
     if (LevelsState.IsLevelAvailible(levelId))
     {
         OpenLevel();
     }
     else
     {
         if (Purse.RemoveMoney(priceCoin, priceDiamond))
         {
             LevelsState.UnlockLevel(levelId);
             Unlock();
             OpenLevel();
         }
     }
 }
Exemple #7
0
 public void Init()
 {
     button.onClick.AddListener(OpenOrBuy);
     priceCoinText.text = LevelsState.IsLevelAvailible(levelId - 1) ?
                          (SetMoneyText(Purse.Coins) + "/" + SetMoneyText(priceCoin)) :
                          (SetMoneyText(priceCoin) + "");
     priceDiamondText.text = LevelsState.IsLevelAvailible(levelId - 1) ?
                             (SetMoneyText(Purse.Diamonds) + "/" + SetMoneyText(priceDiamond)) :
                             (priceDiamond + "");
     if (LevelsState.IsLevelAvailible(levelId))
     {
         Unlock();
     }
     else
     {
         Lock();
     }
 }
        public LevelSelectionScreen(bool _singlePlayer)
        {
            singlePlayer = _singlePlayer;

            int screenWidth = Program.game.screenWidth;
            int screenHeight = Program.game.screenHeight;
            int levelButtonWidth = screenWidth / 8;
            int levelButtonHeight = screenHeight / 8;
            int menuButtonWidth = 170;
            int menuButtonHeight = 92;

            int levelButton1y = screenHeight / 2 - 10;
            int levelButton2y = 2 * screenHeight / 3 + 40;
            int level1x = screenWidth / 2 - 5 * levelButtonWidth / 2;
            int level2x = screenWidth / 2 - levelButtonWidth / 2;
            int level3x = screenWidth / 2 + 3 * levelButtonWidth / 2;

            int menuButtony = screenHeight / 5;
            int easyx = screenWidth / 8;
            int menuButtonx = screenWidth / 2 - menuButtonWidth / 2;
            int hardx = 3 * screenWidth / 4;

            menuButton = new Button(new Point(menuButtonx, menuButtony), menuButtonWidth, menuButtonHeight, "Main Menu", "Buttons/mainMenuButton");
            easyButton = new Button(new Point(easyx, menuButtony), menuButtonWidth, menuButtonHeight, "Easy", "Buttons/easy");
            hardButton = new Button(new Point(hardx, menuButtony), menuButtonWidth, menuButtonHeight, "Hard", "Buttons/hard");

            easyLevelButtons = new List<Button>();
            easyLevelButtons.Add(new Button(new Point(level1x, levelButton1y), levelButtonWidth, levelButtonHeight, "level one", "LevelThumbnails/level0"));
            easyLevelButtons.Add(new Button(new Point(level2x, levelButton1y), levelButtonWidth, levelButtonHeight, "level two", "LevelThumbnails/level1"));
            easyLevelButtons.Add(new Button(new Point(level3x, levelButton1y), levelButtonWidth, levelButtonHeight, "level three", "LevelThumbnails/level2"));
            easyLevelButtons.Add(new Button(new Point(level1x, levelButton2y), levelButtonWidth, levelButtonHeight, "level four", "LevelThumbnails/level3"));
            easyLevelButtons.Add(new Button(new Point(level2x, levelButton2y), levelButtonWidth, levelButtonHeight, "level five", "LevelThumbnails/level4"));
            easyLevelButtons.Add(new Button(new Point(level3x, levelButton2y), levelButtonWidth, levelButtonHeight, "level six", "LevelThumbnails/level5"));

            hardLevelButtons = new List<Button>();
            hardLevelButtons.Add(new Button(new Point(level1x, levelButton1y), levelButtonWidth, levelButtonHeight, "level one", "LevelThumbnails/level6"));
            hardLevelButtons.Add(new Button(new Point(level2x, levelButton1y), levelButtonWidth, levelButtonHeight, "level two", "LevelThumbnails/level7"));
            hardLevelButtons.Add(new Button(new Point(level3x, levelButton1y), levelButtonWidth, levelButtonHeight, "level three", "LevelThumbnails/level8"));
            hardLevelButtons.Add(new Button(new Point(level1x, levelButton2y), levelButtonWidth, levelButtonHeight, "level four", "LevelThumbnails/level9"));
            hardLevelButtons.Add(new Button(new Point(level2x, levelButton2y), levelButtonWidth, levelButtonHeight, "level five", "LevelThumbnails/level10"));
            hardLevelButtons.Add(new Button(new Point(level3x, levelButton2y), levelButtonWidth, levelButtonHeight, "level six", "LevelThumbnails/level11"));

            levelsState = LevelsState.COOPEASY;
        }
        public LevelSelectionScreen(bool _singlePlayer)
        {
            singlePlayer = _singlePlayer;

            int screenWidth = Program.game.screenWidth;
            int screenHeight = Program.game.screenHeight;
            int levelButtonWidth = screenWidth / 8;
            int levelButtonHeight = screenHeight / 8;
            int menuButtonWidth = 170;
            int menuButtonHeight = 92;

            List<int> levely = new List<int>();
            levely.Add(screenHeight / 2 - 10);
            levely.Add(2 * screenHeight / 3 + 40);
            List<int> levelx = new List<int>();
            levelx.Add(screenWidth / 2 - 5 * levelButtonWidth / 2);
            levelx.Add(screenWidth / 2 - levelButtonWidth / 2);
            levelx.Add(screenWidth / 2 + 3 * levelButtonWidth / 2);

            int menuButtony = screenHeight / 5;
            int easyx = screenWidth / 8;
            int menuButtonx = screenWidth / 2 - menuButtonWidth / 2;
            int hardx = 3 * screenWidth / 4;

            menuButton = new Button(new Point(menuButtonx, menuButtony), menuButtonWidth, menuButtonHeight, "Main Menu", "Buttons/mainMenuButton");
            easyButton = new Button(new Point(easyx, menuButtony), menuButtonWidth, menuButtonHeight, "Easy", "Buttons/easy");
            hardButton = new Button(new Point(hardx, menuButtony), menuButtonWidth, menuButtonHeight, "Hard", "Buttons/hard");

            easyLevelButtons = new List<Button>();
            hardLevelButtons = new List<Button>();
            easyLevelStars = new List<Sprite>();
            hardLevelStars = new List<Sprite>();

            if (singlePlayer)
            {
                for (int i = 0; i < 6; i++)
                {
                    if (Program.game.unlockOn && i > Program.game.gameStats.data.singleNextLevelToUnlock)
                    {
                        easyLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/lockColor"));
                        easyLevelButtons[i].selectable = false;
                    }
                    else
                    {
                        easyLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/level" + (i+12)));
                        for (int j = 0; j < Program.game.gameStats.data.levelData[i + 12].numStars; j++)
                            easyLevelStars.Add(new Sprite(new Point(j * 60 + levelx[i % 3] + levelButtonWidth / 2 - 80, levely[i / 3] + levelButtonHeight - 20)));
                    }
                    if (Program.game.unlockOn && i + 6 > Program.game.gameStats.data.singleNextLevelToUnlock)
                    {
                        hardLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/lockColor"));
                        hardLevelButtons[i].selectable = false;
                    }
                    else
                    {
                        hardLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/level" + (i + 18)));
                        for (int j = 0; j < Program.game.gameStats.data.levelData[i + 18].numStars; j++)
                            hardLevelStars.Add(new Sprite(new Point(j * 60 + levelx[i % 3] + levelButtonWidth / 2 - 80, levely[i / 3] + levelButtonHeight - 20)));
                    }
                }
            }
            else
            {
                for (int i = 0; i < 6; i++)
                {
                    if (Program.game.unlockOn && i > Program.game.gameStats.data.coopNextLevelToUnlock)
                    {
                        easyLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/lockColor"));
                        easyLevelButtons[i].selectable = false;
                    }
                    else
                    {
                        easyLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/level" + i));
                        for (int j = 0; j < Program.game.gameStats.data.levelData[i].numStars; j++)
                            easyLevelStars.Add(new Sprite(new Point(j * 60 + levelx[i % 3] + levelButtonWidth / 2 - 80, levely[i / 3] + levelButtonHeight - 20)));
                    }
                    if (Program.game.unlockOn && i + 6 > Program.game.gameStats.data.coopNextLevelToUnlock)
                    {
                        hardLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/lockColor"));
                        hardLevelButtons[i].selectable = false;
                    }
                    else
                    {
                        hardLevelButtons.Add(new Button(new Point(levelx[i % 3], levely[i / 3]), levelButtonWidth, levelButtonHeight, levelNames[i], "LevelThumbnails/level" + (i + 6)));
                        for (int j = 0; j < Program.game.gameStats.data.levelData[i + 6].numStars; j++)
                            hardLevelStars.Add(new Sprite(new Point(j * 60 + levelx[i % 3] + levelButtonWidth / 2 - 80, levely[i / 3] + levelButtonHeight - 20)));
                    }
                }
            }

            levelsState = LevelsState.EASY;
        }
        public void update()
        {
            if (menuButton.isSelected())
                Program.game.startMainMenu();
            else if (easyButton.isSelected())
                levelsState = LevelsState.EASY;
            else if (hardButton.isSelected())
                levelsState = LevelsState.HARD;

            switch (levelsState)
            {
                case LevelsState.EASY:
                    for (int i = 0; i < easyLevelButtons.Count; i++)
                    {
                        if (easyLevelButtons[i].selectable && easyLevelButtons[i].isSelected())
                            Program.game.startLevel(i, singlePlayer);
                    }
                    break;
                case LevelsState.HARD:
                    for (int i = 0; i < hardLevelButtons.Count; i++)
                    {
                        if (hardLevelButtons[i].selectable && hardLevelButtons[i].isSelected())
                            Program.game.startLevel(i + 6, singlePlayer);
                    }
                    break;
            }
        }
 public override void OnStateEnter(Animator animator, AnimatorStateInfo animatorStateInfo, int layerIndex)
 {
     _LevelsState = FindObjectOfType <LevelsState>();
     _LevelsState.OnStateEnter(animator, animatorStateInfo, layerIndex);
 }
 public static bool NextLevelIsOpen(int levelId)
 {
     return(LevelsState.IsLevelAvailible(levelId + 1));
 }