Page 1 sur 2

Pure_vrooooooom!

Publié : lun. 17/sept./2007 14:11
par Huitbit
A LIRE EN PREMIER :wink:
J'ai essayé de faire un programme avec le strict minimum : pas de tableaux, pas de structures, pas de listes chaînées, très peu de mots clés, pas de déclaration de type de variable, pas de macros, pas de procédures.....
Forcément le code s'allonge très vite!
Le but c'est de faire un programme lisible dès le CM1 ou le CM2 (quelque soit la longueur!)
Si ça vous intéresse, mettez-vous à la place d'un pokémon de 9, 10 ans et dites-moi ce qui vous semble difficile
Si vous avez des modifications à faire, ça m'intéresse.
J'ai tenté un remake de ce petit jeu de voiture:(voir post: http://www.purebasic.fr/french/viewtopic.php?t=7155)
Image
Je me souviens( :roll: ) que cette version utilisait des caractères et le retour à ligne pour le scrolling.


Ici, le principe est simple : 4 portions de circuit, 3 visibles et 1 cachée que l'on permute(comme dans les studios d'hollywood :lol: ).

(Avec cette version, je rajouterai peut-être des voitures "ennemis" :roll: ).


Image

Les sprites viennent de ce jeu :P
http://www.youtube.com/watch?v=QHK0s8R3Xnw

Je ne gère pas la partie grise extérieure de la route!

SPRITE NECESSAIRE (à placer dans le même dossier que le programme)
Image

Code : Tout sélectionner

;pure_vroom
;auteur Huitbit
;pb v4.02

