Accueil Annuaire Articles Liste Forum Jeux Flash Chat Adept JDR Smiles Starconnexion

Team Adept :


Compétence Arme siége

$ok : niveau de la competence
$partie : partie dans la quelle on se trouve
$idperso: identifiant du personnage actif
$nomperso: nom du personnage actif




<?
// cette compétence fait appel aux elements de cartes,à l'animal sur le quel ont est et aux regles de guerre elle est donc interessante.

// on verifit si la partie est soumise aux regles de guerre
           $resultcarte = mysql_query("SELECT combat,Titre,stopwar FROM parties where id=$partie ");
           $row = mysql_fetch_array($resultcarte);
           $coef = $row["combat"];$stopwar = $row["stopwar"];
           echo"cette partie <b>".$row["Titre"]."</b> à pour coefficient de dégats: $coef<br>";

// on récupére les informations sur le personnage
           $resultcarte = mysql_query("SELECT xper, yper,level FROM perso WHERE 1 and id = '$idperso' and actif=1 ");
           $row = mysql_fetch_array($resultcarte);
           $xper = $row["xper"];
           $yper = $row["yper"];
           $level = $row["level"];

// on vérifit que l'on est sur un animal arme de siege (oui je sais...)
           $result = mysql_query("select type from adept_animal where idperso=$idperso and etat='p'");
           $row = mysql_fetch_array($result);
           $deja=$row["type"];
if($deja<>'') {
     echo"Vous avez un moyen de transport : ";
     $result = mysql_query("SELECT id,nom,pv,att FROM vanimal WHERE 1 and id='$deja'");
     $vie = mysql_fetch_array($result);
     $idanimal = $vie["id"];
           $nomanimal = $vie["nom"];
           $att = $vie["att"];
           $vie = $vie["pv"];
     echo"$nomanimal<br>";
}
if ($att<1)
{
     echo"Vous ne pouvez pas agir sans catapulte";finsql();die();
}
// entête de formulaire
debutform(2);
// on fixe les limites de distance de l'arme
           $petitx=$xper-$att;
           $petity=$yper-$att;
           $grandx=$xper+$att;
           $grandy=$yper+$att;
// cible non choisie on affiche le formulaire de choix de la cible
if($cible=="")
     {
     echo"<select name=cible size=1>";
     $resultcarte = mysql_query("SELECT carte.id,carte.koi,carte.comment,carte.vie,carte.x,carte.y,villages.ligue FROM carte,villages where 1 and carte.x >= ".$petitx." and carte.y >= ".$petity." and carte.x <= ".$grandx." and carte.y <= ".$grandy." and carte.skin='$level' and carte.partie=$partie and carte.koi = villages.koi and villages.ligue=1");
     while(list($id,$koi ,$comment,$def,$x,$y ) = mysql_fetch_array($resultcarte))
           {
           $affichetest=$koi;
           $affichetest += 0;
           echo"<option value='$id'>$koi $x,$y ($def % )";
           }
     echo"</select><input type=hidden name=G9boutons value=compet><input type=hidden name=comp value=23><input type=submit value='pilonner' name=bouton></form>";
}
else
{
      // cible choisie on vire un jeton
      mysql_query("update perso set tour=tour-1 where 1 and nomperso = '".$nomperso."'");
     // cible choisie on valide tout de même que la cible est accessible (pour eviter les petits malins)
     $resultcarte = mysql_query("SELECT id,koi,comment,vie,x,y,territoire FROM carte where 1 and x >= ".$petitx." and y >= ".$petity." and x <= ".$grandx." and y <= ".$grandy." and skin='$level' and partie=$partie and id='$cible'");
     while(list($id,$koi ,$comment,$def,$x,$y,$ligue2) = mysql_fetch_array($resultcarte))
     {
           $affichetest=$koi;
           $affichetest += 0;
           echo"$koi $x,$y ";
           $resultcarte2 = mysql_query("SELECT def FROM villages WHERE koi='$koi'");
           $row = mysql_fetch_array($resultcarte2);
           $vie = $def*$row["def"]/100;$viemax = $row["def"]+1;
           echo"<br>point de vie: <img src=http://adept.jouer.org/theme/b1.png width=".min(round($vie/$viemax*100),100)."   height=10><img src=http://adept.jouer.org/theme/b2.png width=".max(round(($viemax-$vie)/$viemax*100),0)."   height=10><br>";
// on regarde mon alliance
     $resultcarte = mysql_query("SELECT alliance FROM adept_alliances where ligue='$ligue' and ok='o'");
     $row = mysql_fetch_array($resultcarte);
     $monalliance = $row["alliance"];
// on regarde son alliance
     $resultcarte = mysql_query("SELECT alliance FROM adept_alliances where ligue='$ligue2' and ok='o'");
     $row = mysql_fetch_array($resultcarte);
     $sonalliance = $row["alliance"];
// on verifit que mon alliance est en guerre contre son alliance
     $resultcarte = mysql_query("SELECT count(*) FROM adept_guerre where (AL1='$monalliance' and AL2='$sonalliance') or (AL2='$monalliance' and AL1='$sonalliance') ");
     $row = mysql_fetch_array($resultcarte);
     $guerre = $row["count(*)"];
//echo"sa $sonalliance ma $monalliance g $guerre mg $maguerre sg $saguerre";
if(($stopwar==1)and($guerre!=1)and($ligue<>27))
         {
echo"Cette action est impossible etant donné les guerres en cours, vous devez être dans une alliance en guerre contre elle.<br>";
finsql(); die();
         }
// on fait rouler les dés
                 srand((double)microtime()*1000000);
           $r1 = rand(0,100);   $r2 = rand(0,100);   $r3 = rand(0,100);

           $r4 = rand(0,100);    $r5 = rand(0,100); $r6 = rand(0,100);
           // coups critiques
           if ($r1>=99) { $r2=0;}
           if ($r2>=99) { $r3=0;}
           if ($r3>=99) { $r4=0;}
           if ($r4>=99) { $r3=0;}
// on sort la calculette
           $n =($ok * $r1 * $att *100 - ($vie * $r2))/100;
if($n>0) {$n=round((20*log($n))*$coef); $action="le bâtiment est endommage";} else { $n=0;$action="le bâtiment n est pas endomagé";}
           $n=round($n*100/$viemax);

// on mets à jour la base de données en plaçant un maximim de vérifications dans la requête
           mysql_query("update carte set vie=vie-$n where x >= ".$petitx." and y >= ".$petity." and x <= ".$grandx." and y <= ".$grandy." and skin='$level' and partie=$partie and id='$cible' ");
           mysql_query("delete from carte where vie<=0 ");
// on affiche l'action
           echo" $action";
// on avertit les tours

           histotour($x,$y,"$nomperso attaque de bâtiment <font color=red>$action</font>");
     }
}

?>

par jouer.org
dernière mise à jour:11/02/2005

commentaires
Hebus_Beer : S'il te plait, il y a apparemment plusieurs variables entrée ($ partie, $perso, $ok...)est ce que tu pourrais en faire la liste au début pour faciliter la compréhension?
Merci.
Jeux en ligne jouer.org Site declaré à la CNIL n° 822436 ~ Ajouter un site ~ Partenaires