IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Boucle infini - Changer un attribut


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web Full-Stack
    Inscrit en
    Mai 2019
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web Full-Stack
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2019
    Messages : 19
    Points : 31
    Points
    31
    Par défaut Boucle infini - Changer un attribut
    Bonsoir,

    Je dispose d'un personnage, je souhaites lui mettre une limite de 100 en expérience, atteint cette limite, l'expérience revient à 0 et son niveau augmente, seulement je n'arrive pas à faire une boucle qui est censée faire cela, je m'explique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public function winExperience($experienceWin)
        {
            $this->_experience += $experienceWin;
     
            while($this->_experience >= 100)
            {
                $this->_level++;
                $this->_strength += 5;
                $this->_damage += $this->_strength + 2;
                $this->_experience = ($experienceWin - 100); /* Si mon xp est 150 -> Alors $this->_experience doit prendre (150-100 = 50) 50 étant plus petit que 100 il ne doit plus refaire la boucle */
            }
        }
    -> J'appelle cette méthode en lui affectant : $perso->winExperience(200) par exemple;

    La boucle tourne à l'infini qu'est ce qui ne va pas ?

  2. #2
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    Cette ligne est en cause car $experienceWin ne varie pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->_experience = ($experienceWin - 100);
    Ça serait plutôt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->_experience -= 100;
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web Full-Stack
    Inscrit en
    Mai 2019
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web Full-Stack
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2019
    Messages : 19
    Points : 31
    Points
    31
    Par défaut
    En effet ! Merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 15
    Dernier message: 24/05/2005, 08h34
  2. Changer les attributs de fichier à partir de FrontPage
    Par kernel57 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 26/01/2005, 15h44
  3. [Socket] Pb de boucle infinie
    Par Myogtha dans le forum Entrée/Sortie
    Réponses: 12
    Dernier message: 10/06/2004, 14h10
  4. [C#] Comment eviter les boucles infinies ?
    Par Thomas Lebrun dans le forum C#
    Réponses: 12
    Dernier message: 09/06/2004, 00h04
  5. comment changer d'attribut de fonte dans un Tlabel?
    Par sb dans le forum Composants VCL
    Réponses: 3
    Dernier message: 21/08/2002, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo