#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)