JeuWeb - Crée ton jeu par navigateur
Bande grise sur ma map.... - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Bande grise sur ma map.... (/showthread.php?tid=813)



Bande grise sur ma map.... - Kassak - 15-02-2007

Bonjour, alors a partir de la map de carlou, j'y est fait la mienne enfin le début, et la tout l'aprem j'ai essyé de voir d'ou venait les petites bandes qu'il y a sous chaque case de ma map.....

Si vous voulez tester : Mon site

login test
MDP test1

Si vous n'arrivez pas a vous connecter, cliquez sur deconexion et reesayez...

voici mon code :
Code PHP :
<?
mysql_connect
();
mysql_select_db();

$pseudo_joueur = $_SESSION['pseudo'];

//on viens chercher la position du joueur
$requete = mysql_query("SELECT avatar_joueur, posx, posy FROM membre WHERE `pseudo`='$pseudo_joueur'");
$sql = mysql_fetch_array ($requete);
$posx = $sql['posx'];
$posy = $sql['posy'];
$avatar_joueur = $sql['avatar_joueur'];

//Gestion des fleches de déplacement
if (isset($_POST['DIR']))
{
//définitions des directions
switch ($_POST['DIR']){
case
"NO":
$dirx = $posx-1;
$diry = $posy-1;
break;
case
"N":
$dirx = $posx;
$diry = $posy-1;
break;
case
"NE":
$dirx = $posx+1;
$diry = $posy-1;
break;
case
"SO":
$dirx = $posx-1;
$diry = $posy+1;
break;
case
"S":
$dirx = $posx;
$diry = $posy+1;
break;
case
"SE":
$dirx = $posx+1;
$diry = $posy+1;
break;
case
"E":
$dirx = $posx+1;
$diry = $posy;
break;
case
"O":
$dirx = $posx-1;
$diry = $posy;
break;
}

// Vérification de la présence des batiments
$sql = mysql_query('SELECT batiment, posx, posy FROM batiment WHERE posx='.$dirx.' AND posy='.$diry.' ') or die(mysql_error());
while (
$data = mysql_fetch_array($sql)) {
if (empty(
$TabMAP[$data['posx']][$data['posy']]))
$TabMAP[$data['posx']][$data['posy']] = $data['batiment'];
}
mysql_free_result($sql);

// Vérification de la présence des autres joueurs
$sq2 = mysql_query('SELECT pseudo,posx, posy FROM membre WHERE posx='.$dirx.' AND posy='.$diry.' ') or die(mysql_error());
while (
$data = mysql_fetch_array($sq2)) {
if (empty(
$TabMAP2[$data['posx']][$data['posy']]))
$TabMAP2[$data['posx']][$data['posy']] = $data['pseudo'];
}
mysql_free_result($sq2);

if(!empty(
$TabMAP[$dirx][$diry]) or !empty($TabMAP2[$dirx][$diry]) or $dirx==0 or $diry==0 or $dirx==17 or $diry==11)// si on detecte un autre joueur ou un batiment ou un bord de carte
{
echo
'<font color=#ff0000>Vous ne pouvez pas vous placer ici!!</font><br><br>'."\n";//on se deplace pas
}
else {
//si c'est vide
//on change de direction
$posx = $dirx;
$posy = $diry;
//et on update sa position dans la table
mysql_query("UPDATE membre Set posx='$posx', posy='$posy' WHERE `pseudo`='$pseudo_joueur'") or die (mysql_error());
}
}

//Définition de la map
$x_debut=0 ;
$x_fin=16;
$y_debut=0;
$y_fin=10;


/*
Vérification de la présence des autres joueurs:
on va chercher les joueurs qui sont dans le perimetre défini precedement.
*/
$sq2 = 'SELECT avatar_joueur,posx, posy FROM membre WHERE posx between '.$x_debut.' and '.$x_fin.' AND posy between '.$y_debut.' and '.$y_fin.' ORDER BY posx DESC,posy DESC';
$req = mysql_query($sq2) or die(mysql_error());
while (
$data = mysql_fetch_array($req)) {
if (empty(
$TabMAP[$data['posx']][$data['posy']]))
$TabMAP[$data['posx']][$data['posy']] = $data['avatar_joueur'];
}
mysql_free_result($req);

