[Shooter 2D]Tirer en fonction d'une rotation [C#][RESOLU]

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6216
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: [Shooter 2D]Tirer en fonction d'une rotation [C#][RESOLU]

Message par boubouk50 » 08 Déc 2016 10:43

Ton code mérite d'être relu. Il est redondant et peu factorisé.
Par exemple:

Code : Tout sélectionner

if (right == true) {...} if (right == false) {...}
est maladroit, tu testes 2 fois right alors qu'il ne possède que deux états. Remplace cette 2e condition par un else.

Code : Tout sélectionner

if (right) {...} else {...}
Ensuite, le code est répété plusieurs fois dans tes conditions, tout ce qui est identique devrait apparaître en dehors de la condition.

Code : Tout sélectionner

if (right)//si weaponLateralRight 
{
	Vector2 pos = transform.position;
	Vector2 posCible = player.transform.position;
	... }
else {
	Vector2 pos = transform.position;
	Vector2 posCible = player.transform.position;
	... }
devrait être écrit:

Code : Tout sélectionner

Vector2 pos = transform.position;
Vector2 posCible = player.transform.position;
if (right)//si weaponLateralRight 
{ ... }
else { ... }
Aussi, si tu initialises une variable au départ, (je pense à bool locked = false), tu n'as pas besoin de lui réaffecter false dans tes conditions (vu qu'elles ne sont pas inter-pénétrables: soit l'un soit l'autre)
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Répondre

Revenir vers « Scripting »