Besoin d'un conseil pour un bout de code

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Bernie
Messages : 282
Inscription : mar. 22/mars/2016 10:12
Localisation : En France

Besoin d'un conseil pour un bout de code

Message par Bernie »

Bonjour
ce que je veux faire dans son jeu quand ça affiche le texte Game Over
on appuie sur la touche R( par exemple) pour relancer le jeu
j'ai écris ce bout de code mais voilà est ce que je rajoute l'appuie de l'a touche dans la condition ou bien je l'a mais à part dans un autre condtion ? Merci

Code : Tout sélectionner

If GameOver=#True
      DisplayTransparentSprite(#TextGameOver,95,210)
    EndIf
Ou

Code : Tout sélectionner

If GameOver=#True
      DisplayTransparentSprite(#TextGameOver,95,210)
if keyboardPushed....
game=#true
endif     
EndIf

Ps: si je veux effacer le sprite des invaders pour laisser le message Game over je vais comment? si je fait

Code : Tout sélectionner

Freesprite(#Inavder)
ou

Code : Tout sélectionner

Freesprite(invaders()\sprite) 
ça plante ..
Avatar de l’utilisateur
TazNormand
Messages : 1297
Inscription : ven. 27/oct./2006 12:19
Localisation : Calvados (14)

Re: Besoin d'un conseil pour un bout de code

Message par TazNormand »

Ton test clavier doit se trouver DANS le test de GameOver, il n'a pas d'intérêt ailleurs, étant donné que la partie n'est justement pas terminée.

Concernant l'effacement des Sprites, FreeSprite() n'efface pas à l'écran, mais libère la mémoire allouée au sprite, détruit le sprite en mémoire si tu préfères.
Si tu veux effacer l'écran, soit tu fais un ClearScreen(), et et réaffiche ce dont tu as besoin, soit tu affiches un sprite "noir" par dessus tous tes sprites "invaders", mais le clearscreen est plus propre à mon sens.

voilà
Image
Image
Bernie
Messages : 282
Inscription : mar. 22/mars/2016 10:12
Localisation : En France

Re: Besoin d'un conseil pour un bout de code

Message par Bernie »

merci taz
mais si je mets un ClearScreen() j'ai plus mon Background , ni mon scrolling étoilé ni mon score .
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Besoin d'un conseil pour un bout de code

Message par Ar-S »

En résumé et schematiquement

Code : Tout sélectionner

Repeat
  ClearScreen()
  
  If GAMEOVER = 1
    PARTIE = 0
    TU AFFICHES GAME OVER
    
    If PRESS R
      PARTIE = 1
    EndIf
    
  ElseIf PARTIE = 1
    GAMEOVER = 0
    
    TU REINITIALISES TES DONNES (vies, scores etc)
    TU AFFICHES TES VAISSEAUX LA PARTIE COMMENCE
    
  EndIf
  
  Flipbuffer()
Until blabla
~~~~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
Bernie
Messages : 282
Inscription : mar. 22/mars/2016 10:12
Localisation : En France

Re: Besoin d'un conseil pour un bout de code

Message par Bernie »

Merci Ar-S

j'ai un autre probleme :
si je mets PlaySound(#Music ,#PB_Sound_Loop ,30) hors de ma boucle principale j'ai la musique au lancement du jeu
mets si je fais gameover j'appuie sur la touche R je reviens au début avec le titre mais pas la musique
comment faire pour que la musique joue dans ma boucle ?

Code : Tout sélectionner

 If DebutJeu = #False
    ;--- On joue la musique 
    PlaySound(#Music ,#PB_Sound_Loop ,30)
Répondre