;-constantes
;{
Enumeration
  #spr_pure_vroom
  #spr_bordure_tout_droit
  #spr_bordure_virage_droite
  #spr_bordure_virage_gauche
  #spr_voiture_tout_droit
  #spr_voiture_virage_droite
  #spr_voiture_virage_gauche
EndEnumeration

#largeur_ecran=96*8
#distance_sprites_routes_gauche_et_droite=96*2
#moitie_largeur_route=(#distance_sprites_routes_gauche_et_droite-32)*0.5
#decalage_droit_droit=0
#decalage_droit_droite=32
#decalage_droit_gauche=-32

#decalage_droite_droit=32
#decalage_droite_droite=64
#decalage_droite_gauche=0

#decalage_gauche_droit=-32
#decalage_gauche_droite=0
#decalage_gauche_gauche=-64
;}
;-initialisation
;{
x_tranche_1=(#largeur_ecran-#distance_sprites_routes_gauche_et_droite-96)*0.5
y_tranche_1=128
spr_tranche_1=#spr_bordure_tout_droit
 
x_tranche_2=x_tranche_1
y_tranche_2=64
spr_tranche_2=#spr_bordure_tout_droit
 
x_tranche_3=x_tranche_1
y_tranche_3=0
spr_tranche_3=#spr_bordure_tout_droit
 
x_tranche_4=x_tranche_1
y_tranche_4=-64
spr_tranche_4=#spr_bordure_tout_droit

tranche_test_voiture=spr_tranche_2
x_tranche_test_voiture=x_tranche_2
y_tranche_test_voiture=y_tranche_2
      
x_voiture=x_tranche_1+#moitie_largeur_route+48
spr_voiture=#spr_voiture_tout_droit
vitesse_voiture=0
;}
 ;-PROGRAMME PRINCIPAL
InitSprite()
InitKeyboard()
OpenWindow(0,0,0,#largeur_ecran,192,"Pure_Vroom (vitesse : v ^ / freinage : espace / direction : < > )",#PB_Window_ScreenCentered|#PB_Window_SystemMenu )
OpenWindowedScreen(WindowID(0),0,0,#largeur_ecran,192,0,0,0)
UsePNGImageDecoder()
TransparentSpriteColor(#PB_Default ,RGB(255, 0, 255))
LoadSprite(#spr_pure_vroom,"pure_vroom.png")
;-création des sprites
;{
CreateSprite(#spr_bordure_tout_droit,96,64)
CopySprite(#spr_pure_vroom,#spr_bordure_tout_droit)
ClipSprite(#spr_bordure_tout_droit,0,0,96,64)

CreateSprite(#spr_bordure_virage_droite,96,64)
CopySprite(#spr_pure_vroom,#spr_bordure_virage_droite)
ClipSprite(#spr_bordure_virage_droite,0,64,96,64)

CreateSprite(#spr_bordure_virage_gauche,96,64)
CopySprite(#spr_pure_vroom,#spr_bordure_virage_gauche)
ClipSprite(#spr_bordure_virage_gauche,0,128,96,64)

CreateSprite(#spr_voiture_tout_droit,32,32)
CopySprite(#spr_pure_vroom,#spr_voiture_tout_droit)
ClipSprite(#spr_voiture_tout_droit,0,192,32,32)

CreateSprite(#spr_voiture_virage_droite,32,32)
CopySprite(#spr_pure_vroom,#spr_voiture_virage_droite)
ClipSprite(#spr_voiture_virage_droite,32,192,32,32)

CreateSprite(#spr_voiture_virage_gauche,32,32)
CopySprite(#spr_pure_vroom,#spr_voiture_virage_gauche)
ClipSprite(#spr_voiture_virage_gauche,64,192,32,32)
;}
;-BOUCLE PRINCIPALE
;-information 
;pour des variations de vitesse moins brusques, on travaille avec des divisions entières de la vitesse(voir plus loin)
Repeat
  ClearScreen(RGB(128,128,128))
  ;-gestion des évènements de la fenêtre
  ;{
  Repeat
    Event = WindowEvent()      
    If  Event = #PB_Event_CloseWindow
      End 
    EndIf
  Until Event = 0  
  ;}
;-défilement de l'écran
;{
  ;pour le défilement, tout est synchronisé sur la portion de circuit n°1
    y_tranche_1=y_tranche_1+vitesse_voiture/10 
    
    If y_tranche_1>192 
      y_tranche_1=-64
      ;choix aléatoire des nouvelles portions de circuit
      random_1=Random(3)
      random_2=Random(3)
      random_3=Random(3)
      random_4=Random(3)
      
    EndIf
    
    ; cas n°1 ordre des portions de circuit (de haut en bas):4;3;2;1
    If  y_tranche_1>128 And y_tranche_1<192 
      y_tranche_2=y_tranche_1-64
      y_tranche_3=y_tranche_1-128
      y_tranche_4=y_tranche_1-192
      
      y_tranche_test_voiture=y_tranche_2
     
      If random_4<>4 ; 4 valeur choisie pour savoir si les calculs ont déjà été faits
      
      tranche_test_voiture=spr_tranche_2
      x_tranche_test_voiture=x_tranche_2
      
      If random_4=3;même décision(portion de route droite>voir plus loin) pour  deux valeurs du random
      random_4=0
      EndIf
      
      ;on empêche les sorties d'écran
      If x_tranche_3>#largeur_ecran-#distance_sprites_routes_gauche_et_droite-96
      random_4=2
      ElseIf x_tranche_3<96
      random_4=1
      EndIf

      Select random_4
      
      Case 0
      spr_tranche_4=#spr_bordure_tout_droit
      Select spr_tranche_3
      Case #spr_bordure_tout_droit
      x_tranche_4=x_tranche_3+#decalage_droit_droit
      Case #spr_bordure_virage_droite
      x_tranche_4=x_tranche_3+#decalage_droite_droit
      Case #spr_bordure_virage_gauche
      x_tranche_4=x_tranche_3+#decalage_gauche_droit
      EndSelect
      
      Case 1
      spr_tranche_4=#spr_bordure_virage_droite
      Select spr_tranche_3
      Case #spr_bordure_tout_droit
      x_tranche_4=x_tranche_3+#decalage_droit_droite
      Case #spr_bordure_virage_droite
      x_tranche_4=x_tranche_3+#decalage_droite_droite
      Case #spr_bordure_virage_gauche
      x_tranche_4=x_tranche_3+#decalage_gauche_droite
      EndSelect
      
            Case 2
      spr_tranche_4=#spr_bordure_virage_gauche
      Select spr_tranche_3
      Case #spr_bordure_tout_droit
      x_tranche_4=x_tranche_3+#decalage_droit_gauche
      Case #spr_bordure_virage_droite
      x_tranche_4=x_tranche_3+#decalage_droite_gauche
      Case #spr_bordure_virage_gauche
      x_tranche_4=x_tranche_3+#decalage_gauche_gauche
      EndSelect
      
      EndSelect
EndIf
random_4=4
      
    EndIf
    
    ; cas n°2 ordre des portions de circuit (de haut en bas):1;4;3;2
    If  y_tranche_1>-64 And y_tranche_1<0 
      y_tranche_2=y_tranche_1+192
      y_tranche_3=y_tranche_1+128
      y_tranche_4=y_tranche_1+64
      
       y_tranche_test_voiture=y_tranche_3
       If random_1<>4
       
      tranche_test_voiture=spr_tranche_3
      x_tranche_test_voiture=x_tranche_3
     
If random_1=3
      random_1=0
      EndIf

      If x_tranche_4>#largeur_ecran-#distance_sprites_routes_gauche_et_droite-96
      random_1=2
      ElseIf x_tranche_4<96
      random_1=1
      EndIf

      
      Select random_1
      
      Case 0
      spr_tranche_1=#spr_bordure_tout_droit
      Select spr_tranche_4
      Case #spr_bordure_tout_droit
      x_tranche_1=x_tranche_4+#decalage_droit_droit
      Case #spr_bordure_virage_droite
      x_tranche_1=x_tranche_4+#decalage_droite_droit
      Case #spr_bordure_virage_gauche
      x_tranche_1=x_tranche_4+#decalage_gauche_droit
      EndSelect
      
      Case 1
      spr_tranche_1=#spr_bordure_virage_droite
      Select spr_tranche_4
      Case #spr_bordure_tout_droit
      x_tranche_1=x_tranche_4+#decalage_droit_droite
      Case #spr_bordure_virage_droite
      x_tranche_1=x_tranche_4+#decalage_droite_droite
      Case #spr_bordure_virage_gauche
      x_tranche_1=x_tranche_4+#decalage_gauche_droite
      EndSelect
      
            Case 2
      spr_tranche_1=#spr_bordure_virage_gauche
      Select spr_tranche_4
      Case #spr_bordure_tout_droit
      x_tranche_1=x_tranche_4+#decalage_droit_gauche
      Case #spr_bordure_virage_droite
      x_tranche_1=x_tranche_4+#decalage_droite_gauche
      Case #spr_bordure_virage_gauche
      x_tranche_1=x_tranche_4+#decalage_gauche_gauche
      EndSelect
      
      EndSelect
      
    EndIf
          random_1=4
EndIf
    
    ; cas n°3 ordre des portions de circuit (de haut en bas):2;1;4;3
    If  y_tranche_1>0 And y_tranche_1<64
      y_tranche_2=y_tranche_1-64
      y_tranche_3=y_tranche_1+128
      y_tranche_4=y_tranche_1+64
      
       y_tranche_test_voiture=y_tranche_4
      If random_2<>4
      
      tranche_test_voiture=spr_tranche_4
      x_tranche_test_voiture=x_tranche_4
     
If random_2=3
      random_2=0
      EndIf

      If x_tranche_1>#largeur_ecran-#distance_sprites_routes_gauche_et_droite-96
      random_2=2
      ElseIf x_tranche_1<96
      random_2=1
      EndIf

      
      Select random_2
      
      Case 0
      spr_tranche_2=#spr_bordure_tout_droit
      Select spr_tranche_1
      Case #spr_bordure_tout_droit
      x_tranche_2=x_tranche_1+#decalage_droit_droit
      Case #spr_bordure_virage_droite
      x_tranche_2=x_tranche_1+#decalage_droite_droit
      Case #spr_bordure_virage_gauche
      x_tranche_2=x_tranche_1+#decalage_gauche_droit
      EndSelect
      
      Case 1
      spr_tranche_2=#spr_bordure_virage_droite
      Select spr_tranche_1
      Case #spr_bordure_tout_droit
      x_tranche_2=x_tranche_1+#decalage_droit_droite
      Case #spr_bordure_virage_droite
      x_tranche_2=x_tranche_1+#decalage_droite_droite
      Case #spr_bordure_virage_gauche
      x_tranche_2=x_tranche_1+#decalage_gauche_droite
      EndSelect
      
            Case 2
      spr_tranche_2=#spr_bordure_virage_gauche
      Select spr_tranche_1
      Case #spr_bordure_tout_droit
      x_tranche_2=x_tranche_1+#decalage_droit_gauche
      Case #spr_bordure_virage_droite
      x_tranche_2=x_tranche_1+#decalage_droite_gauche
      Case #spr_bordure_virage_gauche
      x_tranche_2=x_tranche_1+#decalage_gauche_gauche
      EndSelect
      
      EndSelect
      EndIf
      random_2=4

    EndIf
    
    ; cas n°4 ordre des portions de circuit (de haut en bas):3;2;1;4
    If  y_tranche_1>64 And y_tranche_1<128
      y_tranche_2=y_tranche_1-64
      y_tranche_3=y_tranche_1-128
      y_tranche_4=y_tranche_1+64
      
      y_tranche_test_voiture=y_tranche_1
      If random_3<>4
      
      tranche_test_voiture=spr_tranche_1
      x_tranche_test_voiture=x_tranche_1
      
If random_3=3
      random_3=0
      EndIf

      If x_tranche_2>#largeur_ecran-#distance_sprites_routes_gauche_et_droite-96
      random_3=2
      ElseIf x_tranche_2<96
      random_3=1
      EndIf

      Select random_3
      
      Case 0
      spr_tranche_3=#spr_bordure_tout_droit
      Select spr_tranche_2
      Case #spr_bordure_tout_droit
      x_tranche_3=x_tranche_2+#decalage_droit_droit
      Case #spr_bordure_virage_droite
      x_tranche_3=x_tranche_2+#decalage_droite_droit
      Case #spr_bordure_virage_gauche
      x_tranche_3=x_tranche_2+#decalage_gauche_droit
      EndSelect
      
      Case 1
      spr_tranche_3=#spr_bordure_virage_droite
      Select spr_tranche_2
      Case #spr_bordure_tout_droit
      x_tranche_3=x_tranche_2+#decalage_droit_droite
      Case #spr_bordure_virage_droite
      x_tranche_3=x_tranche_2+#decalage_droite_droite
      Case #spr_bordure_virage_gauche
      x_tranche_3=x_tranche_2+#decalage_gauche_droite
      EndSelect
      
            Case 2
      spr_tranche_3=#spr_bordure_virage_gauche
      Select spr_tranche_2
      Case #spr_bordure_tout_droit
      x_tranche_3=x_tranche_2+#decalage_droit_gauche
      Case #spr_bordure_virage_droite
      x_tranche_3=x_tranche_2+#decalage_droite_gauche
      Case #spr_bordure_virage_gauche
      x_tranche_3=x_tranche_2+#decalage_gauche_gauche
      EndSelect
      
      EndSelect

    EndIf
    random_3=4
    
    EndIf
  ;}
  
;-gestion du clavier  
;{
  ExamineKeyboard()
  ;-déplacement latéral de la voiture
  If KeyboardPushed(#PB_Key_Left) And vitesse_voiture/10>0
  If vitesse_voiture/15>0
    x_voiture=x_voiture-vitesse_voiture/15
    Else 
    x_voiture=x_voiture-1
    EndIf
    spr_voiture=#spr_voiture_virage_gauche
  ElseIf KeyboardPushed(#PB_Key_Right) And vitesse_voiture/10>0
  If vitesse_voiture/15>0
    x_voiture=x_voiture+vitesse_voiture/15
    Else 
    x_voiture=x_voiture+1
    EndIf
    spr_voiture=#spr_voiture_virage_droite
  Else
    spr_voiture=#spr_voiture_tout_droit
  EndIf
 ;-gestion de la vitesse 
  If KeyboardPushed(#PB_Key_Up)
    If vitesse_voiture<80
      vitesse_voiture=vitesse_voiture+1
    EndIf
  ElseIf KeyboardPushed(#PB_Key_Down)
    If vitesse_voiture>0
      vitesse_voiture=vitesse_voiture-1
    EndIf
  EndIf
  ;-freinage
  If KeyboardPushed(#PB_Key_Space)
    If vitesse_voiture>0
      vitesse_voiture=vitesse_voiture-2
    EndIf
  EndIf
  ;}
  
 ;-affichage
 ;{ 
  DisplayTransparentSprite(spr_tranche_1,x_tranche_1,y_tranche_1)
  DisplayTransparentSprite(spr_tranche_1,x_tranche_1+#distance_sprites_routes_gauche_et_droite,y_tranche_1)
  DisplayTransparentSprite(spr_tranche_2,x_tranche_2,y_tranche_2)
  DisplayTransparentSprite(spr_tranche_2,x_tranche_2+#distance_sprites_routes_gauche_et_droite,y_tranche_2)
  DisplayTransparentSprite(spr_tranche_3,x_tranche_3,y_tranche_3)
  DisplayTransparentSprite(spr_tranche_3,x_tranche_3+#distance_sprites_routes_gauche_et_droite,y_tranche_3)
  DisplayTransparentSprite(spr_tranche_4,x_tranche_4,y_tranche_4+dy)
  DisplayTransparentSprite(spr_tranche_4,x_tranche_4+#distance_sprites_routes_gauche_et_droite,y_tranche_4)
  
  DisplayTransparentSprite(spr_voiture,x_voiture,128)
  ;}
;-collisions
;{
If SpritePixelCollision(spr_voiture,x_voiture,128,tranche_test_voiture,x_tranche_test_voiture,y_tranche_test_voiture) Or SpritePixelCollision(spr_voiture,x_voiture,128,tranche_test_voiture,x_tranche_test_voiture+#distance_sprites_routes_gauche_et_droite,y_tranche_test_voiture)
   StartDrawing(ScreenOutput())
   Select spr_voiture
   Case #spr_voiture_tout_droit
   decalage_poussiere=0
   Case #spr_voiture_virage_droite
    decalage_poussiere=-16
   Case #spr_voiture_virage_gauche
    decalage_poussiere=16
   EndSelect
   For i=0 To 30
   Plot(x_voiture+ decalage_poussiere+Random(30),144+Random(30),RGB(120-2*i,120-2*i,120-2*i))
   Next i
   StopDrawing()
   FlipBuffers()
   If vitesse_voiture>40
      vitesse_voiture=vitesse_voiture-2
   EndIf
EndIf
  ;}
  Delay(15)  
  FlipBuffers()
ForEver
Hasta la vista!

Publié : lun. 17/sept./2007 14:19
par Kwai chang caine
Ouuuaahh, j'ai joué à la voiture comme quand j'etais petit.
Je n'y connais pas grand chose en jeu, mais il est rigolo.

Ayai!!! j'ai trouvé mon niveau dans la société CM2 :D

Bravo HuitBit

Publié : lun. 17/sept./2007 14:23
par ATHOW
Bon, je vais peut-être dire des bêtises, mais ça me paraît très dur pour des CM1-CM2...
Du temps de quand j'étais petit, je bidouillais l'Amstrad de mon grand frêre et, en copiant ses magazines je faisais des soft de ce genre, mais EN NE COMPRENANT PAS TOUT CE QUE J'ECRIVAIS !
En sachant que les gamins de maintenant sont un peu plus tartes (je ne le pensais pas vraiment jusqu'à être animateur petite enfance pendant 7 ans les étés), à mon avis ils vont pas trop accrocher à ton code.

Je pense qu'il faut initier des gosses à la programmation comme les étudiants le font. Il y a deux méthodes (j'ai "subi" les deux) :
- Méthode 1 : on apprend les bases (affichage de string, structure conditionelle, boucles...) en utilisant la console pour les affichages.
- Méthode 2 : on complète du "code à trou" : ca semble parfait pour ton jeu. Tu fais les procédures d'affichage, les initialisations, etc... tout ça caché (dans un .pbi par exemple). Et tu laisses juste les enfants compléter des bouts de codes faciles où ils peuvent voir rapidement le résultats (variation de la vitesse, etc...).

Voila mon avis !

Publié : lun. 17/sept./2007 16:29
par Huitbit
@Kwai chang caine
Ayai!!! j'ai trouvé mon niveau dans la société CM2

:lol: :lol: :lol:

@ATHOW
Bon, je vais peut-être dire des bêtises, mais ça me paraît très dur pour des CM1-CM2...
Rassure-toi, ce n'est pas prévu pour ce public. Je pensais plutôt à : "accessible à un enfant de cet âge qui s'y intéresse".
Du temps de quand j'étais petit, je bidouillais
Idem, le seule chose imbidouillable(pour moi) : les satanés peek et poke :twisted:
- Méthode 1 : on apprend les bases (affichage de string, structure conditionelle, boucles...) en utilisant la console pour les affichages.
- Méthode 2 : on complète du "code à trou" : ca semble parfait pour ton jeu. Tu fais les procédures d'affichage, les initialisations, etc... tout ça caché (dans un .pbi par exemple). Et tu laisses juste les enfants compléter des bouts de codes faciles où ils peuvent voir rapidement le résultats (variation de la vitesse, etc...).
Très bonne idée!

La méthode 1 est nécessaire et la méthode 2 permet de répondre à l'impatience des nouvelles générations (la plupart des ados veulent "tout et tout de suite et sans trop se fouler :lol: ! ", heureusement, il y a des exceptions!)

Merci pour vos réponses!

Hasta la vista!

Publié : jeu. 20/sept./2007 15:57
par Golfy
Un truc de sûr : les gamins joueront plus que de lire le code et ils sortiront forcément de la route...

Sinon... où est le score :D

Publié : ven. 21/sept./2007 3:23
par Huitbit
@Golfy
C'est le genre de trucs que l'on fait après un contrôle et juste avant les vacances scolaires! :wink:

Pour ce qui est du score, peut-être que je le rajouterai sur cette version.

En fait, comme j'ai trouvé ça intéressant, je compte le refaire mais cette fois-ci avec plus de mots clés( :roll: ouf!), un éditeur de circuit avec sauvegarde par code, des concurrents et un chrono de qualification qui dépendra du circuit...!

Pour l'instant je griffone sur du papier, quand j'aurai plus de temps...VROOOoooOOMmm! :P

Hasta la vista!

Publié : sam. 29/sept./2007 17:12
par beauregard
Quelques liens qui prouvent que tu n'es pas le seul amoureux de ce style de jeu:
un beau remake d'un jeu msx:
http://www2.braingames.getput.com/roadf/
http://www2.braingames.getput.com/f1spirit/default.asp
http://www.senileteam.com/

et un que tu dois sûrement connaitre:
http://www.planetemu.net/index.php?sect ... les&id=174

Publié : dim. 30/sept./2007 4:11
par Huitbit
@beauregard
'alut, ça faisait un p'tit moment!

Liens trètrètrès intéressants.
Je pense que le résultat final se rapprochera (techniquement parlant) de road fighter.
Neo Drift Out
je connais pas(j'ai juste entendu le nom à l'époque), de toute façon je n'ai jamais aimé le travail des graphistes de la Néo Géo, idem pour le manque d'originalité des jeux (c'est juste une question de goût !).

J'ai eu un jeu de plateau "Le survivant",
http://www.trictrac.net/index.php3?id=j ... l&jeu=3086,
http://jeuxsoc.free.fr/index2.php?princ ... htm&param=
http://reglesdejeux.free.fr/regles/survi_rg.pdf
une sorte de Mad max, c'était GENIAL (enfin, à l'époque, je trouvais ça cool :roll: )

Je suis pas complètement inactif, la preuve : voilà ma planche de travail !
Image
Mon éditeur est en route mais la route est encombrée avec les premiers paquets de copies du trimestre :lol: :lol:

Hasta la vista !

Publié : dim. 30/sept./2007 15:07
par beauregard
Huitbit a écrit :@beauregard
'alut, ça faisait un p'tit moment!
oui, je ne code plus depuis 1 mois, puisque j'ai décidé de modéliser/animer/retoucher un maximum d'objets pour mon jeu de plate-forme, et comme ça prend énormement de temps( beaucoup plus que de coder...).
Huitbit a écrit :@beauregard
Je pense que le résultat final se rapprochera (techniquement parlant) de road fighter.
Je viens de jouer à la version arcade, et il me semble qu'il y a une voiture violette absente dans la conversion sur MSX. Cette voiture violette a la particularité d'être attiré comme un aimant par la voiture du joueur...

Encore un truc, pour ton programme, même si tu as déjà du le faire, prévoit une fenetre au moins ausi haute que large, voir plus haute que large, afin que le joueur puisse anticiper.
A+

nouvelle découverte

Publié : lun. 01/oct./2007 8:45
par beauregard
Huitbit a écrit :Liens trètrètrès intéressants.
Alors que vas tu penser avec ce lien là ?!? :D
http://www.caiman.us/scripts/fw/f2dracing.html
Ce n'est pas moins de 3 pages de jeux de course vue de haut, autant dire que je n'ai pas eu le temps d'explorer tout çà, bon courage ! ;)

Publié : lun. 01/oct./2007 11:48
par Huitbit
Whaou! :P
Je connaissais le lien, mais je n'y ai pas pensé !
Effectivement, il y a de quoi s'occuper!
Encore merci!

Bon courage pour ton "pixel art", c'est pas la partie la plus drôle en programmation!

Hasta la vista!

juste pour la route

Publié : dim. 07/oct./2007 13:38
par beauregard
là, on te propose de travailler la partie graphique du jeu( voiture), le plus simplement possible:
http://soupon.unblog.fr/2007/06/20/cust ... les-suite/
Dans Anim8or, juste en dessous du bouton formant un cercle avec deux flèches, se trouve le bouton pour zoomer/dézoomer.

au final, tu es libre de convertir tes précieuses images en 8 couleurs, pour leur donner un aspect à l'ancienne, retro quoi.
A+

Publié : dim. 07/oct./2007 14:13
par Ar-S
J'aimais beaucoup le jeu Nitro :)

au boulot!

Publié : dim. 07/oct./2007 14:19
par beauregard
Ar-S a écrit :J'aimais beaucoup le jeu Nitro :)
Alors pourquoi ne pas en faire un remake ? :D
http://www.retroremakes.com/forum2/index.php

Publié : dim. 07/oct./2007 17:38
par Ar-S
Peut-etre parceque je suis encore une grosse quenelle en prog :)