Vous lisez 1 fil de discussion
  • Auteur
    Messages
    • #66137
      Jeyseto
      Participant

      Voila mon personnage de RPG + Un monstre.
      Pour le défis j’ai rédigé un petit combat en utilisant des expressions.
      Ce qui donne :

      Monstre défi Bloom!
      Bloom utilise Feu
      Monstre subit 20 de dégats
      il reste 30 points de vie à Monstre
      il reste 135 points d’energie à Bloom
      Monstre utilise Attaque
      Bloom subit 20 de dégats
      il reste 80 points de vie à Bloom
      Bloom utilise Attaque
      Monstre subit 15 de dégats
      il reste 15 points de vie à Monstre
      Monstre utilise Attaque
      Bloom subit 20 de dégats
      il reste 60 points de vie à Bloom
      Bloom utilise Attaque
      Monstre subit 15 de dégats
      il reste 0 points de vie à Monstre
      Monstre n’a plus de points de vie
      Monstre est K.O
      Bloom gagne le combat
      Monstre laisse 50 pièces d’or au sol
      Bloom à désormais 1500 pièces d’or

      Bloom = {}
      Bloom.Nom = « Bloom »
      Bloom.Pv = 100
      Bloom.Energie = 150
      Bloom.Atk = 25
      Bloom.Def = 15
      Bloom.AtkMag = 20
      Bloom.DefMag = 16
      Bloom.Vit = 24
      Bloom.Or = 1450
      Bloom.Technique = {}
      Bloom.Technique.Attaque = {}
      Bloom.Technique.Attaque.Nom = « Attaque »
      Bloom.Technique.Attaque.Puissance = 6
      Bloom.Technique.Feu = {}
      Bloom.Technique.Feu.Nom = « Feu »
      Bloom.Technique.Feu.Puissance = 10
      Bloom.Technique.Feu.Energie = 15

      Monstre = {}
      Monstre.Nom = « Monstre »
      Monstre.Pv = 50
      Monstre.Atk = 10
      Monstre.Def = 10
      Monstre.DefMag = 10
      Monstre.Vit = 5
      Monstre.Butin = 50
      Monstre.Technique = {}
      Monstre.Technique.Attaque = {}
      Monstre.Technique.Attaque.Nom = « Attaque »
      Monstre.Technique.Attaque.Puissance = 30

      DegatsFeuBloom = Bloom.AtkMag * Bloom.Technique.Feu.Puissance / Monstre.DefMag
      DegatsAttaqueBloom = Bloom.Atk * Bloom.Technique.Attaque.Puissance / Monstre.Def
      DegatsAttaqueMonstre = Monstre.Atk * Monstre.Technique.Attaque.Puissance / Bloom.Def

      print (Monstre.Nom.. » défi « ..Bloom.Nom.. »! »)
      print (Bloom.Nom.. » utilise « ..Bloom.Technique.Feu.Nom)
      print (Monstre.Nom.. » subit « ..DegatsFeuBloom.. » de dégats »)
      Monstre.Pv = Monstre.Pv – DegatsFeuBloom
      Bloom.Energie = Bloom.Energie – Bloom.Technique.Feu.Energie
      print (« il reste « ..Monstre.Pv.. » points de vie à « ..Monstre.Nom)
      print (« il reste « ..Bloom.Energie.. » points d’energie à « ..Bloom.Nom)

      print (Monstre.Nom.. » utilise « ..Monstre.Technique.Attaque.Nom)
      print (Bloom.Nom..  » subit  » ..DegatsAttaqueMonstre.. » de dégats »)
      Bloom.Pv = Bloom.Pv – DegatsAttaqueMonstre
      print (« il reste « ..Bloom.Pv.. » points de vie à « ..Bloom.Nom)

      print (Bloom.Nom.. » utilise « ..Bloom.Technique.Attaque.Nom)
      print (Monstre.Nom.. » subit « ..DegatsAttaqueBloom.. » de dégats »)
      Monstre.Pv = Monstre.Pv – DegatsAttaqueBloom
      print (« il reste « ..Monstre.Pv.. » points de vie à « ..Monstre.Nom)

      print (Monstre.Nom.. » utilise « ..Monstre.Technique.Attaque.Nom)
      print (Bloom.Nom..  » subit  » ..DegatsAttaqueMonstre.. » de dégats »)
      Bloom.Pv = Bloom.Pv – DegatsAttaqueMonstre
      print (« il reste « ..Bloom.Pv.. » points de vie à « ..Bloom.Nom)

      print (Bloom.Nom.. » utilise « ..Bloom.Technique.Attaque.Nom)
      print (Monstre.Nom.. » subit « ..DegatsAttaqueBloom.. » de dégats »)
      Monstre.Pv = Monstre.Pv – DegatsAttaqueBloom
      print (« il reste « ..Monstre.Pv.. » points de vie à « ..Monstre.Nom)

      print (Monstre.Nom.. » n’a plus de points de vie »)
      print (Monstre.Nom.. » est K.O »)
      print (Bloom.Nom.. » gagne le combat »)
      print (Monstre.Nom.. » laisse « ..Monstre.Butin.. » pièces d’or au sol »)
      Bloom.Or = Bloom.Or + Monstre.Butin
      print (Bloom.Nom..  » à désormais « ..Bloom.Or.. » pièces d’or »)

    • #66227
      Jeyseto
      Participant

      Combat automatisé en 1 seule commande !

      résultat :
      Bouboule défi Bloom!
      Bloom utilise Feu
      Bouboule subit 20 de dégats
      il reste 30 points de vie à Bouboule
      il reste 5 points d’energie à Bloom
      Bouboule utilise Attaque
      Bloom subit 20 de dégats
      il reste 80 points de vie à Bloom
      Bloom utilise Attaque
      Bouboule subit 15 de dégats
      il reste 15 points de vie à Bouboule
      Bouboule utilise Attaque
      Bloom subit 20 de dégats
      il reste 60 points de vie à Bloom
      Bloom utilise Restore
      Bloom se soigne et retrouve 100 points de vies
      Bouboule utilise Attaque
      Bloom subit 20 de dégats
      il reste 80 points de vie à Bloom
      Bloom utilise Attaque
      Bouboule subit 15 de dégats
      il reste 0 points de vie à Bouboule
      Bouboule n’a plus de points de vie
      Bouboule est K.O
      Bloom gagne le combat
      Bouboule laisse 50 pièces d’or au sol
      Bloom à desormais 1500 pièces d’or

      --Fiches Perso
      Bloom = {}
      Bloom.Nom = "Bloom"
      Bloom.Pv = 100
      Bloom.PvMax = 100
      Bloom.Energie = 20
      Bloom.Atk = 25
      Bloom.Def = 15
      Bloom.AtkMag = 20
      Bloom.DefMag = 16
      Bloom.Vit = 24
      Bloom.Or = 1450
      Bloom.Butin = 50
      Bloom.Technique = {}
      Bloom.Technique.Attaque = {}
      Bloom.Technique.Attaque.Nom = "Attaque"
      Bloom.Technique.Attaque.Puissance = 6
      Bloom.Technique.Feu = {}
      Bloom.Technique.Feu.Nom = "Feu"
      Bloom.Technique.Feu.Puissance = 10
      Bloom.Technique.Feu.Energie = 15
      Bloom.Technique.Restore = {}
      Bloom.Technique.Restore.Nom = "Restore"
      
      Monstre = {}
      Monstre.Nom = "Bouboule"
      Monstre.Pv = 50 
      Monstre.Atk = 10
      Monstre.Def = 10
      Monstre.DefMag = 10
      Monstre.Vit = 5
      Monstre.Or = 1450
      Monstre.Butin = 50
      Monstre.Technique = {}
      Monstre.Technique.Attaque = {}
      Monstre.Technique.Attaque.Nom = "Attaque"
      Monstre.Technique.Attaque.Puissance = 30
      
      --Compètences
      function Combat (personnage1,personnage2)
        while personnage1.Pv >= 1 and personnage2.Pv >= 1 do
                          if personnage1.Pv >= 1 then  
                                        if personnage1.Energie >= 15 and personnage1.Pv >= 70 then
                                                   function CompFeu (personnage1,personnage2)
                                                                      function CalculDegatsFeu (personnage1,personnage2)
                                                                        local DegatsFeu = personnage1.AtkMag * personnage1.Technique.Feu.Puissance / personnage2.DefMag
                                                                        return DegatsFeu
                                                                      end
                                                      DegatsFeu1 = CalculDegatsFeu(personnage1,personnage2)
                                                      personnage2.Pv = personnage2.Pv - DegatsFeu1
                                                      print (Bloom.Nom.." utilise "..Bloom.Technique.Feu.Nom)
                                                      Bloom.Energie = Bloom.Energie - Bloom.Technique.Feu.Energie
                                                      print (Monstre.Nom.." subit "..DegatsFeu1.." de dégats")
                                                      print ("il reste "..personnage2.Pv.." points de vie à "..personnage2.Nom)
                                                      print ("il reste "..Bloom.Energie.." points d'energie à "..Bloom.Nom) 
                                                    end
                                        CompFeu (personnage1,personnage2)
                                        elseif personnage1.Energie <= 15 and personnage1.Pv >= 70 then
                                                    function CompAttaque (personnage1,personnage2)
                                                                      function CalculDegatsAttaque (personnage1,personnage2)
                                                                        local DegatsAttaque1 = personnage1.Atk * personnage1.Technique.Attaque.Puissance / personnage2.Def
                                                                        return DegatsAttaque1
                                                                      end
                                                      DegatsAttaque = CalculDegatsAttaque (personnage1,personnage2)
                                                      personnage2.Pv = personnage2.Pv - DegatsAttaque
                                                      print (personnage1.Nom.." utilise ".. personnage1.Technique.Attaque.Nom)
                                                      print (personnage2.Nom.. " subit " ..DegatsAttaque.." de dégats")
                                                      print ("il reste "..personnage2.Pv.." points de vie à "..personnage2.Nom)
                                                    end
                                        CompAttaque (personnage1,personnage2)
                                        elseif personnage1.Pv <= 70 then
                                                      function CompRestore (personnage1)
                                                      personnage1.Pv = personnage1.PvMax
                                                      print (personnage1.Nom.." utilise "..personnage1.Technique.Restore.Nom)
                                                      print (personnage1.Nom.." se soigne et retrouve "..personnage1.Pv.." points de vies" )
                                                    end
                                        CompRestore (personnage1)
                                        end
                          elseif personnage1.Pv <= 1 then
                          end
                    if personnage2.Pv >= 1 then  
                                          function CompAttaque (personnage2,personnage1)
                                                            function CalculDegatsAttaque (personnage2,personnage1)
                                                              local DegatsAttaque2 = personnage2.Atk * personnage2.Technique.Attaque.Puissance / personnage1.Def
                                                              return DegatsAttaque2
                                                            end
                                            DegatsAttaque = CalculDegatsAttaque (personnage2,personnage1)
                                            personnage1.Pv = personnage1.Pv - DegatsAttaque
                                            print (personnage2.Nom.." utilise ".. personnage2.Technique.Attaque.Nom)
                                            print (personnage1.Nom.. " subit " ..DegatsAttaque.." de dégats")
                                            print ("il reste "..personnage1.Pv.." points de vie à "..personnage1.Nom)
                        end
                      CompAttaque (personnage2,personnage1)
                    elseif personnage1.Pv <= 2 then
                    end
        end
       
        if personnage2.Pv <= 0 then
          print (personnage2.Nom.." n'a plus de points de vie")
          print (personnage2.Nom.." est K.O")
          print (personnage1.Nom.." gagne le combat")
          print (personnage2.Nom.." laisse "..personnage2.Butin.." pièces d'or au sol")
          personnage1.Or = personnage1.Or + personnage2.Butin 
          print (personnage1.Nom.. " à desormais ".. personnage1.Or.." pièces d'or")
        elseif personnage1.Pv <= 0 then
          print (personnage1.Nom.." n'a plus de points de vie")
          print (personnage1.Nom.." est K.O")
          print (personnage2.Nom.." gagne le combat")
          print (personnage1.Nom.." laisse "..personnage1.Butin.." pièces d'or au sol")
          personnage2.Or = personnage2.Or + personnage1.Butin 
          print (personnage2.Nom.. " à desormais ".. personnage2.Or.." pièces d'or")
        end
      end
      --Combats
      
      print (Monstre.Nom.." défi "..Bloom.Nom.."!")
      Combat(Bloom,Monstre)
      
Vous lisez 1 fil de discussion
  • Vous devez être connecté pour répondre à ce sujet.