public List <VegetableClass> GetAvailableVegetables() { List <VegetableClass> result = new List <VegetableClass>(); foreach (var vegetable in ProgressManagerComponent.GetVegetablesOnLevel(CurrentLevelNumber)) { if (vegetable != null) { result.Add(vegetable.Clone()); } } return(result); }
void Start() { pullObjects = GetComponent <PullObjects>(); pullObjects.Initiate(); currentLevel = pullObjects.Levels[CurrentLevelSelected.NumberLevel]; int maxVegetables = currentLevel.MaxVegetables; vegetablesOnLevel = ProgressManagerComponent.GetVegetablesOnLevel(CurrentLevelSelected.NumberLevel); foreach (var slot in SlotsVegetables) { slot.transform.GetChild(0).gameObject.SetActive(false); // Empty slot.transform.GetChild(1).gameObject.SetActive(false); // Vegetable slot.transform.GetChild(2).gameObject.SetActive(true); // Lock GetComponent <SoundSettings>().Buttons.Add(slot.transform.GetChild(0).GetComponent <Button>()); GetComponent <SoundSettings>().Buttons.Add(slot.transform.GetChild(1).GetComponent <Button>()); GetComponent <SoundSettings>().Buttons.Add(slot.transform.GetChild(1).transform.GetChild(3).GetComponent <Button>()); } for (int i = 0; i < SelectVegetables.Count; ++i) { SelectVegetables[i].onClick.AddListener(SelectVegetable(i)); GetComponent <SoundSettings>().Buttons.Add(SelectVegetables[i]); } for (int i = 0; i < maxVegetables; ++i) { SlotsVegetables[i].transform.GetChild(0).gameObject.SetActive(true); // Empty SlotsVegetables[i].transform.GetChild(1).gameObject.SetActive(false); // Vegetable SlotsVegetables[i].transform.GetChild(2).gameObject.SetActive(false); // Lock SlotsVegetables[i].transform.GetChild(0).GetComponent <Button>().onClick.AddListener(OpenVegetableSelectionCanvas(i)); SlotsVegetables[i].transform.GetChild(1).GetComponent <Button>().onClick.AddListener(OpenDeteleButton(i)); SlotsVegetables[i].transform.GetChild(1).gameObject.transform.GetChild(3).gameObject.GetComponent <Button>().onClick.AddListener(DeteleVegetable); if (vegetablesOnLevel[i] != null) { SetVegetableAvaliable(SlotsVegetables[i], vegetablesOnLevel[i]); } } CoinsText.text = "" + ProgressManagerComponent.AmountOfMoney; PlayButton.onClick.AddListener(PlayButtonListener); BackButton.onClick.AddListener(BackButtonListener); PreviewButton.onClick.AddListener(PreviewButtonListener); EnablePlayButton(); }
void Start() { CoinsText.text = "" + ProgressManagerComponent.AmountOfMoney; BackButton.onClick.AddListener(backButtonListener); //ProgressManagerComponent.LastAvaliableLevelId = 0; //use this to clear level locks for (int i = 0; i < LevelButtons.Count; i++) { ChangeColor(LevelButtons[i], "DisableLevel"); EnableButton(LevelButtons[i], false); EnableLock(LevelButtons[i], true); AddListenerOpenLevel(LevelButtons[i], i); } for (int j = 0; j < ProgressManagerComponent.LastAvaliableLevelId; j++) { LevelButtons[j].transform.GetChild(2).gameObject.SetActive(true); switch (ProgressManagerComponent.GetStarsOnLevel(j)) { case 1: LevelButtons[j].transform.GetChild(2).GetComponentsInChildren <Button>()[1].interactable = false; LevelButtons[j].transform.GetChild(2).GetComponentsInChildren <Button>()[2].interactable = false; ChangeColor(LevelButtons[j], "OneStars"); break; case 2: LevelButtons[j].transform.GetChild(2).GetComponentsInChildren <Button>()[2].interactable = false; ChangeColor(LevelButtons[j], "TwoStars"); break; case 3: ChangeColor(LevelButtons[j], "ThreeStars"); break; default: break; } EnableButton(LevelButtons[j], true); EnableLock(LevelButtons[j], false); } GameObject.Find("Manager").GetComponent <PullObjects>().Initiate(); if (GameObject.Find("Manager").GetComponent <PullObjects>().Levels.Count > ProgressManagerComponent.LastAvaliableLevelId) { ChangeColor(LevelButtons[ProgressManagerComponent.LastAvaliableLevelId], "NewLevel"); EnableButton(LevelButtons[ProgressManagerComponent.LastAvaliableLevelId], true); EnableLock(LevelButtons[ProgressManagerComponent.LastAvaliableLevelId], false); } }
void Start() { int score = GameObject.Find("Manager").GetComponent <Scores>().Score; int stars = 1; int currentLevel = GameObject.Find("Manager").GetComponent <ObjectManagerScript>().CurrentLevelNumber; int oldStars = ProgressManagerComponent.GetStarsOnLevel(currentLevel); //ProgressManagerComponent.LastAvaliableLevelId = Mathf.Max(GameObject.Find("Manager").GetComponent<ObjectManagerScript>().CurrentLevel + 1, ProgressManagerComponent.LastAvaliableLevelId); //int minScore = GameObject.Find("Manager").GetComponent<Scores>().MinScore; //int maxScore = GameObject.Find("Manager").GetComponent<Scores>().MaxScore; //if (GameObject.Find("Manager").GetComponent<Scores>().Score >= minScore + 0.4 * (maxScore-minScore)) //{ // SecondStar.interactable = true; // stars++; //} //if (GameObject.Find("Manager").GetComponent<Scores>().Score >= minScore + 0.8 * (maxScore - minScore)) //{ // ThirdStar.interactable = true; // stars++; // } // TODO: Add stars logic here foreach (var vegetable in GameObject.Find("Manager").GetComponent <ObjectManagerScript>().AvailableVegetables) { print(vegetable.IsShoted + " " + vegetable.Score); if (!vegetable.IsShoted) { score += vegetable.Score; } } if (score >= GameObject.Find("Manager").GetComponent <ObjectManagerScript>().ScoreForTwoStars) { stars++; SecondStar.interactable = true; } if (score >= GameObject.Find("Manager").GetComponent <ObjectManagerScript>().ScoreForThreeStars) { stars++; ThirdStar.interactable = true; } int receivedCoins = 5; print(ProgressManagerComponent.GetStarsOnLevel(currentLevel)); switch (stars) { case 1: if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 0) { receivedCoins += 5; } break; case 2: if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 0) { receivedCoins += 5; receivedCoins += 10; } else { if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 1) { receivedCoins += 10; } } break; case 3: if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 0) { receivedCoins += 5; receivedCoins += 10; receivedCoins += 15; } else { if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 1) { receivedCoins += 10; receivedCoins += 15; } else { if (ProgressManagerComponent.GetStarsOnLevel(currentLevel) == 2) { receivedCoins += 15; } } } break; } if (score > ProgressManagerComponent.GetScoreOnLevel(currentLevel)) { ProgressManagerComponent.SetScoreOnLevel(currentLevel, score); ProgressManagerComponent.SetStarsOnLevel(currentLevel, stars); } /*int receivedCoins = 5 + 5 + 10 + 15; * switch (oldStars) * { * case 1: * receivedCoins -= 5; * break; * case 2: * receivedCoins -= 5; * receivedCoins -= 10; * break; * case 3: * receivedCoins -= 5; * receivedCoins -= 10; * receivedCoins -= 15; * break; * }*/ ReceivedCoins.text = "" + receivedCoins; ProgressManagerComponent.AmountOfMoney += receivedCoins; CoinsText.text = "" + ProgressManagerComponent.AmountOfMoney; Score.text = Convert.ToString(score); }