; ************************************************************ ; Exemple 1 (sans sprite) ; ************************************************************ ; parabole OpenWindow(0, 0, 0, 860, 180, 1, "3 secondes, ça vient!") StartDrawing(WindowOutput()) ; coord de départ x.f = 10 y.f = 110 ; vitesses de départ vx.f = 10 vy.f = - 45 pas.f = 0.05 For i = 1 To 1520 vy = vy + 10*pas x = x + vx*pas y = y + vy*pas Plot(x + 10, y, 0) If y>120 ; gestion des rebonds en fonction de la valeur de y vy =- vy*0.95 ; chgt de signe de la compo verticale de la vitesse EndIf ;+ amortissement de 5% à chaque rebond Next i StopDrawing() Delay(3000) ; affichage de l'image durant trois secondes ; ************************************************************ ; Exemple 2 (avec sprite) ; ************************************************************ ; CLIC DROIT POUR QUITTER ; *********** initialisation ********* ; coord de départ X.f = 10 Y.f = 110 ; vitesses de départ vx.f = 10 vy.f = - 45 pas.f = 0.05 ; ****************************** InitMouse() ; ******** ** pour le sprite ***************** InitSprite() ; *************************************** OpenWindow(1, 1, 1, 800, 600, #PB_Window_SystemMenu , "test" ) ; on ouvre une fenetre OpenWindowedScreen( WindowID(1) , 0, 0, 800, 600, 1, 1, 1) ; on met un ecran dedans !! ; *********** on va creer le sprite !! ***************** CreateSprite(1, 16, 16) ; on cree un sprite de 16*16 StartDrawing( SpriteOutput(1)) ; on va dessiner dedans un rond jaune ! Circle(8, 8, 8, RGB($F1, $F8, $C)) ; le voila le beau rond jaune StopDrawing() ; ********* le sprite est terminer on va jouer avec !! ****** Repeat ; boucle principale Event = WaitWindowEvent() ; on regarde si quelqu'un a cliqué sur la croix pour quitter ; ************************** ton prog ici **************** For i = 1 To 1520 ExamineMouse() If MouseButton(2) ; le bouton de souris droit fait quitter ! End EndIf vy = vy + 10*pas X = X + vx*pas Y = Y + vy*pas DisplaySprite(1, X + 10, Y + 150) ; et voila ! FlipBuffers() ; <---- ceci pour voir le dessin se faire +Lent !! ClearScreen(0, 0, 0) ; <--- ceci efface l'ecran !! If Y>120 ; gestion des rebonds en fonction de la valeur de y vy =- vy*0.95 ; chgt de signe de la compo verticale de la vitesse EndIf ;+ amortissement de 5% à chaque rebond Next i ; *************************************************** ; FlipBuffers() <--- c'est la place normale pour le flipbuffer ; ClearScreen(0, 0, 0); <--- c'est la place normale pour le clearscreen !! Until Event = #PB_Event_CloseWindow