JeuWeb - Crée ton jeu par navigateur
[Résolu]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 : [Résolu]Map.... (/showthread.php?tid=707)



[Résolu]Map.... - Pyl - 27-01-2007

Encore moi..
Dites moi si je vous soules :hahahaha:
Bref, hier soir j'ai entrepis de remplacer sur la map l'affichage du pseudo du joueur par l'affichage d'image représentant le perso Smile
J'insere donc dans ma table membre un champ avec pour nom fichier dans lequel on aurat par exemple 'Allemand.gif, Autrichien.gif'
Je vais la manoeuvre necessaire sur mon script pour recuperer le nom de fichier... J'actualise rien... pas d'image pas de pseudo... Pourtant je vois pas ou ça merde Confused

Code PHP :
<?
session_start
();
include(
'zone-page/haut.php');
include(
'zone-page/menu-gauche.php');
include(
'zone-page/droit.php');
include(
'bdd.php');
include(
'reglage.php');
include(
'function.php');

/////Affichage map et insertion////

if(empty($_SESSION['connection'])) session_start();
{
$requete=0;
$perso=$_SESSION['perso'];
$id=$_SESSION['id'];
if(
$_SESSION['connection'])
{
// on regardesi le perso est inseré sur la map
$res = $db->extract_one("SELECT inserer FROM membres WHERE id='$id' ");
$inserer=$res['inserer'];
if(
$inserer=='0') echo '<center>Votre perso n\'est pas encore inseré sur le champ de bataille.<br><br><a href="inserer.php?p=1"> Cliquez-ici pour proceder à son insertion !</center>';
else
{
/////////
//affichage de la map
/////////
//debut definition bord map
$minmap=-10;
$maxmap=9;
//fin definition bord map
?>
<TABLE border="0" cellpadding=0 cellspacing=0 bgcolor="#000000" style="font-family:Verdana, Arial, Helvetica, sans-serif; color:#FFFFFF; font-size:11px;">
<?php
$whereperso
=mysql_fetch_array(mysql_query("SELECT m.X,m.Y,p.vision FROM map as m LEFT OUTER JOIN membres as p ON p.id=m.perso WHERE m.perso='$id'"));
$requete++;
$minXvue=$whereperso['X']-$whereperso['vision'];
$minYvue=$whereperso['Y']-$whereperso['vision'];
$maxXvue=$whereperso['X']+$whereperso['vision'];
$maxYvue=$whereperso['Y']+$whereperso['vision'];
$resultall=mysql_query("SELECT c.perso,c.X,c.Y,c.terrain,c.bat,p.joueur_pseudo,p.fichier,t.fichier,t.tnom FROM map as c LEFT OUTER JOIN membres as p ON c.perso=p.id LEFT OUTER JOIN terrain as t ON t.id=c.terrain WHERE X>='$minXvue' and X<='$maxXvue' and Y>='$minYvue' and Y<='$maxYvue' ORDER BY Y DESC,X ASC");
$requete++;
$nbcase=0;
for (
$y=$maxYvue;$y>=$minYvue;$y--)
{for(
$x=$minXvue;$x<=$maxXvue;$x++)
{if(
$x<=$maxmap AND $y<=$maxmap AND $x>=$minmap AND $y>=$minmap)
{
$result1[$x][$y]=mysql_fetch_assoc($resultall);
}
$nbcase++;
}
}
$x=$minXvue-1;
$y=$maxYvue+1;
for (
$case=0;$case<=$nbcase;$case++)
{if(
$x==($minXvue-1) AND $y==($maxYvue+1))
{
?><tr><td valign="middle" align="center" style="padding:2px;">Y\X</td><?php
}
elseif (
$y==$maxYvue+1)
{
?><td valign="middle" align="center" style="padding:2px;"><?php echo $x; ?></td><?php
$case
--;
}
elseif (
$x==$minXvue-1)
{
?><td valign="middle" align="center"><?php echo $y; ?></td><?php
$case
--;
}
elseif(!isset(
$result1[$x][$y]['terrain']))
{
?><td valign="middle" align="center" bgcolor="#111111">&nbsp;</td><?php
}
else
{if(isset(
$result1[$x][$y]['joueur_pseudo']) AND ($resulta1[$x][$y]['fichier']))
{
?><td onclick="windows.open('http://adresse.com/fiche?mat=<?php echo $joueur['mat']; ?>'); valign="middle" background="image/image_terrain/<?php echo $result1[$x][$y]['fichier']; ?>" align="center" bgcolor="#111111" width="50px" height="50px"><img src="image/<? echo $resulta1[$x][$y]['fichier']; ?>" width="50px\" height="50px\" title="<?php echo $result1[$x][$y]['joueur_pseudo']; ?>">
</td><?php
}
elseif (
$result1[$x][$y]['bat']!=0)
{
?><td valign="middle" align="center" bgcolor="#111111" width="50px" height="50px">base</td><?php
}
else
{
?><td align="center" background="image/image_terrain/<?php echo $result1[$x][$y]['fichier']; ?>" width="50px" height="50px">&nbsp;</td><?php
}
}
$x++;
if (
$x>$maxXvue)
{
?></tr><?php
$x
=$minXvue-1;
$y--;
if (
$y>=$minYvue)
{
?><tr><?php
}
}
}
?>
</table>
<?php
echo $requete;
//fin
if (isset($_SESSION['message1'])) echo'<br><br><fieldset><legend><font color="gray">Attaques/Soins</font></legend><br>'.$_SESSION['message1'].'</fieldset>';
echo
'<br><br><fieldset><legend><font color="gray">Jeu</font></legend><br>';
echo
'<table><tr><td>'; include('tour.php');
$perso=mysql_fetch_array(mysql_query("SELECT xp,pv,pv_max,mvt,mvt_max,attaque,attaque_max,classe FROM membres WHERE id='$id'"));
$mvt=$perso['mvt'];
$mvtmax=$perso['mvt_max'];
$attaque=$perso['attaque'];
$attaquemax=$perso['attaque_max'];
$classe=$perso['classe'];
$carac='';
$carac.='<br><br><b>Mvt :</b> <i>'.$mvt.' sur '.$mvtmax.'</i><br>';
if(
$classe=='Infirmier')
{
$carac.='<b>Soins :</b> <i>'.$attaque.' sur '.$attaquemax.'</i><br>';
}
else
{
$carac.='<b>Attaques :</b> <i>'.$attaque.' sur '.$attaquemax.'</i><br>';
}
echo
$carac;
echo
'</td><td>';
if(
$classe=='Infirmier')
{
include(
'soigner.php');
}
else
{
include(
'attaque.php');
}
echo
'</td><td>'; include('deplacement.php'); echo'</td></tr></table>';
echo
'</fieldset>';
}
}
else
{
echo
'<center>Il faut se connecter pour accéder à cette partie.</center>';
}

}

include(
'zone-page/droit2.php');
?>

A votre bon coeur :'(
Si vous voulez je peux vous mettre le probleme en image ^^


RE: Map.... - Pyl - 27-01-2007

J'avais ça :



Maintenant j'ai ça :
[Image: b5f46459.jpg]

je veux ça :
[Image: df17ab4f.jpg]


RE: Map.... - tashimitsu - 27-01-2007

Bonjour, alors pour sa il te suffit de mettre ta map en image de fond, ensuite tu met l' image des personnages dans les cellules Wink essaye plusieurs chose, le truc c' est que si on te donne le code, tu ny arrivera jamais seul...


RE: Map.... - Pyl - 27-01-2007

j'ai déjà essayé 100 trucs différents :rip:


RE: Map.... - Pyl - 27-01-2007

C'est bon j'ai trouvé Smile