public void AddScore(Collider col) { oI = col.gameObject.GetComponent <OrbInfo>(); score += oI.orbValue; scoreText.text = "Score: " + score; int oldHS = PlayerPrefs.GetInt("HighScore", 120); if (score > oldHS) { PlayerPrefs.SetInt("HighScore", score); highScoreText.text = "Best: " + score; } PlayerPrefs.Save(); }
private List <OrbInfo> GetRequiredOrbs(List <Requirement> orbRequirements, Dictionary <string, int> quantityTable) { List <OrbInfo> requiredOrbs = new List <OrbInfo>(); for (int reqIndex = 0; reqIndex < orbRequirements.Count; reqIndex++) { List <string> orbNames = _context.OrbManager.GetOrbNamesMatchingType(orbRequirements[reqIndex].orbType); int required = orbRequirements[reqIndex].quantity; // go through each of those orb names, determine if it's in the quantity table, then extract orbInfo from there for (int orbIndex = 0; orbIndex < orbNames.Count; orbIndex++) { if (required == 0) { break; } string orbName = orbNames[orbIndex]; if (quantityTable.ContainsKey(orbNames[orbIndex])) { int drawn = quantityTable[orbName]; if (drawn == 0) { continue; } Orb orb = _context.OrbManager.GetOrbFromDictionary(orbName); int numToAdd = required / orb.power; if (numToAdd > 0) { required %= orb.power; OrbInfo orbInfo = new OrbInfo(); orbInfo.orb_name = orbName; orbInfo.quantity = numToAdd; requiredOrbs.Add(orbInfo); } } } } return(requiredOrbs); }