26-08-2008, 10:08 AM
(Modification du message : 27-08-2008, 07:14 PM par Sephi-Chan.)
Bonjour à tous avec ce jolie soleil du mois d'aout dont les rayons passent à travers ma fenêtre...quoi vous me croyez pas??.....Oui bon d'accord je ment...
Bref je vais vous présenter quelques lignes de ma création qui fonctionnent. Celui-ci est utilisé à chaque déplacement du joueur pour faire revivre les monstres qui ont été tués par les joueurs. Chaque monstre a un temps de résurrection différent. Et comme je suis Satan en personne qui ne respecte pas la Bible PHP il y a une requête dans une boucle NAN PAS TAPER iffle:
Sinon, petites explication: j'ai une table monstres qui contient tous les monstres différents existants (un de chaque en gros) qui contient les données de chacun. Et enfin une table map_monstres c'est à dire tous les monstres qui sont sur la map. Sur cette table chaque monstre à un id_id_monstre différent et un id_monstre pour aller chercher ses données dans la table monstres.
J'ai crut qu'il y avait déjà eu des post ici mais je pense qu'ils ont dut partir avec le ménage du printemps.
Bon voilà la bestiole:
Bref je vais vous présenter quelques lignes de ma création qui fonctionnent. Celui-ci est utilisé à chaque déplacement du joueur pour faire revivre les monstres qui ont été tués par les joueurs. Chaque monstre a un temps de résurrection différent. Et comme je suis Satan en personne qui ne respecte pas la Bible PHP il y a une requête dans une boucle NAN PAS TAPER iffle:
Sinon, petites explication: j'ai une table monstres qui contient tous les monstres différents existants (un de chaque en gros) qui contient les données de chacun. Et enfin une table map_monstres c'est à dire tous les monstres qui sont sur la map. Sur cette table chaque monstre à un id_id_monstre différent et un id_monstre pour aller chercher ses données dans la table monstres.
J'ai crut qu'il y avait déjà eu des post ici mais je pense qu'ils ont dut partir avec le ménage du printemps.
Bon voilà la bestiole:
Code PHP :
<?php
//Donc ici on va chercher tous les monstres de la case ou "atterrit" le joueur qui sont morts
$retour = mysql_query('SELECT map_monstres.timestamp, monstres.temps, monstres.vie_max_monstre, monstres.exp_max_monstre, map_monstres.id_id_monstre
FROM monstres INNER JOIN map_membres INNER JOIN map_monstres
ON map_monstres.id_case = map_membres.id_case
AND map_membres.login_membre = "'. $_COOKIE['pseudo'] .'"
AND map_monstres.vie_monstre = "0"
AND monstres.id_monstre = map_monstres.id_monstre')or die(mysql_error());
while($donnees = mysql_fetch_array($retour))
{
$id_id_monstre = $donnees['id_id_monstre'];
$dernier_affichage = $donnees['timestamp'];//La dernière fois qu'il a revécu
$espace = $donnees['temps']; //Le temps entre chasque resurrection
$vie_max_monstre = $donnees['vie_max_monstre'];
$exp_max_monstre = $donnees['exp_max_monstre'];
$date_actuelle = time();
//On soustrait la date à celle de le dernière modification de celle de la table
$difference = $date_actuelle - $dernier_affichage;
if($difference >= $espace)
{
mysql_query('UPDATE map_monstres SET vie_monstre = "'. $vie_max_monstre .'", exp_monstre = "'. $exp_max_monstre .'", timestamp = "'. $date_actuelle .'" WHERE id_id_monstre = "'. $id_id_monstre .'"')or die(mysql_error());
}
}
Bref donc dans tout ça je voudrais si c'est possible ne faire qu'une requête pour faire revivre tous les monstres au lieu d'en faire une pour chacun. En gros je pense qu'il faut créer une sorte de tableau pour $vie_max_monstre, $exp_max_monstre, $date_actuelle, $id_id_monstre qui contiendrait les données de chaque monstre à réssuciter. Mais bon on ne peut pas utiliser d'array sinon on serait de mettre ça dans une boucle.
Alors si vous avez une idée, ce ne serait pas de refus (en language simple svp)
Merci.