Relecture JavaScript
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Relecture JavaScript



  1. #1
    KdRWaylander

    Relecture JavaScript


    ------

    Bonjour !

    Ne connaissant personne dans mon entourage direct pour me relire et m'expliquer mes erreurs, je fais appel à vous !
    Je me suis mis récemment à Unity3D, dans lequel on peut écrire -entre autre- des scripts en JS ; mais bien évidemment, ça ne marche pas du premier coup ! J'ai déjà corrigé quelques erreurs de mon propre chef mais il en reste quelques unes qui me résistent ...

    Je suis sous Windows 7, le code est compilé par MonoDevelop-Unity qui est l'éditeur interne à Unity.
    Voici mon bout de code (Je sais c'est pas du code de haut vol mais c'est mon premier script)

    Code:
    #pragma strict
    
    var nomHeros:String = "Link";
    var nomEnnemi:String = "Armos";
    var pdvMax:int = 100;
    
    function Start () {
    	print("Le combat commence !");
    	while(Heros.pdv >= 10 && Ennemi.pdv >= 10){
    		print(Hero.nom + " a " + Hero.pdv + " pdv " + " ---- " + Ennemi.nom + " a " + Ennemi.pdv + " pdv");
    		Heros.attaque();
    		Ennemi.attaque();
    	}
    	print("Le combat est terminé !");
    	if (Heros.pdv >= Ennemi.pdv){
    		print(Heros.nom + " remporte la victoire !");
    	}else{
    		print(Ennemi.nom + " remporte la victoire ...");
    	}
    }
    
    class Personnage
    {
    	var pdv:int = pdvMax;
    	var nom:String;
    	
    	function Personnage(){
    	
    	}
    }
    
    class Heros extends Personnage
    {
    	nom = nomHeros;
    	
    	function Heros(){
    	
    	}
    	
    	function attaque(){
    		var aleat:int = Random.Range(1,5);
    		if aleat = 5{
    			print("L'attaque à réussi ! " + nom + " inflige 10 de dégats à " + Ennemi.nom);
    			Ennemi.pdv -= 10;
    		}else{
    			print("L'attaque à échoué ...");
    		}
    	}
    }
    
    class Ennemi extends Personnage
    {
    	nom = nomEnnemi;
    	
    	function Ennemi(){
    	
    	}
    	
    	function attaque(){
    		var aleat:int = Random.Range(1,5);
    		if aleat = 5{
    			print("L'attaque à réussi ... " + nom + " inflige 10 de dégats à " + Heros.nom);
    			Heros.pdv -= 10;
    		}else{
    			print("L'attaque à échoué !");
    		}
    	}
    }
    Les erreurs que le compilateur trouve sont en PJ
    Le but du script est de simuler un combat entre deux personnages en POO, j'ai déclaré 3 variables tout en haut pour pouvoir modifier les paramètres principaux. Les adversaires attaquent chacun à leur tour et ont une chance sur cinq d'infliger 10 de dégats.

    Merci !

    -----
    Images attachées Images attachées  

  2. #2
    Arzhur

    Re : Relecture JavaScript

    bonjour,


    A priori y'a que des soucis de parenthèse....tu devrais pouvoir les trouver.

  3. #3
    KdRWaylander

    Re : Relecture JavaScript

    Salut,

    J'ai trouvé pour l'instant la solution pour deux erreurs : j'ai passé le changement de valeur de ma variable 'nom' dans la fonction propriétaire plutôt qu'au milieu de la classe au même niveau que les fonctions.

    Il me reste par contre toujours des erreurs, apparemment syntaxiques, sur ma boucle if. Ce qui m'étonne c'est que la même boucle dans l'autre classe (qui fais la même chose, y'a juste les noms des variables qui changent) ne soulève, elle, pas d'erreur ? Du coup la je bloque ...
    Images attachées Images attachées  

  4. #4
    Arzhur

    Re : Relecture JavaScript

    A part la faute sur le "=", je vois pas en effet...

  5. A voir en vidéo sur Futura
  6. #5
    Bluedeep

    Re : Relecture JavaScript

    Citation Envoyé par KdRWaylander Voir le message
    boucle if
    "boucle if",

    sinon '=' au lieu de '==';

Discussions similaires

  1. Javascript : Intégrer une variable javascript dans un champ de formulaire html
    Par squal31 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 03/08/2014, 11h15
  2. Relecture d'un FPGA
    Par joseph20480 dans le forum Électronique
    Réponses: 4
    Dernier message: 14/09/2011, 08h46