Есть у меня генерация случайного int ci И если сделать вывод в консоль в этом же классе то оно выводит нормально, но если получать это из другого метода, то оно все время как 0 выводится public class Works : MonoBehaviour } public int ci; public IEnumerator CourierWorkShopColor() { while (true) { System.Random r = new System.Random(); ci = r.Next(0, coloredPrefabs.Length); Debug.Log(ci); spriteRendererSHOP.color = new Color32(prefabColor[ci].r, prefabColor[ci].g, prefabColor[ci].b, 255); yield return new WaitForSeconds(3.5f); } Код public class Works : MonoBehaviour } public int ci; public IEnumerator CourierWorkShopColor() { while (true) { System.Random r = new System.Random(); ci = r.Next(0, coloredPrefabs.Length); Debug.Log(ci); spriteRendererSHOP.color = new Color32(prefabColor[ci].r, prefabColor[ci].g, prefabColor[ci].b, 255); yield return new WaitForSeconds(3.5f); } Тот самый другой метод - public Works works; private void OnCollisionEnter2D(Collision2D coll) { if (coll.gameObject.CompareTag("Shop")) { Debug.Log(works.ci); if (gameObject.tag == works.ci.ToString()) { allVariables.money += 5; works.howMuchEarn += 5; Destroy(gameObject); } Код public Works works; private void OnCollisionEnter2D(Collision2D coll) { if (coll.gameObject.CompareTag("Shop")) { Debug.Log(works.ci); if (gameObject.tag == works.ci.ToString()) { allVariables.money += 5; works.howMuchEarn += 5; Destroy(gameObject); }
Векс, Можно, конечно. В студии Отладка - Привязать Unity. Вроде так, если ты качал специальный пак для юнити
EXOMODE, Да там в другом проеб был, вот решение works = GameObject.Find("Main Camera").GetComponent<Works>();