Erruer code java script inconnue

Erruer code java script inconnue - Javascript/Node.js - Programmation

Marsh Posté le 23-06-2019 à 19:29:24    

Bonjour, voici mon problème:Je vous partage une partie de mon code (qui est mauvais):
 
 
function ennemiFight(ennemi,vitesseEnnemi,degatsEnnemi,vieEnnemi){
 
 var tirage = math.random()
 
 if (tirage <0.1 ){
this.ennemi=="loup"}
 
 else if (tirage >0.1){
 if(tirage<0.18){
 this.ennemi=="squelette"}}
 
 else if (tirage>0.18){
 if (tirage <0.38){
 this.ennemi=="humain"}}
 
 else if (tirage >0.38){
 if (tirage<0.50){
this.ennemi=="berserker"}}
 
 else if (tirage >0.50){
 if (tirage<0.54){
this.ennemi=="harpie"}}
 
 else if (tirage >0.54){
 if (tirage<0.74){
this.ennemi=="dragon"}}
 
 else if (tirage >0.74){
 if (tirage<0.80){
this.ennemi=="orc"}}
 
 else if (tirage >0.80){
 if (tirage<0.90){
this.ennemi=="cavalier"}}
 
 else if (tirage >0.90){
 if (tirage<1){
this.ennemi=="sorciere"}}
 
 
  if (this.ennemi=="loup" ){
  this.vitesseEnnemi=9;
  this.degatsEnnemi=10;
  this.vieEnnemi=50;
  }
   
  if (this.ennemi=="squelette" ){
  this.vitesseEnnemi=4;
  this.degatsEnnemi=10;
  this.vieEnnemi=50;
  }
   
  if (this.ennemi=="humain" ){
  this.vitesseEnnemi=6;
  this.degatsEnnemi=10;
  this.vieEnnemi=50;
  }
   
  if (this.ennemi=="berserker" ){
  this.vitesseEnnemi=5;
  this.degatsEnnemi=10;
  this.vieEnnemi=50;
  }
   
  if (this.ennemi=="harpie" ){
  this.vitesseEnnemi=4.5;
  this.degatsEnnemi=50;
  this.vieEnnemi=70;
  }
   
  if (this.ennemi=="dragon" ){
  this.vitesseEnnemi=8;
  this.degatsEnnemi=10;
  this.vieEnnemi=100;
  }
   
  if (this.ennemi=="orc" ){
  this.vitesseEnnemi=4;
  this.degatsEnnemi=10;
  this.vieEnnemi=70;
  }
   
  if (this.ennemi=="cavalier" ){
  this.vitesseEnnemi=11;
  this.degatsEnnemi=10;
  this.vieEnnemi=55;
  }
   
  if (this.ennemi=="sorciere" ){
  this.vitesseEnnemi=4.5;
  this.degatsEnnemi=10;
  this.vieEnnemi=40;
  }
  console.log(ennemiFight);
}
 
 
Le problème:Le console.log ne renvoie ...Rien ni erreur ni donnée.
Je pense qu'il faut que je rajoute un var avec les données dans la parenthèse du début de la fonction.Mais je ne sais pas comment faire.Quelqu'un a une idée?

Reply

Marsh Posté le 23-06-2019 à 19:29:24   

Reply

Marsh Posté le 23-06-2019 à 20:55:16    

Et en plus dans la console ...Rien .On n affiche aucune info type vitesse=4.5 ou degatsEnnemi=10

Reply

Marsh Posté le 23-06-2019 à 22:21:14    

1- C'est du Java ou du Javascript ? Les deux n'ont rien à voir.
 
2- Tu ne risques pas de renvoyer quelque chose avec console.log car tu demandes d'afficher une fonction qui ne renvoie rien. Pour qu'une fonction renvoie quelque chose il faut utiliser le mot clé "return" suivi de ce que doit renvoyer la fonction. Attention, lorsque la fonction arrive à ce mot clé elle est immédiatement quittée, il ne faut donc pas utiliser ce mot clé avant d'avoir réalisé tout ce que tu voulais dans ta fonction.
Ex :

Code :
  1. function maFonction(monParametre) {
  2.   if(monParametre == 0) {
  3.     return monParametre;
  4.     monParametre = 9; //non exécuté car la fonction a été quitté à la ligne précédente
  5.   } else {
  6.     monParametre = monParametre + 1;
  7.     return monParametre;
  8.   }
  9. }
  10. var resultat = maFonction(3);
  11. console.log(resultat);


 
3- Les "if ... else if ..." sont réalisés dans l'ordre, l’exécution s'arrête dès qu'une condition est vraie, tu n'as donc pas besoin de vérifier si la valeur est supérieure à la précédente condition puisque si elle ne l'était pas alors tu aurais exécuté la précédente condition et non les suivantes.
 
4- Tu débutes visiblement, dans ton précédent sujet je te conseillais d'utiliser un tableau et une boucle, cela va te permettre de grandement diminuer ton nombre de lignes. Tu ne maitrises peut-être pas encore ces notions mais elles sont essentielles et font parti de ce qu'un débutant doit apprendre.
 
5- Pour plus de clarté, je te conseille de définir d'abord tous les ennemis et leurs propriétés pour ensuite ne sélectionner que celui qui sera tiré au sort.


Message édité par MaybeEijOrNot le 23-06-2019 à 22:27:53

---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed