j'ai commencer un Casse Brique
je voudrais faire en sorte que ma balle soit collée sur la raquette et si on appuie sur le bouron gauche de la souris on lance la balle
Comment je peux faire ça ? merci
Code : Tout sélectionner
;------ Break Out ------
;------ PureBasic 5.60, 64 bits --
;--- Initilisation :
EnableExplicit
If InitSprite()=0 Or InitKeyboard()=0 Or InitMouse() = 0
MessageRequester("Erreur", "Impossible d'initialiser le jeux ")
End
EndIf
;--- Constantes
Enumeration Windows
#Main_Game
EndEnumeration
Enumeration Game
#Spr_pad
#Spr_balle
EndEnumeration
;--- Structure pour la raquette(pad)
Structure Pad
padX.i
EndStructure
;--- Structure pour la balle
Structure ball
ballX.i
ballY.i
Speed.i
EndStructure
;--- Variables
Global Raquette.Pad
Global Balle.ball
Global Largeur = 800,Hauteur = 600, Event,MouseX,balleColle = #true
;--- Fenetre Jeux
OpenWindow(#Main_Game, 0, 0, Largeur, Hauteur,"", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#Main_Game), 0, 0, Largeur, Hauteur)
SetWindowTitle(#Main_Game,"Break Out" +" ESC pour quitter le jeu ")
;---Création de la raquette
CreateSprite(#Spr_pad,200,16)
StartDrawing(SpriteOutput(#Spr_pad))
Box(0, 0, 200,16, RGB(0, 128, 192))
StopDrawing()
;---Création de la balle
CreateSprite(#Spr_balle,32,32)
StartDrawing(SpriteOutput(#Spr_balle))
Circle(10,10,10,RGB(255, 255, 0))
StopDrawing()
balle\ballX = 350
balle\ballY = 560
RGB(255, 255, 0)
;--- Boucle du jeux
Repeat
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_CloseWindow
End
EndSelect
Until Event=0
ClearScreen(RGB(0, 0, 0))
;--- Affichage de la raquette
DisplayTransparentSprite(#Spr_pad,Raquette\padX,Hauteur-16)
;---Affichage de la balle
DisplayTransparentSprite(#Spr_balle,Balle\ballX,Balle\ballY)
MouseX = MouseX()
ExamineMouse()
;--Deplcament de la raquette avec la souris
If MouseX<=Largeur-200
Raquette\padX=MouseX
Else
Raquette\padX=Largeur-200
EndIf
ExamineKeyboard()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)