public void AddLevelsToQueue(EnvironmentType _type, float _maxTotalWidth) { Assert.AreNotEqual(EnvironmentType.MAX, _type, "Not a valid environemnt"); DifficultyRange difficultyRange = m_availableDifficulties[_type]; float num = 0f; foreach (mg_jr_Level activeLevel in m_activeLevels) { num += activeLevel.LevelDefinition.Size.x; } int num2 = 0; while (num <= _maxTotalWidth) { mg_jr_Level current = AddRandomLevelToQueue(_type, difficultyRange.RandomDifficulty()); num += current.LevelDefinition.Size.x; num2++; } mg_jr_Level value = m_activeLevels.Last.Value; m_activeLevels.RemoveLast(); if (value != null) { value.DestroyLevel(); } num2--; Debug.Log("_maxTotalWidth" + _maxTotalWidth); Debug.Log("loaded turbo levels =" + num2); }
private void LoadLevelDeffinitions(TextAsset[] levelXmls) { foreach (TextAsset xmlLevelDef in levelXmls) { mg_jr_LevelDefinition mg_jr_LevelDefinition2 = new mg_jr_LevelDefinition(); mg_jr_LevelDefinition2.LoadFromXML(xmlLevelDef); EnvironmentTypeAndDifficultyID key = new EnvironmentTypeAndDifficultyID(mg_jr_LevelDefinition2.EnvironmentType, mg_jr_LevelDefinition2.Difficulty); if (!m_levelDefinitions.ContainsKey(key)) { m_levelDefinitions.Add(key, new List <mg_jr_LevelDefinition>()); } m_levelDefinitions[key].Add(mg_jr_LevelDefinition2); DifficultyRange value; if (!m_availableDifficulties.ContainsKey(mg_jr_LevelDefinition2.EnvironmentType)) { value = new DifficultyRange(mg_jr_LevelDefinition2.Difficulty); m_availableDifficulties.Add(mg_jr_LevelDefinition2.EnvironmentType, value); continue; } value = m_availableDifficulties[mg_jr_LevelDefinition2.EnvironmentType]; value.Minimum = Mathf.Min(mg_jr_LevelDefinition2.Difficulty, value.Minimum); value.Maximum = Mathf.Max(mg_jr_LevelDefinition2.Difficulty, value.Maximum); m_availableDifficulties[mg_jr_LevelDefinition2.EnvironmentType] = value; } }
public void AddXtoQueue(EnvironmentType _type, int _numberOfLevelsToAdd) { Assert.AreNotEqual(EnvironmentType.MAX, _type, "Not a valid environemnt"); DifficultyRange difficultyRange = m_availableDifficulties[_type]; for (int i = 0; i <= _numberOfLevelsToAdd; i++) { AddRandomLevelToQueue(_type, difficultyRange.RandomDifficulty()); } }
private void buttonInsertDifficultyRange_Click(object sender, EventArgs e) { DifficultyRange difficultyRangeToAdd = new DifficultyRange(txtInsertDificultyRange.Text); if (difficultyRangeToAdd.Insert()) { MessageBox.Show("Difficulty category added successfully"); } else { MessageBox.Show("Error adding difficulty category"); } }
public void ResetLevelRarity(EnvironmentType _forEnvironment) { Assert.AreNotEqual(EnvironmentType.MAX, _forEnvironment, "Invalid value: " + _forEnvironment); DifficultyRange difficultyRange = m_availableDifficulties[_forEnvironment]; for (int i = difficultyRange.Minimum; i <= difficultyRange.Maximum; i++) { EnvironmentTypeAndDifficultyID key = new EnvironmentTypeAndDifficultyID(_forEnvironment, i); List <mg_jr_LevelDefinition> list = m_levelDefinitions[key]; foreach (mg_jr_LevelDefinition item in list) { item.ResetUsage(); } } }
public void FillQueueWith(EnvironmentType _type, int _numberOfLevelsToFillQueueTo) { Assert.AreNotEqual(EnvironmentType.MAX, _type, "Not a valid environemnt"); if (m_activeLevels.Count >= _numberOfLevelsToFillQueueTo) { DisneyMobile.CoreUnitySystems.Logger.LogWarning(this, "Can't fill queue with level type because queue is full"); return; } DifficultyRange difficultyRange = m_availableDifficulties[_type]; while (m_activeLevels.Count < _numberOfLevelsToFillQueueTo) { AddRandomLevelToQueue(_type, difficultyRange.RandomDifficulty()); } }
private void buttonDeleteDifficulty_Click(object sender, EventArgs e) { DifficultyRange difficultyRangeToDelete = new DifficultyRange(); difficultyRangeToDelete.IdDifficulty = (int)cbbDifficultyRange.SelectedValue; difficultyRangeToDelete.Difficulty = txtCostRangeToUpdateDelete.Text; if (difficultyRangeToDelete.Delete()) { MessageBox.Show("Difficulty category deleted successfully"); } else { MessageBox.Show("Error deleting difficulty category"); } LoadComboBoxDifficultyRange(); }