J'essaie d’accéder à la variable d'un script sur des instances via un Array...
en gros je crée 128 instances d'un prefab sur lequel est appliqué un script,
et je voudrais modifier chaque variable de ces instances séparément en appliquent un array.
Le script sur le prefab: "ScriptOnPrefab"
Code : Tout sélectionner
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScriptOnPrefab : MonoBehaviour
{
public static float Factor = 1;
void Update()
{
Transform PrefabTransform = transform.GetComponent<Transform>();
PrefabTransform.localScale = new Vector3(1, Factor, 1);
}
}
Code : Tout sélectionner
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScriptOnGameObject : MonoBehaviour
{
public GameObject prefab;
private float[] Values = new float[128];
void Start()
{
for (int i = 0; i < 128; i++)
{
Vector3 pos = transform.position + new Vector3(i, 0, 0);
Quaternion rot = Quaternion.Euler(0, 0, 0);
Instantiate(prefab, pos, rot, gameObject.transform);
}
}
void Update()
{
for (int i = 0; i < 128; i++)
{
Values[i] = 1 + i;
}
for (int i = 0; i < 128; i++)
{
// c'est ici que je voudrais appliquer mon array
ScriptOnPrefab.Factor[i] = Values[i];
}
}
}
Quelle est la syntaxe correcte pour appliquer mon array sur les variables des instances ?