/*
Vérification de la présence des batiments:
on va chercher les batiments qui sont dans le perimetre défini precedement.
*/
$sql = mysql_query('SELECT batiment, posx, posy FROM batiment WHERE posx between '.$x_debut.' and '.$x_fin.' AND posy between '.$y_debut.' and '.$y_fin.' ORDER BY posx DESC,posy DESC') or die(mysql_error());
while (
$data = mysql_fetch_array($sql)) {
if (empty(
$TabMAP2[$data['posx']][$data['posy']]))
$TabMAP2[$data['posx']][$data['posy']] = $data['type_batiment'];
}
mysql_free_result($sql);

//affichage de la carte
echo '<table border="1" cellspacing="0" cellpadding="0">';
echo
'<tr><td align="center" valign="middle">I</td>';

//on affiche les positions x sur la premiere ligne
for($x=$x_debut;$x<=$x_fin;$x++) echo '<td align="center" valign="middle">'.$x.'</td>'."\n";

//on affiche lignes par lignes la position y, les autres joueurs et les batiments
for ($y=$y_debut;$y<=$y_fin;$y++)
{
echo
'<tr ><td align="center" valign="middle" >'.$y.'</td>'."\n";//affichage de la position

for($x=$x_debut;$x<=$x_fin;$x++) {// pour chaque lignes

if($x==$posx && $y==$posy)//si on est sur la position du joueur
echo '<td><img src=image/'.$avatar_joueur.'.gif></td>';//on affiche l'avatar de votre perso
else
if(!empty(
$TabMAP[$x][$y]))//si on tombe sur un autre joueur
echo '<td><img src=image/'.$TabMAP[$x][$y].'.gif></td>';//on affiche l'avatar du joueur
else
if(!empty(
$TabMAP2[$x][$y]))//si on tombe sur un batiment
echo '<td><img src=image/'.$TabMAP2[$x][$y].'.gif></td>';//on affiche l'image du batiment
else
echo
'<td><img src="image/terrain.gif"></td>';//si il n'y a rien...
}
echo
'</tr>';//on ferme la ligne et on passe a la ligne suivate
}
echo
'</tbody></table>';//on ferme la table

?>

C'est quasi celui de Carlou...

En virant mon fichier CSS, j'ai quand meme les bandes, donc ca ne vient pas de la, mais du code...

Merci de m'aider^^


RE: Bande grise sur ma map.... - denisc - 15-02-2007

Hello

Bon, déjà, il y a un </tbody> en trop à la fin... Mais ça doit pas venir de là.

Ajoute la hauteur de tes images dans le <tr height=000> ou <tr style='heidth=000px'> et dans tes images <IMG SRC='...' HEIGHT=000>

Enfin, pour simplifier la relecture du code généré, met des /n après tous les </TD> et </TR>

Après, faut voir...


RE: Bande grise sur ma map.... - carlou - 15-02-2007

met ca avant <html>

Code :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">



RE: Bande grise sur ma map.... - Kassak - 15-02-2007

Yep merci beaucoup ca marche maintenant carlou^^

Je peux savoir ce que ca fait??
Car j'aime bien savoir ce que j'ai corrigé^^


RE: Bande grise sur ma map.... - joshua - 15-02-2007

KassaK: on dit accueil, et pas acceuil ^^
e dis ca pour toi, ca me saute aux yeux sur ta page :p


RE: Bande grise sur ma map.... - Kassak - 15-02-2007

lol merci^^

Ca fait parti des mots que je sais et saurais jamais ecrire:mauvais:


RE: Bande grise sur ma map.... - genosite - 28-02-2007

heu.... il ya aussi

Code PHP :
<?php 
//affichage de la carte
echo '<table border="1" cellspacing="0" cellpadding="0">';

que tu peut remplacer par

Code PHP :
<?php 
echo '<table border="0" cellspacing="0" cellpadding="0">';