Jeu puissance 4 avec OpenGL

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Ordinatueur
Messages : 2
Inscription : lun. 28/sept./2015 19:36

Jeu puissance 4 avec OpenGL

Message par Ordinatueur »

Salut, j'essai de créer un jeu de de puissance 4 "3D", c'est-à-dire plusieurs tranche d'un cube a la suite, mais je n'arrive pas a creer des zones pour quand on click gauche dedans se soit un rond qui s'affiche et si on click droit se soit un carré qui s'affiche

Code : Tout sélectionner

If OpenWindow(0, 100, 0, 1820, 980, "2D Drawing Test")
  If CreateImage(0, 1820, 980)   
    If StartDrawing(ImageOutput(0))     
      x=20
      Box(20, 20, 420, 420, RGB(255,255,255))
      Box(20, 460, 420, 420, RGB(255,255,255))
      Box(460+x, 20, 420, 420, RGB(255,255,255))
      Box(460+x, 460, 420, 420, RGB(255,255,255))
      Box(26, 25, 98, 98, RGB(0,0,0))
      Box(129, 25, 98, 98, RGB(0,0,0))
      Box(232, 25, 98, 98, RGB(0,0,0))
      Box(335, 25, 98, 98, RGB(0,0,0))
      Box(26, 128, 98, 98, RGB(0,0,0))
      Box(129, 128, 98, 98, RGB(0,0,0))
      Box(232, 128, 98, 98, RGB(0,0,0))
      Box(335, 128, 98, 98, RGB(0,0,0))
      Box(26, 231, 98, 98, RGB(0,0,0))
      Box(129, 231, 98, 98, RGB(0,0,0))
      Box(232, 231, 98, 98, RGB(0,0,0))
      Box(335, 231, 98, 98, RGB(0,0,0))
      Box(26, 334, 98, 98, RGB(0,0,0))
      Box(129, 334, 98, 98, RGB(0,0,0))
      Box(232, 334, 98, 98, RGB(0,0,0))
      Box(335, 334, 98, 98, RGB(0,0,0))
      Box(26, 465, 98, 98, RGB(0,0,0))
      Box(129, 465, 98, 98, RGB(0,0,0))
      Box(232, 465, 98, 98, RGB(0,0,0))
      Box(335, 465, 98, 98, RGB(0,0,0))
      Box(26, 568, 98, 98, RGB(0,0,0))
      Box(129, 568, 98, 98, RGB(0,0,0))
      Box(232, 568, 98, 98, RGB(0,0,0))
      Box(335, 568, 98, 98, RGB(0,0,0))
      Box(26, 671, 98, 98, RGB(0,0,0))
      Box(129, 671, 98, 98, RGB(0,0,0))
      Box(232, 671, 98, 98, RGB(0,0,0))
      Box(335, 671, 98, 98, RGB(0,0,0))
      Box(26, 774, 98, 98, RGB(0,0,0))
      Box(129, 774, 98, 98, RGB(0,0,0))
      Box(232, 774, 98, 98, RGB(0,0,0))
      Box(335, 774, 98, 98, RGB(0,0,0))
      Box(466+x, 25, 98, 98, RGB(0,0,0))
      Box(569+x, 25, 98, 98, RGB(0,0,0))
      Box(672+x, 25, 98, 98, RGB(0,0,0))
      Box(775+x, 25, 98, 98, RGB(0,0,0))
      Box(466+x, 128, 98, 98, RGB(0,0,0))
      Box(569+x, 128, 98, 98, RGB(0,0,0))
      Box(672+x, 128, 98, 98, RGB(0,0,0))
      Box(775+x, 128, 98, 98, RGB(0,0,0))
      Box(466+x, 231, 98, 98, RGB(0,0,0))
      Box(569+x, 231, 98, 98, RGB(0,0,0))
      Box(672+x, 231, 98, 98, RGB(0,0,0))
      Box(775+x, 231, 98, 98, RGB(0,0,0))
      Box(466+x, 334, 98, 98, RGB(0,0,0))
      Box(569+x, 334, 98, 98, RGB(0,0,0))
      Box(672+x, 334, 98, 98, RGB(0,0,0))
      Box(775+x, 334, 98, 98, RGB(0,0,0))
      Box(466+x, 465, 98, 98, RGB(0,0,0))
      Box(569+x, 465, 98, 98, RGB(0,0,0))
      Box(672+x, 465, 98, 98, RGB(0,0,0))
      Box(775+x, 465, 98, 98, RGB(0,0,0))
      Box(466+x, 568, 98, 98, RGB(0,0,0))
      Box(569+x, 568, 98, 98, RGB(0,0,0))
      Box(672+x, 568, 98, 98, RGB(0,0,0))
      Box(775+x, 568, 98, 98, RGB(0,0,0))
      Box(466+x, 671, 98, 98, RGB(0,0,0))
      Box(569+x, 671, 98, 98, RGB(0,0,0))
      Box(672+x, 671, 98, 98, RGB(0,0,0))
      Box(775+x, 671, 98, 98, RGB(0,0,0))
      Box(466+x, 774, 98, 98, RGB(0,0,0))
      Box(569+x, 774, 98, 98, RGB(0,0,0))
      Box(672+x, 774, 98, 98, RGB(0,0,0))
      Box(775+x, 774, 98, 98, RGB(0,0,0))
      
      
     
      DrawingMode(#PB_2DDrawing_Transparent)
      BackColor(RGB(0,155,155)) 
      FrontColor(RGB(0,0,0)) 
      DrawText(445, 20, "1",RGB(255,255,255))
      DrawText(445, 460, "2",RGB(255,255,255))
      DrawText(905, 20, "3",RGB(255,255,255))
      DrawText(905, 460, "4",RGB(255,255,255))
      
      If OpenGLGadget(0,26,25,98,98,#PB_OpenGL_Keyboard)
        
             If Event = #PB_Event_LeftClick  
               Circle(75,74,35,RGB(245,218,129))
               
             EndIf
                    
      EndIf
      
      
      StopDrawing()
     
    EndIf
  EndIf
    If CreateMenu(0, WindowID(0))   
      MenuTitle("Fichier")
        MenuItem(1, "Nouveau"   +Chr(9)+"Ctrl+N")
        MenuItem(2, "Fermer"  +Chr(9)+"Ctrl+F")
    EndIf
  
  
    ImageGadget(0, 0, 0, 0, 0, ImageID(0))
    
    Repeat
    Select WaitWindowEvent()
      Case #PB_Event_Menu
        Select EventMenu()
          Case 2
            Quit = 1
        EndSelect 
       Case #PB_Event_CloseWindow
        Quit = 1
   EndSelect    
  Until Quit = 1 
  
EndIf

End   
Ordinatueur
Messages : 2
Inscription : lun. 28/sept./2015 19:36

Re: Jeu puissance 4 avec OpenGL

Message par Ordinatueur »

je n'arrive pas a utiliser la fonction OpenGLGadget
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Jeu puissance 4 avec OpenGL

Message par G-Rom »

Bonjour, et bienvenu, merci de ne pas posté 2x de suite , il y a la fonction éditer qui permet d'éditer les messages surtout quand il y a moins d'une minute d'intervalle.
Concernant le problème(s?), on ne va pas faire le jeu à votre place, merci d'être plus clair. 1 problème = 1 topic.
Si c'est les bases qu'il vous manque , je vous invite à regardé la section débutants.
Micheao
Messages : 533
Inscription : dim. 07/déc./2014 10:12
Localisation : Sud-Est

Re: Jeu puissance 4 avec OpenGL

Message par Micheao »

Bonsoir

pourquoi tu essaye de mettre CanvasGadget() plutot de CreateImage()
apres tu peux essayé de crée une procedure pour dessiner tes carrées par exemple
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: Jeu puissance 4 avec OpenGL

Message par microdevweb »

@Ordinatueur,

Ton code n'est pas très clair et je ne voie pas vraiment ce que tu veux obtenir. Mais déjà cette partie de code n'est pas fonctionnel

Code : Tout sélectionner

If OpenGLGadget(0,26,25,98,98,#PB_OpenGL_Keyboard)
       
             If Event = #PB_Event_LeftClick 
               Circle(75,74,35,RGB(245,218,129))
               
             EndIf
                   
      EndIf
1) Ce code est effectué au lancement de ton programme
2) Ta variable event? Elle n'est liée à aucune fonction événementielle.
3) Pour dessiner dans un OpenGLGadget tu doit utilisé des fonctions spécifique.

Donc essaye d'être plus clair sur le résultat souhaité
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Répondre