JeuWeb - Crée ton jeu par navigateur

Version complète : Map dans un fichier
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Je suis trop fatigué pour analyser tout ça, mais à mon avis tu devrais te tourner vers une solution de stockage par fichier XML. Il te sera bien plus facile de raisonner avec des nœuds, attributs et autres. Il te sera donc bien plus aisé de maîtriser tes boucles.

Exemple avec ce fichier XML qui permet de générer cette carte. Les cases sont moins nombreuses mais l'idée y est, le traitement revient au même. Wink


Sephi-Chan
Salut,

Je n'ai pas bien saisi comment ton personnage devait se déplacer, (tu changes le $pos ?)...

Mais quoiqu'il en soit, tu devrais copier/coller ceci à la place de ton tableau, c'est l'équivalent (sauf petites erreurs de syntaxe ?), et ça sera plus facile pour tes tests, et moins fatiguant pour tes mains :

Code PHP :
<?
echo '<table border="3" cellspacing="1">';
for (
$x=-5;$x<6;++$x)
{
echo
'<tr>';
for (
$y=-5;$y<6;++$y)
{
$modul = $x*11+$y;
if (
$modul==0)
$contenu = '<img src="image/me.gif">';
else
$contenu = '&nbsp;';

echo
'<td background="image/'.recup_img($r[$pos + $modul]).'" class="map">'.$contenu.'</td>';
}
echo
'</tr>';
}
echo
'</table>';
?>
+
Citation :Je n'ai pas bien saisi comment ton personnage devait se déplacer, (tu changes le $pos ?)...

Oui, tu change $pos. La position n'est pas un X,Y, mais le numéro d'un caractère de la chaine ... chaine qui serait transformé en map...

Merci pour le tableau, seulement sa ne corrige pas l'erreur :rip:


Citation :Exemple avec ce fichier XML qui permet de générer cette carte. Les cases sont moins nombreuses mais l'idée y est, le traitement revient au même. 16

Heu... tu dis que le traitement revient au même, seulement le résultat n'est pas le même.

Avec un fichier texte comme celui que j'ai utilisé, visualié la map dans sont ensemble étais très rapide. De même son encodage l'étais aussi... Avec un fichier comme le tient, il me faudras entré toute les coordonné à la mains...

Bref, oui un fichier XML (faudra que j'apprend comment sa marche) mais si il y a moyen de le faire en fichier comme au dessus (ce dont je doute de plus en plus) je serais preneur.

Amicalement,

phenix
phenix a écrit :Oui, tu change $pos. La position n'est pas un X,Y, mais le numéro d'un caractère de la chaine ... chaine qui serait transformé en map...
Souhaites-tu que la map bouge autour de ton perso, ou bien est-ce le perso qui bouge sur une map fixe ?
le perso bouge sur une map fixe.
Dans ce cas, je ne comprend pas pourquoi tes cases (fixes) contiennent la variable $pos...
Que dirais-tu d'un truc dans ce genre ? :
Code PHP :
<?

$pos
=//ce que tu veux entre 1 et 121;

echo '<table border="3" cellspacing="1">';
for (
$x=0;$x<11;++$x)
{
echo
'<tr>';
for (
$y=1;$y<12;++$y)
{
$modul = $x*11+$y;
if (
$modul==$pos)
$contenu = '<img src="image/me.gif">';
else
$contenu = '&nbsp; ';

echo
'<td background="image/'.recup_img($r[$modul]).'" class="map">'.$contenu.'</td>';
}
echo
'</tr>';
}
echo
'</table>';



?>

+
C'est persque bon, seulement:

- la première case est sauté...

- ma dernière n'est pas lue...

:respect:

Ha mon avis c'est le boucle qui ne vont pas, seulement j'arrive pas encore a débuggé...

Merci pour ton aide.
Dans ce cas, la boucle $y doit peut-être être comme celle des $x:
for ($y=0;$y<11;++$y)
A+ :-)