Jeu de voiture à l’ancienne....
Publié : jeu. 27/sept./2007 22:07
Je me suis lancé le défi de créer un jeu de voiture à l’ancienne (donné l’effet 3D en 2D)
Voici le moteur qui va gérer la route (utilisez les flèches de direction pour contrôler la route)

Et voici la progression du programme :
(Quoi de new ?! ! les ennemis [idiots], la vitesse, quelques améliorations)
>Demo2<
Pour les touches :
UP = accélération
Down = freinage
Left \ Right = direction
Echape = elle parle d’elle-même.
Voici le moteur qui va gérer la route (utilisez les flèches de direction pour contrôler la route)

Code : Tout sélectionner
InitSprite()
InitScreen()
InitKeyboard()
Global mx.d,my.d
OpenWindow(0,0,0,500,500,"test")
OpenWindowedScreen(WindowID(0),0,0,500,500,0,0,0)
FlipBuffers()
Procedure bloc(x1.l,y1.l,x2.l,y2.l,x3.l,y3.l,x4.l,y4.l,coul.l)
;3 -------- 4
; | |
; | |
; | |
;1 -------- 2
LineXY(x1,y1,x2,y2,coul)
LineXY(x3,y3,x4,y4,coul)
LineXY(x1,y1,x3,y3,coul)
LineXY(x2,y2,x4,y4,coul)
x.l = (x1+x2+x3+x4)/4
y.l = (y1+y2+y3+y4)/4
FillArea(x,y,-1,coul)
EndProcedure
Procedure create_route()
Static c
x3 = 100
y3 = 500
x4 = 400
y4 = 500
;n = saut bloc de route
;L = profondeur
;H = hauteur de route
n.d = 50
L = 0
H.d = 5
For i = 0 To 20
n = 10
L = 5
x1 = x3
y1 = y3
x2 = x4
y2 = y4
x3 = x3 + L + (mx/20)*i
y3 = y3 - n + (my/20)*i
x4 = x4 - L + (mx/20)*i
y4 = y4 - n + (my/20)*i
If c = -1
c = 1
bloc(x1,y1,x2,y2,x3,y3,x4,y4,RGB(255,255,255))
bloc(x1+10,y1,x2-10,y2,x3+10,y3,x4-10,y4,RGB(180,180,180))
Else
c = -1
bloc(x1,y1,x2,y2,x3,y3,x4,y4,RGB(255,0,0))
bloc(x1+10,y1,x2-10,y2,x3+10,y3,x4-10,y4,RGB(200,200,200))
EndIf
Next i
EndProcedure
Repeat
ClearScreen(0)
ExamineKeyboard()
If KeyboardPushed(#PB_Key_Up)
my = my - 1
EndIf
If KeyboardPushed(#PB_Key_Down)
my = my + 1
EndIf
If KeyboardPushed(#PB_Key_Left)
mx = mx - 1
EndIf
If KeyboardPushed(#PB_Key_Right)
mx = mx + 1
EndIf
StartDrawing(ScreenOutput())
create_route()
StopDrawing()
FlipBuffers()
event = WindowEvent()
Delay(100)
Until event = #PB_Event_CloseWindow
End
Et voici la progression du programme :
(Quoi de new ?! ! les ennemis [idiots], la vitesse, quelques améliorations)
>Demo2<
Pour les touches :
UP = accélération
Down = freinage
Left \ Right = direction
Echape = elle parle d’elle-même.