public void UpdateSlider(SpawnSlider spawnSlider) { float total = 0; foreach (GameObject sliderGo in _sliderFamily) { SpawnSlider spawnS = sliderGo.GetComponent <SpawnSlider>(); total += spawnS.slider.value; } if (total >= 100) { spawnSlider.slider.value = spawnSlider.slider.value - total + 100; } spawnSlider.label.text = spawnSlider.slider.value.ToString(); }
// Use to process your families. protected override void onProcess(int familiesUpdateCount) { _nest.timer += Time.deltaTime; if (_nest.timer >= _nest.spawnRate) { int rand = Random.Range(0, 100); int total = 0; for (int i = 0; i < _sliderFamily.Count; i++) { SpawnSlider spawnSlider = _sliderFamily.getAt(i).GetComponent <SpawnSlider>(); total += (int)spawnSlider.slider.value; if (rand <= total) { Spawn(spawnSlider.type); break; } } _nest.timer = 0; } }
public void UpdateSlider(SpawnSlider spawnSlider) { MainLoop.callAppropriateSystemMethod("SpawnSliderSystem", "UpdateSlider", spawnSlider); }