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

Team Adept :


Proposition compétence Envouter

<?php

// Competence envouter un objet avec un sort. Ne connaissant pas toutes les tables je pense qu il faudra apporter quelques modification à ce script, de toute façon ce n'est qu un proposition...

// Selection du sort et de l'arme

                 if(($choixsort=="") or ($choixobjet==""))
                       {
                                echo"<select name=choixsort size=1>";
                                $resultperso = mysql_query("SELECT adept_perso_sort.sort sort.nom FROM adept_perso_sort, sort WHERE adept_perso_sort.perso = '$idperso' and adept_perso_sort.sort = sort.idsort");
                                while(list($sort,$nomsort) = mysql_fetch_array($resultperso))
                                    {
                                                $affichetest=$nomsort;
                                                $affichetest += 0;
                                                echo"<option value='$sort'>$nomsort ";
                                    }
                                echo"</select><br><select name=choixobjet size=1>"
                                $resultobjet = mysql_query("SELECT magie, nom, id FROM objet WHERE idperso='$idperso' and ou='p'");
                                while(list($magie,$nomobj,$idobj) = mysql_fetch_array($resultobjet))
                                    {
                                          if($magie == "")
                                            {
                                                $affichetest=$nomobj;
                                                $afiichetest += 0;
                                                echo"<option value='$idobj'>$nomobj ";
                                            }
                                    }

                                // je n'ai pas changé les valeurs de la ligne qui suit (mis à part le nom du submit) ne sachant pas si celle-ci avait une réelle importance

                                echo"</select><input type=hidden name=G9boutons value=compet><input type=hidden name=comp value=23><input type=submit value='envouter' name=bouton></form>";
                       }
                 else
                 {
                 // on récupère les infos sur le sort

                       $resultsort = mysql_query("SELECT cout, nom FROM sort WHERE 1 and idsort = '$choixsort'");
                       $row = mysql_fetch_array($resultsort);
                       $coutsort = $row["cout"]; $nomsort = $row["nom"];

                 // recupération des infos sur le personnage
                       $resultperso = mysql_query("SELECT foi FROM perso WHERE 1 and id = '$idperso'");
                       $row = mysql_fetch_array($resultperso);
                       $foi = $row["foi"];

                 // on vérifie si le perso a assez de foi pour lancer le sort
                       if ($foi < $coutsort) { echo"Vous n\'avez pas assez de fois pour lancer ce sort, il faut $coutsort";finsql();die(); }

                 // on va chercher les infos sur l'arme en vérifiant qu'elle n'est pas déja magique (on ne sait jamais)
                       $resultobjet = mysql_query("SELECT att, def, magie, nom FROM objet WHERE 1 and idobjet = '$choixobjet'");
                       $row = mysql_fetch_array($resultobjet);
                       $att = $row["att"]; $def = $row["def"];
                       $nomobj = $row["nom"];
                       if ($row["magie"] != "") { echo"Vous ne pouvez pas envouter une arme magique";finsql();die(); }

                 // on retire un jeton et le cout du sort
                       mysql_query("update perso set tour=tour-1 where 1 and nomperso = '".$nomperso."'");
                       mysql_query("update perso set foi=foi-$coutsort where 1 and nomperso = '".$nomperso."'");

                 // on fait rouler les dés
                       srand((double)microtime()*1000000);
                       $r1 = rand(0,100);         $r2 = rand(0,100);
                       if ($r1 == 0) $r2 = 0;

                 // calculons...
                 //la variable $coeftemple contiendra le coefficient fournit par les temples à proximité, comme pour la prière, ceci afin de donner un bonus de réalisation si l'envoutement se passe dans un temple, ou dans un lieu consacré.
                 //la variable $priere contient le score en prière du personnage. Divisée par 50 puis arrondie ceci est le coef multiplicateur que recevra le bonus des temples (ce qui monte le bonus à 90 points pour un pretre ayant 500 en prière sur 9 temples)
                 //la variable $coutsort qui contient le coup d'utilisation du sort sert de palier pour le test, ainsi un sort tel que l'invocation de golem qui coute 200 000 aurait un palier à 200 points)

                        $n = round(r1 * log($ok)) + ($coeftemple/3 * round($priere / 50) - round($coutsort / 1000));

                 // test du palier (n>o)

                       if($n>0) $action1 = "Envoutement réussi";
                       else $action1 = "Echec de l\'envoutement";

                 // resistance de l'arme
                        $l = round(($att + $def - $n)/6)
                       if($r2 > $l) { $action2 = "<br>Votre arme résiste à l\'envoutement"; $test = true;}
                       else { $action2 = "<br>Votre arme est détruite par la magie au cours de l'envoutement"; $test = false;}

                 //actualisation de la base
                       if($test) mysql_query("UPDATE objet SET magie=$choixmagie WHERE 1 and id = '$idobj'");
                       elseif($test==1) mysql_query("DELETE FROM objet WHERE 1 and id = '$idobjet'");
                 }
?>


dernière mise à jour:3/04/2005

commentaires
gorgu : Merci,

je suis en vacances je regarderai la semaine prochaine
gorgu : voila c'est en place .
Jeux en ligne jouer.org Site declaré à la CNIL n° 822436 ~ Ajouter un site ~ Partenaires