( résolu)gagner une vie...

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

( résolu)gagner une vie...

Message par beauregard »

... chaque 500 points !
Je souhaiterai savoir comment faire, pour que chaque fois que la variable score atteint 500 points( puis 1000, puis 1500, puis 2000, puis 2500, puis 3000...), hop, une vie de plus pour le joueur.

extrait du jeu( un bout de code peu savant) :

Code : Tout sélectionner

;- joueur gagne une vie
  If (score>490 And bonusvie=0) Or (score>990 And bonusvie=1) Or (score>1490 And bonusvie=2) Or (score>1990 And bonusvie=3)
    bonusvie+1:vie+1:Flifeup(Xgentil+11, Ygentil) ; joueur gagne une vie tout les 500 pts
  EndIf 
en vous remerciant :)
Dernière modification par beauregard le mar. 14/avr./2009 0:50, modifié 1 fois.
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

Une tite boucle de ce genre devrait faire l'affaire non ?

Code : Tout sélectionner

GagneUneVieA=500
Score=0 : NbrVie=1

;(...) code du jeu qui fait monter le score...

;boucle qui faire gagner une vie tout les 500 pts
Repeat
If Score=GagneUneVieA
  nbrVie=nbrVie+1
  GagneUneVieA=GagneUneVieA+500
EndIf
ForEver
la même chose simulant l'ajout des vie et l'incrémentation du score jusquà 3500

Code : Tout sélectionner

GagneUneVieA=500
Score=500 : NbrVie=1 

Repeat
If Score=GagneUneVieA
  nbrVie=nbrVie+1
  GagneUneVieA=GagneUneVieA+500
  Debug Score
  Debug nbrVie
  Delay(1000)
  Score=Score+500
EndIf
Until GagneUneVieA=3500
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

Ar-S a écrit :Une tite boucle d ce genre devrait faire l'affaire non ?

Code : Tout sélectionner

GagneUneVieA=500
Score=0 : NbrVie=1

;(...) code du jeu qui fait monter le score...

;boucle qui faire gagner une vie tout les 500 pts
Repeat
If Score=GagneUneVieA
  nbrVie=nbrVie+1
  GagneUneVieA=GagneUneVieA+500
EndIf
ForEver
c'est exactement çà, il faut utiliser une variable supplémentaire, simple et efficace, merci Ar-S :D
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

Autre solution avec une constante

Code : Tout sélectionner

#GagneUneVieA=500
Score=0 : NbrVie=1

;(...) code du jeu qui fait monter le score...

;boucle qui faire gagner une vie tout les 500 pts
Repeat
If not Score % #GagneUneVieA
  nbrVie=nbrVie+1
EndIf
ForEver 
Répondre