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); }
public void EndSpin() { if (IsSpinning()) { return; } FillCells(); int winCoins = CheckLines(); winText.text = winCoins + ""; Purse.AddMoney(winCoins); AudioManager.Instance.MoneySound(); SpecialEventsStore.SetCollectedCoins(levelId, winCoins); coins += CheckLines(); }
private IEnumerator SetBonusCoroutine(int count) { Achivements.SetGetDailyBonusCounter(); titleText.SetActive(false); bonusTexts[count].SetActive(true); for (var i = 0; i < bonusTexts.Length; i++) { bonusButtons[i].interactable = false; } bonusButtons[count].gameObject.SetActive(false); int rand = Random.Range(0, bonusImages.Length); bonusImages[rand].SetActive(true); bonusImages[rand].transform.position = new Vector3(bonusButtons[count].transform.position.x, 0f, 0f); switch (rand) { case 0: Purse.AddMoney(0, 100); break; case 1: Purse.AddMoney(5000); break; case 2: Purse.AddMoney(15000, 100); break; } foreach (var level in LevelPages) { level.UpdateMoney(); } yield return(new WaitForSeconds(TIME_DELAY)); Close(); }