03-04-2007, 10:58 AM
Code PHP :
<?
include("bdd.php");
session_start();
$x=$_POST['X'];
$y=$_POST['Y'];
$arme_perso= $db->extract_one("SELECT arme FROM membres WHERE id='$id'");////Arme du joueur////
$arme=$arme_perso['arme'];
$portee_tir= $db->extract_one("SELECT distance,degats,calibre FROM armes WHERE id='$arme'");////Info sur l'arme du joueur////
$distance=$portee_tir['distance'];
$degats=$portee_tir['degats'];
$calibre=$portee_tir['calibre'];
$pos_joueur=("SELECT X,Y FROM membres WHERE perso='$id'");/////Ou est le joueur ?////
$X_joueur=$pos_joueur['X'];
$Y_joueur=$pos_joueur['Y'];
$X_max=$X_joueur+$distance; ////On calcule les positions maximum que l'arme peut atteindre en fonction de la position du joueur////
$X_min=$X_joueur-$distance;
$Y_max=$Y_joueur+$distance;
$Y_min=$Y_joueur-$distance;
if ($x>$X_max OR $x<$X_min ) ////On verifie la distance de tir X///
{
$message1.='<center>La position X est supérieur à votre distance Maximal de Tir</center>';
}
else
{
if ($y>$Y_max OR $y<$Y_min ) ////On verifie la distance de tir Y ////
{
$message1.='<center>La position Y est supérieur à votre distance Maximal de Tir</center>';
}
else
{
$message1.='Nous pouvons commencer le tir';
}
}
$_SESSION['message1']=$message1;
header('location: jouer.php');
?>
Voici l'explication :
Ceci est le script de tir pour les joueurs ayants un canon.
Il rentre leurs coordonnés dans une petite zone ( sur un autre formulaire ).
Ensuite on effectue une série de test. Ici j'ai deux problemes.
En premier je verifie si la zoneX visé n'est pas trop loin et ensuite je fais ça pour la zoneY.
Le probleme c'est que si je rentre 0 pour X on me dit que la zone est trop loin !
Le second probleme est que quoi qu'il se passe la zoneY visé est trop loin
Je ne vois pas d'où vient mon probleme :non:
Merci d'avance pour votre aide