[RPG en PHP] Monter de niveau
Résolu
Meta-Dark
Messages postés
24
Date d'inscription
Statut
Membre
Dernière intervention
-
Meta-Dark Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Meta-Dark Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
encore moi avec un autre problème sur les bras ! Merci de m'aider du mieux que vous pouvez ^^'
Donc voila, mon script de PHP avance pas mal, mais j'ai un léger problème : monter de niveau n'apporte pas une augmentation des caractéristiques que je demande.
Donc, plus haut dans le code de ma page j'avais déja chargé les variables qui servent au combat (force, défense, agilité etc), et j'ai refait une boucle while pour recharger mes variables $PV et $PM (car elles diminuent au cours du combat). Comme vous le voyez quand on monte de niveau ($xp >= 150 * POW($lvl,2)), je multiplie mes variables par 1.5 et je fait un UPDATE pour les enregistrer dans ma BDD.
Voila un exemple concret :
Meta-Dark est niveau 1. Il a 8 force, 6 défense, 4 agilité, 0 intel, 60PV et 10PM.
Il monte de niveau : il a maintenant 8 force, 9 défense, 6 agilité, 0 intel, et les PV sont ceux qu'il me reste a la fin du combat, les PM quant a eux sont de 15.
La défense, l'agilité, et les PM sont correctement augmentés, mais le reste ne suit pas.
J'espère que vous pourrez m'aider car je bloque totalement. Je vais essayer des trucs et re-posterais si je trouve la solution (tout en la donnant, ça pourra servir =°)
Merci d'avance !
encore moi avec un autre problème sur les bras ! Merci de m'aider du mieux que vous pouvez ^^'
Donc voila, mon script de PHP avance pas mal, mais j'ai un léger problème : monter de niveau n'apporte pas une augmentation des caractéristiques que je demande.
<?php if($xp >= 150 * POW($lvl,2)) { $lvl++ ; $force = $force * (3 / 2); $defense = $defense * (3 / 2); $agilite = $agilite * (3 / 2); $intel = $intel * (3 / 2); while ($donnees = mysql_fetch_array($resultat)) { $PV = $donnees['PV']; $PM = $donnees['PM']; } $PV = $PV * (3 / 2); $PM = $PM * (3 / 2); mysql_query("UPDATE Rpaygay SET force='$force' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET defense='$defense' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET agilite='$agilite' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET intel='$intel' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET PV='$PV' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET PM='$PM' WHERE nom='$nom'"); mysql_query("UPDATE Rpaygay SET niveau='$lvl' WHERE nom='$nom'"); ?> Félicitations, vous êtes monté au niveau <?php echo $lvl ; } ?>
Donc, plus haut dans le code de ma page j'avais déja chargé les variables qui servent au combat (force, défense, agilité etc), et j'ai refait une boucle while pour recharger mes variables $PV et $PM (car elles diminuent au cours du combat). Comme vous le voyez quand on monte de niveau ($xp >= 150 * POW($lvl,2)), je multiplie mes variables par 1.5 et je fait un UPDATE pour les enregistrer dans ma BDD.
Voila un exemple concret :
Meta-Dark est niveau 1. Il a 8 force, 6 défense, 4 agilité, 0 intel, 60PV et 10PM.
Il monte de niveau : il a maintenant 8 force, 9 défense, 6 agilité, 0 intel, et les PV sont ceux qu'il me reste a la fin du combat, les PM quant a eux sont de 15.
La défense, l'agilité, et les PM sont correctement augmentés, mais le reste ne suit pas.
J'espère que vous pourrez m'aider car je bloque totalement. Je vais essayer des trucs et re-posterais si je trouve la solution (tout en la donnant, ça pourra servir =°)
Merci d'avance !
A voir également:
- [RPG en PHP] Monter de niveau
- Brave frontier rpg - Télécharger - Rôle RPG
- Easy php - Télécharger - Divers Web & Internet
- Mise a niveau windows 7 vers 10 - Accueil - Mise à jour
- Clé de mise à niveau windows 7 gratuit - Guide
- Test afpa niveau 5 pdf ✓ - Forum Études / Formation High-Tech
2 réponses
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'force=12, defense=9, agilite=6, intel=0, PV=90, PM=15, niveau=2 WHERE nom=Meta-D' at line 1
Voila d'ou vient le problème apparemment, personne ?
mysql_query("UPDATE Rpaygay SET force='$force', defense='$defense', agilite='$agilite', intel='$intel', PV='$PV', PM='$PM', niveau='$lvl' WHERE nom='$nom'") or die (mysql_error());
Voila d'ou vient le problème apparemment, personne ?
`force`
Pour éviter ce genre de problème, entoure toujours les noms de champs et de tables de ``