public void selectAll() { if (allUpgradeRules == null || allUpgradeRules.Count == 0) { string query = "SELECT * FROM " + UPGRADE_TABLE_NAME + ""; SQLiteDataReader mReader = sqlManager.executeReader(query); List <UpgradeRule> ruleList = new List <UpgradeRule>(); if (mReader.Read()) { do { int id = mReader.GetInt32(0); int level = mReader.GetInt32(1); int groundAttackPlus = mReader.GetInt32(2); int airAttackPlus = mReader.GetInt32(3); int healthPlus = mReader.GetInt32(4); int price = mReader.GetInt32(5); int minUserLevel = mReader.GetInt32(6); UpgradeRule unit = new UpgradeRule(id, level, groundAttackPlus, airAttackPlus, healthPlus, price, minUserLevel); ruleList.Add(unit); } while (mReader.NextResult()); } allUpgradeRules = ruleList; } }
//If you want a special unit with special level //If it return empty it means that there is no upgrade rule attached to them (They have no upgrade) public UpgradeRule selectUnitLevelUpgradeRule(int unitID, int unitLevel) { UpgradeRule rule = null; for (int i = 0; i < allUpgradeRules.Count; i++) { if (unitID == allUpgradeRules[i].unitFeatureId && unitLevel == allUpgradeRules[i].level) { rule = allUpgradeRules[i]; break; } } return(rule); }