Bonsoir
Tuto très bon, merci X-Zod
J'avais déjà une isomètrique mais pas "carrée"
En fait la boucle était bizarre et ça faisait un truc pas très régulier.
En plus alourdie par des lignes en plus pour les bugs d'affichages... gestion du pair impair, bref c'était vraiment pas le top ^^.
J'ai voulu essayer mais maintenant plus rien ne s'affiche :pleure2:
J'espère qu'un de vous pourra trouver mon erreur
Tuto très bon, merci X-Zod
J'avais déjà une isomètrique mais pas "carrée"
En fait la boucle était bizarre et ça faisait un truc pas très régulier.
En plus alourdie par des lignes en plus pour les bugs d'affichages... gestion du pair impair, bref c'était vraiment pas le top ^^.
J'ai voulu essayer mais maintenant plus rien ne s'affiche :pleure2:
J'espère qu'un de vous pourra trouver mon erreur
Code PHP :
<?php
function map() {
global $userrow;
ob_start();
$latmax = $userrow['latitude'] + 4; //j
$latmin = $userrow['latitude'] - 4;
$longmax = $userrow['longitude'] + 4;
$longmin = $userrow['longitude'] - 4; //i
$ml_base = 176; // margin left de base (ou de depart c'est la meme chose)
$mt_base = 0; // margin right de base
$latitude = $latmax;
$longitude = $longmin;
while ($latitude >= $latmin) // tant ke lon a pas fait toutes les lignes (car la derniere ligne est -4)
{
$ml = $ml_base; // le margin left de la case que l'on traite actuellement devient celui de base
$mt = $mt_base; //idem
while ($longitude <= longmax) // tant que l'on apas fait toutes les colonnes de cette lignes
{
$map = mysql_query("SELECT nom FROM `inf_map` WHERE latitude='". $latitude ."' AND longitude='". $longitude ."' LIMIT 1");
$maprow = mysql_fetch_assoc($map);
$case = $maprow['nom'];
$bat = mysql_query("SELECT name FROM `batiment` WHERE latitude='". $latitude ."' AND longitude='". $longitude ."' LIMIT 1");
$batrow = mysql_fetch_assoc($bat);
$batmap = $batrow['name'];
$perso = mysql_query("SELECT * FROM `perso` WHERE latitude='". $latitude ."' AND longitude='". $longitude ."' LIMIT 1");
$persorow = mysql_fetch_assoc($perso);
$persomap = $persorow['type_unite'];
if (!empty($case)) {
if ($latitude == $userrow['latitude'] && $longitude == $userrow['longitude']) {
echo '<span style="background-image: url(images/map/terrains/'. $case .'.gif); position: absolute; top: '. $mt .'px; left: '. $ml .'px;"><img src="images/map/unites/'.$userrow['type_unite'].'.gif" /></span>';
}
elseif (!empty($batmap)) {
echo '<span style="background-image: url(images/map/terrains/'. $case .'.gif); position: absolute; top: '. $mt .'px; left: '. $ml .'px;"><img src="images/map/batiments/'.$batmap.'.gif" /></span>';
}
elseif (!empty($persomap)) {
echo '<span style="background-image: url(images/map/terrains/'. $case .'.gif); position: absolute; top: '. $mt .'px; left: '. $ml .'px;"><img src="images/map/unites/'.$persomap.'.gif" title="'.$persorow['id'].' - '.$persorow['name'].' - '.$persorow['type_unite'].' - '.$persorow['camp'].' - '.$persorow['longitude'].' / '.$persorow['latitude'].'"/></span>';
}
else {
echo '<img src="images/map/terrains/'. $case .'.gif" style="position: absolute; top: '. $mt .'px; left: '. $ml .'px;" />';
}
}
$ml += 68; // si vous avez bien suivi le tuto vous comprendrez ce qui se passe ici (changement des atributs css poru decaler la nouvele image)
$mt += 34;
$longitude++;
}
$latitude--;
}
$page = ob_get_contents();
ob_end_clean();
echo '<span id="map">'.$page.'</span>';
}
Merci d'avance, bonne soirée à tous