Bonjour,
Je me permets de vous demander votre aide, parce que je suis un peu perdue (et désespérée !)
J'ai programmé un jeu de de bataille de carte, et tout va bien.
Tout va bien, jusqu'à ce que je décide de rentrer les 32 images nécessaires. Et là, c'est la cata.
Je rentre donc les 32 cartes (ce qui est déjà en soit une épreuve, parce que c'est super long), et il me renvoie un message d'erreur "URL undefined"
Sinon, le tout tourne bien, si je remplace les images par une fonction "rectangle".
Alors je sais que l'environnement sur lequel je travaille est propre à l'université de Nantes, mais vous êtes clairement ma dernière chance pour que mon projet marche avant la restitution de demain.
Je vous remercie d'avance.
DrawImage(readFile("Data/1coeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/7coeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/8coeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/9coeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/10coeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/damecoeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/roicoeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/valetcoeur.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/7carreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/8carreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/9carreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/10carreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/ascarreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/damecarreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/roicarreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/valetcarreau.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/7pique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/8pique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/9pique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/10pique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/aspique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/damepique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/roipique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/valetpique.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/7trefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/8trefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/9trefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/10trefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/astrefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/dametrefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/roitrefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/valettrefle.jpg"), x0, y0, l0, h0); DrawImage(readFile("Data/1coeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/7coeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/8coeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/9coeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/10coeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/damecoeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/roicoeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/valetcoeur.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/7carreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/8carreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/9carreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/10carreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/ascarreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/damecarreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/roicarreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/valetcarreau.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/7pique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/8pique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/9pique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/10pique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/aspique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/damepique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/roipique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/valetpique.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/7trefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/8trefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/9trefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/10trefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/astrefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/dametrefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/roitrefle.jpg"), x1, y1, l0, h0); DrawImage(readFile("Data/valettrefle.jpg"), x1, y1, l0, h0); var x0 = 58, y0 = 102; // carte joueur 1 (nous) var x1 = 400, y1 = 102; // carte ordi var l0 = 50, h0 = 100; // dimension carte var nouveauTour = true; var etape = 1; var deb1 = 0, fin1 = 15; var deb2 = 0, fin2 = 15; var cartegagne = 0; // Le paquet de carte var tab = Tableau(32); var dist = Tableau(32); InitialiserTableau(dist, false); //est-elle distribuée ? var j = 0; for(var i = 1; i < 9; i++){ tab[j] = "Data/"+i+"-coeur.jpg"; j++; } for(var i = 1; i < 9; i++){ tab[j] = "Data/"+i+"-carreau.jpg"; j++; } for(var i = 1; i < 9; i++){ tab[j] = "Data/"+i+"-trefle.jpg"; j++; } for(var i = 1; i < 9; i++){ tab[j] = "Data/"+i+"-pique.jpg"; j++; } AfficherTableau(tab); // Recuperer la valeur de la carte pour comparer function valeur(tab, i){ return CaractereEn(tab[i], 5); } // Afficher une image : DrawImage(URL, X, Y, largeur, hauteur); //DrawImage(readFile(tab[0]), 50, 50, 150,150); function affichageBase(){ Initialiser(); if(nb1 > 0){ DrawImage(readFile ("Data/cartededos.jpg") ,x0, y0,l0 ,h0); //dos } if(nb2 > 0){ DrawImage(readFile ("Data/cartededos.jpg") ,x1, y1, l0 ,h0); //dos } } function affichageJouer1(){ Initialiser(); if(nb1 > 1){ DrawImage(readFile ("Data/cartededos.jpg") ,x0, y0,l0 ,h0); //dos } if(nb2 > 1){ DrawImage(readFile ("Data/cartededos.jpg") ,x1, y1,l0 ,h0); //dos } //DrawImage(readFile(j1[(deb1+cartegagne) % 32]), x0, y0, l0,h0); DrawImage (readFile(j1[(deb1+cartegagne) % 32]), x0+100, y0+100, l0 ,h0 ); DrawImage (readFile(j2[(deb1+cartegagne) % 32]), x1+100, y1+100, l0 ,h0 ); } function affichageJouer2(){ Initialiser(); if(nb1 > 2){ DrawImage(readFile ("Data/cartededos.jpg") ,x0, y0,l0 ,h0); //dos } if(nb2 > 2){ DrawImage(readFile ("Data/cartededos.jpg") ,x1, y1,l0 ,h0); //dos } DrawImage (readFile(j1[deb1]), x0+100, y0+100, l0 ,h0 ); DrawImage (readFile(j2[deb2]), x1+100, y1+100, l0 ,h0 ); DrawImage(readFile ("Data/cartededos.jpg") ,x0+150, y0+100,l0 ,h0); //dos DrawImage(readFile ("Data/cartededos.jpg") ,x1+50, y1+100,l0 ,h0); //dos } function affichageJouer3(){ Initialiser(); if(nb1 > 2){ DrawImage(readFile ("Data/cartededos.jpg") ,x0, y0,l0 ,h0); //dos } if(nb2 > 2){ DrawImage(readFile ("Data/cartededos.jpg") ,x1, y1,l0 ,h0); //dos } DrawImage (readFile(j1[deb1]), x0+100, y0+100, l0 ,h0 ); DrawImage (readFile(j2[deb2]), x1+100, y1+100, l0 ,h0 ); DrawImage(readFile ("Data/cartededos.jpg") ,x0+150, y0+100,l0 ,h0); //dos DrawImage(readFile ("Data/cartededos.jpg") ,x1+50, y1+100,l0 ,h0); //dos DrawImage (readFile(j1[(deb1+cartegagne+2) % 32]), x0+200, y0+100, l0 ,h0 ); DrawImage (readFile(j2[(deb2+cartegagne+2) % 32]), x1+0, y1+100, l0 ,h0 ); } // Les paquets des deux joueurs var j1 = Tableau(32); InitialiserTableau(j1, 0); var j2 = Tableau(32); InitialiserTableau(j2, 0); var nb1 = 0, nb2 = 0; //nb de cartes /* On distribue les cartes aux 2 joueurs*/ var n = Hasard(32); var j = 0; // Paquet alétoire while(nb1 < 16){ // Carte au joueur 1 while(dist[n]){ n = Hasard(32); } j1[j] = tab[n]; dist[n] = true; // Carte au joueur 2 while(dist[n]){ n = Hasard(32); } j2[j] = tab[n]; dist[n] = true; j++; nb2++; nb1++; } // Pour tester avec joueur 1 gagne 16 fois d'affilées /* while(nb1 < 16){ // Carte au joueur 1 j1[j] = "Data/8-coeur.jpg"; // Carte au joueur 2 j2[j] = "Data/2-coeur.jpg"; j++; nb2++; nb1++; }*/ affichageBase(); function MouseClick(x,y){ //début du si if(((x > x0 && x < x0+l0) && (y > y0 && y < y0+h0)) && (nb1 < 32) && (nb2 < 32)){ if(nouveauTour){ affichageBase(); nouveauTour = false; } else{ // Première carte posée if(etape == 1){ i1 = deb1 + cartegagne; i1 = i1 % 32; i2 = deb2 + cartegagne; i2 = i2 % 32; affichageJouer1(); if(valeur(j1,i1) > valeur(j2,i2)){ nouveauTour = true; for(var k = 0; k <= cartegagne; k++){ // Il gagne les cartes d'un des tours en jeu fin1 = (fin1 + 1) % 32; j1[fin1] = j1[deb1]; j1[deb1] = 0; fin1 = (fin1 + 1) % 32; j1[fin1] = j2[deb2]; j1[deb2] = 0; // Modification des indices et on remets dans les bornes du tableau deb1 = (deb1 + 1) % 32; deb2 = (deb2 + 1) % 32; // Recompte le nombre de cartes nb1 = nb1 + 1; nb2 = nb2 - 1; } cartegagne = 0; } else if(valeur(j1,i1) < valeur(j2,i2)){ nouveauTour = true; for(var q = 0; q <= cartegagne; q++){ // Il gagne les cartes d'un des tours en jeu fin2 = (fin2 + 1) % 32; j2[fin2] = j2[deb2]; j2[deb2] = 0; fin2 = (fin2 + 1) % 32; j2[fin2] = j1[deb1]; j2[deb1] = 0; // Modification des indices deb2++; deb1++; // On remets dans les bornes du tableau deb1 = deb1 % 32; deb2 = deb2 % 32; // Recompte le nombre de cartes nb1 = nb1 - 1; nb2 = nb2 + 1; } cartegagne = 0; } else{ etape++; cartegagne++; } } else if(etape == 2){ while(nb1 < 3){ fin1 = (fin1 + 1) % 32; j1[fin1] = j2[deb2]; deb2 = (deb2 + 1) % 32; nb1++; nb2--; } while(nb2 < 3){ fin2 = (fin2 + 1) % 32; j2[fin2] = j1[deb1]; deb1 = (deb1 + 1) % 32; nb2++; nb1--; } affichageJouer2(); etape++; cartegagne++; } else if(etape == 3){ affichageJouer3(); i1 = deb1 + cartegagne; i1 = i1 % 32; i2 = deb2 + cartegagne; i2 = i2 % 32; if(valeur(j1,i1) > valeur(j2,i2)){ nouveauTour = true; etape = 1; for(var d = 0; d <= cartegagne; d++){ // Il gagne les cartes d'un des tours en jeu fin1 = (fin1 + 1) % 32; j1[fin1] = j1[deb1]; j1[deb1] = 0; fin1 = (fin1 + 1) % 32; j1[fin1] = j2[deb2]; j1[deb2] = 0; // Modification des indices et on remets dans les bornes du tableau deb1 = (deb1 + 1) % 32; deb2 = (deb2 + 1) % 32; // Recompte le nombre de cartes nb1 = nb1 + 1; nb2 = nb2 - 1; } cartegagne = 0; } else if(valeur(j1,i1) < valeur(j2,i2)){ nouveauTour = true; etape = 1; for(var t = 0; t <= cartegagne; t++){ // Il gagne les cartes d'un des tours en jeu fin2 = (fin2 + 1) % 32; j2[fin2] = j2[deb2]; j2[deb2] = 0; fin2 = (fin2 + 1) % 32; j2[fin2] = j1[deb1]; j2[deb1] = 0; // Modification des indices deb2++; deb1++; // On remets dans les bornes du tableau deb1 = deb1 % 32; deb2 = deb2 % 32; // Recompte le nombre de cartes nb1 = nb1 - 1; nb2 = nb2 + 1; } cartegagne = 0; } else{ cartegagne++; etape = 1; } } } //fin du si } //sinon si j1 a gagné //sinon j2 a gagné //Initialiser(); //Text(x de départ, y, "chaine a afficher", "color"); }
Afficher la suite