28-02-2007, 03:52 PM
Après correction, tjrs la page blanche
Je remet le script ici, si je trouve, je vous tiendrais au courant
Encore merci de votre aide
Je remet le script ici, si je trouve, je vous tiendrais au courant
Encore merci de votre aide
Code PHP :
<?
include('bdd.php');
@session_start();
$id=$_SESSION['id'];
$perso=$_SESSION['perso'];
include('function.php');
$type=$dep[0];
$message1='';
$X =$_POST['X'];
$Y =$_POST['Y'];
if($X=="" || $Y=="") ////Les champs sont'ils remplient ?///
{
$message1.='<center>Vous devez obligatoirement rentrer des coordonnées </center>';
}
else
{
$distance = $db->extract_one("SELECT arme FROM membres WHERE id='$id'");
$id_arme=$distance['arme'];
$portee = $db->extract_one("SELECT distance FROM armes WHERE id='$id_arme'");
$portee_max=$portee['distance'];
$position_joueur = $db->extract_one ("SELECT X,Y FROM map WHERE perso='id'");
$X1=$position_joueur['X'];
$Y1=$position_joueur['Y'];
$portee_X = $X-$X1;
$portee_Y = $Y-$Y1;
if($portee_X>$distance OR $portee_Y>$distance )/////Le joueur peut-t-il tirez aussi loin ?////
{
$message1.='<center>Votre canon ne tir pas aussi loin que ça !</center>';
}
else
{
switch($type)
{
case 'perso':
//info sur le perso
$perso = $db->extract_one("SELECT arme,attaque,camp FROM membres WHERE id='$id'");
$id_arme=$perso['arme'];
$attaque=$perso['attaque'];
$camp=$perso['camp'];
$armes = $db->extract_one("SELECT degats,calibre FROM armes WHERE id='$id_arme'");
$degats=$armes['degats'];
$calibre=$armes['calibre'];
///Info zone ciblé
$zone_cible = $db->extract_one("SELECT perso,bat FROM map WHERE X='$X' AND Y='$Y'");
$perso=$zone_cible['perso'];
$bat=$zone_cible['bat'];
if($bat==0 AND $perso==0 )///Si la zone ne contient pas de perso ou de batiment///
{
if($calibre=>100 )///Si le calibre de l'arme est supérieure ou égale à 100
{
$modif_terrain = $db->extract_one("SELECT terrain FROM map WHERE X='$X' AND Y='$Y'");
$anc_terrain=$modif_terrain['terrain'];
$nouv_terrain = $db->extract_one("SELECT modif FROM terrain WHERE id='$anc_terrain'");
$modif=$nouv_terrain['terrain'];
$attaque_restant=$attaque-1;
if($attaque!='0')
{
$sql = ("UPDATE map SET terrain= '$modif' WHERE X='$X' AND Y='$Y'");
$sql = ("UPDATE membres SET attaque = '$attaque_restant' WHERE id='$id'");
$message1.='<center>Vous avez touché la case '.$X.'/'.$Y.'</center>';
}
else
{
$message1.='<center>Vous n\'avez plus d\'attaque.</center>';
}
}
}
else
{
if($bat==1 )///Si la case visé contient un batiment
{
$bat_cible = $db->extract_one("SELECT bat FROM map WHERE X='$X' AND Y='$Y'");
$bat=$bat_cible['bat'];
$bat1 = $db->extract_one("SELECT resistance,camp FROM batiments WHERE id='$bat'");
$resistance=$bat1['resistance'];
$camp=$bat1['camp'];
$nouvelle_resistance = $resistance-$degats;
$attaque_restant=$attaque-1;
if($attaque!='0')
{
$sql = "UPDATE batiments SET resistance = '$nouvelle_resistance' WHERE id='$bat'";
$camp_joueur = $db->extract_one("SELECT camp FROM membres WHERE id='$id'");
if ($camp==$camp_joueur) $gain_xp=rand(-2,0);
if ($camp!=$camp_joueur) $gain_xp=rand(1, 3);
xp($gain_xp,$id);
$message1.='<center>Vous avez touché la case '.$X.'/'.$Y.' Nos premiéres Lignes rapportent que vous avez endommagé un batiments.<br>Vous gagnez '.$gain_xp.' Xp\'s</center>';
}
else
{
$message1.='<center>Vous n\'avez plus d\'attaque.</center>';
}
}
else
{
if($perso==1 )///Si la case visé contient un perso
{
$qui_cible = $db->extract_one("SELECT perso FROM map WHERE X='$X' AND Y='$Y'");
$cible_perso = $db->extract_one("SELECT pv,camp FROM membres WHERE id='$perso'");
$pv_cible=$perso_cible['pv'];
$camp=$perso_cible['camp'];
$nouveau_pv=$pv-$degats;
$attaque_restant=$attaque-1;
if($attaque!='0')
{
$sql = "UPDATE membres SET pv = '$nouveau_pv' WHERE id='$perso'";
$req = mysql_query($sql) or die(mysql_error());
$sql = "UPDATE membres SET attaque = '$attaque_restant' WHERE id='$id'";
$req = mysql_query($sql) or die(mysql_error());
$message1.='<center>Vous avez touchez la case '.$X.'/'.$Y.' avec '.$degats.' de dégats.</center>';
if ($camp==$camp_cible) $gain_xp=rand(-2,0);
if ($camp!=$camp_cible) $gain_xp=rand(3, 5);
xp($gain_xp,$id);
$message1.='<center><br>Vous gagnez '.$gain_xp.' Xp\'s</center>';
////Si le perso meurt
if($pv_restant<='0' )
{
$message1.='<center>Celui-ci s\'écroule par terre, il est mort...</center>';
////On retire la cible de la map
$sql = "UPDATE map SET perso = '0' WHERE perso='$id_cible'";
$req = mysql_query($sql) or die(mysql_error());
/////On met a jour les pv's et le nombre de mort de la victime
$sql = "UPDATE membres SET mort = mort+1 ,pv = pv_max WHERE id='$id_cible'";
$req = mysql_query($sql) or die(mysql_error());
////On met a jour les Xp's si necessaire
$mort1 = $db-> extract_one("SELECT mort FROM membres WHERE id='$id_cible'");
$mort = $mort1['mort'];
if($mort==10)
{
$cible1 = $db-> extract_one("SELECT xp FROM membres WHERE id='$id_cible'");
$xp=$cible1['xp'];
$perte_xp=$xp * 20/100;
$new_xp=$xp-$perte_xp;
$sql = "UPDATE membres SET xp = '$new_xp' ,mort = '0' WHERE id='$id_cible'";
$req = mysql_query($sql) or die(mysql_error());
}
////On met a jour le nombdre de victime du joueur.
$sql = "UPDATE membres SET victime = victime+1 WHERE id='$id'";
$req = mysql_query($sql) or die(mysql_error());
}
}
else
{
$message1.='<center>Vous n\'avez plus d\'attaque.</center>';
}
}
}
}
}
break;
}
}
$_SESSION['message1']=$message1;
header('location: jouer.php');
?>