public void LancerDeCertainCube(Vector3 DirectionDeDash, int NombreAlancer) { if (MyGDNJ.telekynesysScript.Count >= Mathf.Pow(MyGDNJ.NombreDecube, 3)) { List <int> IndexCeuxQuiSerontExpulser = new List <int>(); Telekynesys[] Expulser = new Telekynesys[NombreAlancer]; Rigidbody[] RBExpulser = new Rigidbody[NombreAlancer]; int Index = 0; while (IndexCeuxQuiSerontExpulser.Count < NombreAlancer) { int toInclude = Random.Range(0, MyGDNJ.telekynesysScript.Count); bool isInclude = false; foreach (int ind in IndexCeuxQuiSerontExpulser) { if (toInclude == ind) { isInclude = true; break; } } if (!isInclude) { IndexCeuxQuiSerontExpulser.Add(toInclude); Expulser[Index] = MyGDNJ.telekynesysScript[toInclude]; RBExpulser[Index] = MyGDNJ.MesPetitsCube[toInclude]; Index++; } } for (int i = 0; i < IndexCeuxQuiSerontExpulser.Count; i++) { MyGDNJ.MesPetitsCube.Remove(RBExpulser[i]); MyGDNJ.telekynesysScript.Remove(Expulser[i]); } foreach (Telekynesys item in Expulser) { item.GO = false;// lui dis d'arreter à la position } foreach (Rigidbody Cubies in RBExpulser) { Cubies.AddForce(DirectionDeDash * ForceDeLancer, ForceMode.Impulse);// lui donne une force pour l'expulser } } else { LancerDeBoule(DirectionDeDash); } }
void createMiniCube(Vector3 cordonnate) // fonction créer le cube { //le parent objet vide GameObject CUBE = GameObject.CreatePrimitive(PrimitiveType.Cube); //creer le cube CUBE.layer = 8; //set le layer du cube CubeExplosions.Add(CUBE); //ajout le game object dans la liste Telekynesys Tele = CUBE.AddComponent <Telekynesys>(); //lui ajoute le scrypte de telekynesis GDNJ.telekynesysScript.Add(Tele); // ajoute la ref dans les data CUBE.transform.localRotation = Quaternion.identity; //set la rotation // à refaire CUBE.transform.position = cordonnate; //change la position CUBE.transform.localScale = Vector3.one * lengthOfNewCube; //met à la bonne taille Rigidbody CB = CUBE.AddComponent <Rigidbody>(); //add la physique Tele.GoToCoordonate(); //lui dis d'aller à ces coordonné GDNJ.MesPetitsCube.Add(CB); //ajoute le cube dans les datas CB.mass = lengthOfNewCube; //met la mass }