IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PureBasic Discussion :

comment faire un jeu du genre mario bros ?


Sujet :

PureBasic

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut comment faire un jeu du genre mario bros ?
    je vous en pose de ces questions

    nan en réalité je n'en ai pas la moindre idée enfaite je me sert des gadget j'ouvre des fenétre mes rien d'incroyable et puis j'aurai besoin que l'ont me montre le boulot que sa doit être alors svp aider moi !

  2. #2
    Responsable Purebasic

    Avatar de comtois
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 285
    Points : 10 998
    Points
    10 998
    Billets dans le blog
    8
    Par défaut
    Comme l'instruction CreateMarioGame() n'existe pas encore, il va falloir apprendre à être plus précis dans tes questions. Enfin je devine que tu ne sais pas par quel bout commencer ?

    Commence par quelque chose de plus simple, lire la doc par exemple, teste les exemples de la doc, amuse toi à les modifier pour mieux comprendre comment ça fonctionne.

    Pour un jeu, regarde principalement les bibliothèques pour les jeux 2D, comme Sprite & Screen, Sprite3D, Sound, etc.

    Apprend à gérer le clavier, la souris, la lecture d'un sprite, son affichage.

    Ensuite amuse toi à déplacer un sprite à l'écran avec le clavier.

    Puisque tu voulais un aperçu pour gérer un jeu, voici quelque chose de vraiment simple et court, il y a juste le scrolling d'un niveau dans un cadre.

    Tu y trouves la gestion du clavier, la création de sprites, tu peux aussi les charger avec LoadSprite(), l'affichage des sprites.

    C'est ardu pour commencer, t'affole pas à la lecture de ce code.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    ;Comtois 01/12/2008
     
    InitSprite()
    InitKeyboard()
    OpenScreen(1024,768,32,"Map")
     
    Enumeration
      #Herbe
      #Eau
      #Bord
    EndEnumeration
     
    Structure S_Box
      x.i
      y.i
      w.i
      h.i
    EndStructure
     
    CreateSprite(#Bord,32,32)
    CreateSprite(#Herbe,32,32)
    CreateSprite(#Eau,32,32)
     
    Declare DessineSprite(Sprite, Couleur)
    Declare RandomMap()
    Declare AfficheMap()
    Declare AfficheBox()
     
    Global Offset.POINT
    Global ScreenBox.S_Box
     
    ScreenBox\x=120
    ScreenBox\y=100
    ScreenBox\w=400
    ScreenBox\h=400
     
    DessineSprite(#Bord, #Red)
    DessineSprite(#Herbe, #Green)
    DessineSprite(#Eau, #Blue)
     
    #Tx=20
    #Ty=20
    #Taille=32
     
     
    Global Dim Map(#Tx,#Ty)
    RandomMap()
     
    Repeat
      ClearScreen(0)
      If ExamineKeyboard()
        If KeyboardPushed(#PB_Key_Right) And Offset\x<(#Tx+1)*#Taille-ScreenBox\w
          Offset\x + 1
        ElseIf KeyboardPushed(#PB_Key_Left) And Offset\x>0
          Offset\x - 1
        EndIf
        If KeyboardPushed(#PB_Key_Down) And Offset\y<(#Ty+1)*#Taille-ScreenBox\h
          Offset\y + 1
        ElseIf KeyboardPushed(#PB_Key_Up) And Offset\y>0
          Offset\y - 1
        EndIf       
      EndIf
     
      AfficheMap()
      AfficheBox()
      FlipBuffers()
    Until KeyboardPushed(#PB_Key_Escape)
     
    Procedure DessineSprite(Sprite, Couleur)
      If StartDrawing(SpriteOutput(Sprite))
        Box(0,0,SpriteWidth(Sprite),SpriteHeight(Sprite),Couleur)
        StopDrawing()
        ProcedureReturn #True
      EndIf 
    EndProcedure
     
    Procedure RandomMap()
      For y=0 To #Ty
        For x=0 To #Tx
          If x=0 Or x=#Tx Or y=0 Or y=#Ty Or x=#Tx/2 Or y=#Ty/2
            Map(x,y)=#Bord
          Else
            Map(x,y)=Random(1)
          EndIf   
        Next x
      Next y   
    EndProcedure
     
    Procedure AfficheBox()
      StartDrawing(ScreenOutput())
        DrawingMode(#PB_2DDrawing_Outlined)
        Box(ScreenBox\x,ScreenBox\y,ScreenBox\w,ScreenBox\h,#White)
      StopDrawing()
    EndProcedure
     
    Procedure AfficheMap()
      Define Src.S_Box, Des.S_Box
     
      Src\y=Offset\y%#Taille
      Src\h=#Taille-Src\y
     
      Py=ScreenBox\y
      y=Offset\y/#Taille
     
      While Py<ScreenBox\y+ScreenBox\h
        Px=ScreenBox\x   
        x=Offset\x/#Taille   
        Src\x=Offset\x%#Taille
        Src\w=#Taille-Src\x
        While Px<ScreenBox\x+ScreenBox\w
          ClipSprite(Map(x,y),Src\x,Src\y,Src\w,Src\h)
          DisplaySprite(Map(x,y),Px,Py)
          Px+Src\w
          x+1
          Src\x=0
          Src\w=#Taille
          If (Px+Src\w)>(ScreenBox\x+ScreenBox\w)
            Src\w=ScreenBox\x+ScreenBox\w-Px
          EndIf
        Wend
        Py+Src\h
        y+1
        Src\y=0
        Src\h=#Taille
        If Py+Src\h>ScreenBox\y+ScreenBox\h
          Src\h=ScreenBox\y+ScreenBox\h-Py
        EndIf
      Wend   
    EndProcedure

Discussions similaires

  1. Comment faire un jeu vidéo ? La réponse de programmeurs expérimentés.
    Par Neckara dans le forum Développement 2D, 3D et Jeux
    Réponses: 2
    Dernier message: 19/04/2013, 13h38
  2. Jeu en réseau: comment faire? [Borland c++]
    Par chm0105 dans le forum C++Builder
    Réponses: 16
    Dernier message: 19/02/2007, 00h46
  3. Comment faire un jeu en réseau avec J2ME ?
    Par Yakurena dans le forum Java ME
    Réponses: 1
    Dernier message: 27/03/2006, 20h09
  4. Jeu en réseau possible ? Comment faire ?
    Par ShadowTheAlone dans le forum Développement
    Réponses: 9
    Dernier message: 03/07/2005, 13h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo