Bonjour tout le monde ! c'est à nouveau moi pour une question héhé
C'est une question un peu technique, je ne saurais dire si au final il y a une solution particulière associé à Unity ou si c'est une question général pour C#; si je ne suis pas dans la bonne section pas de soucis pour me déplacer, je n'ai pas su trancher entre les deux
Donc voici ma question, imaginons que j'ai un script C# random j'ai 3 variables et que j'ai créé une void random par exemple ici j'ajoute 1:
Si je veux ajouter 1 sur toute mes valeurs il faut appeler autant de fois ma fonction ou en faire une deuxième qui liste 1 par 1 toute mes ValeurX et ajoute 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public class Test : MonoBehaviour { public int Valeur1; public int Valeur2; public int Valeur3; void Start() { } void Update() { } public void AjouteUn(string ChoixValeur) { switch (ChoixValeur) { case "Valeur1": Valeur1 += 1; break; case "Valeur2": Valeur2 += 1; break; case "Valeur3": Valeur3 += 1; break; } } }
C'est fastidieux sur beaucoup de variables, ne peut-on boucler sur les variables directement? du genre:
Bon ici on fait juste une ligne de code qui ajoute 1 mais imaginons que l'on fasse 10 lignes, si je rajoute dans mon jeu 20 valeurs de plus, j'aimerais ne pas avoir 20 cases à rajouter
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public void AjouteUn() { for (int i = 1; i <= 3; i++) { //ici j'invente car c'est justement ce bout de code dont j'aimerais savoir si c'est possible Test.variable("Valeur" + i) += 1; } }
En espérant être assez clair, si ce n'est pas le cas poser moi toute vos questions ^^
Edit: Désolé j'aurais du mieux me relire car au final ce n'était pas très clair, j'ai modifié ça
TontonNico
Partager