- Home /
Individualize variables in elements on list.
Hello.
As I can do for the variable "production", (which is a variable of a list of several elements), if this variable goes beyond 10,000, in a particular element, I detected it and reduced it. That is to say my more simplified question, is how I can make a variable of an element of my list, be detected automatically, without selecting it(Example: recursos[0].producción, recursos[1].producción, I don't see it effective), and individualize it without changing all, as it happens in the following image. I had thought about stopping the for, and following it, but I think it doesn't work.
Thank you. using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TMPro;
public class CaracteristicasMinas : MonoBehaviour
{
[System.Serializable]
public struct Mejoras
{
public int siguienteMejora;
}
[System.Serializable]
public class Minas
{
public Sprite image;
public string nombre;
public float produccion, almacen, multi, mejora, habitantes;
public TextMeshProUGUI panelTexto;
}
public List<Minas> recursos = new List<Minas>();
public void FuncionamientoMinas()
{
for (var i = 0; i < recursos.Count; i++)
{
recursos[i].produccion = recursos[i].produccion + (recursos[i].multi * recursos[i].habitantes);
//recursos[i].produccion = Mathf.Ceil(recursos[i].produccion);
recursos[i].panelTexto.text = recursos[i].produccion.ToString();
if(recursos[i].produccion > 10.000)
{
recursos[i].panelTexto.text = (recursos[i].produccion / 1000).ToString()+"K";
}
if (recursos[i].almacen < recursos[i].produccion)
{
recursos[i].produccion = recursos[i].almacen;
recursos[i].panelTexto.text = recursos[i].produccion.ToString();
}
}
}
}
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Distribute terrain in zones 3 Answers
A node in a childnode? 1 Answer
C# override a destroyed GameObject in a List 1 Answer
List of C# scripting definitions 1 Answer