Je vous tiendrai au courant de l'évolution du jeu ! C'est le premier jeu procédural qui simule l'univers dans son entier.
MAJ du 18/04/2020
j'en suis a 13% de développement


Code : Tout sélectionner
Procedure SpriteHorizontalFlip(N.I)
Structure DWORD
L.L[1 << 14]
EndStructure
Define.I W = SpriteWidth(N), X, Y
If StartDrawing(SpriteOutput(N) )
Define *A.DWORD = DrawingBuffer()
For Y = 0 To (SpriteHeight(N) - 1)
For X = 0 To (W >> 1 - 1)
Swap *A\L[X], *A\L[W - X - 1]
Next
*A + DrawingBufferPitch()
Next
StopDrawing()
EndIf
EndProcedure
Code : Tout sélectionner
Declare SpriteHorizontalFlip(N.I)
If InitSprite() = 0
MessageRequester("Erreur", "Impossible d'ouvrir l'écran & l'environnement nécessaire aux sprites !", 0)
End
EndIf
If OpenWindow(0, 0, 0, 220, 160, "Un écran dans une fenêtre...", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ButtonGadget(0, 170, 135, 45, 20, "Quitter")
If OpenWindowedScreen(WindowID(0), 0, 0, 160, 160)
CreateSprite(0, 40, 40)
If StartDrawing(SpriteOutput(0))
Box(0, 0, 20, 20, #Red)
Box(20, 0, 20, 20, #Yellow)
StopDrawing()
EndIf
Else
MessageRequester("Erreur", "Impossible d'ouvrir un écran dans la fenêtre!", 0)
End
EndIf
EndIf
direction = 2
Repeat
; Il est très important de traiter tous les évènements restants dans la file d'attente à chaque tour
;
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_Gadget
If EventGadget() = 0
End
EndIf
Case #PB_Event_CloseWindow
End
EndSelect
Until Event = 0
FlipBuffers()
ClearScreen(RGB(0, 0, 0))
DisplaySprite(0, x, x)
x + direction
If x > 120 : SpriteHorizontalFlip(0) : direction = -2 : EndIf
If x < 0 : SpriteHorizontalFlip(0) : direction = 2 : EndIf
Delay(1)
ForEver
Procedure SpriteHorizontalFlip(N.I)
; Ollivier
Structure DWORD
L.L[1 << 14]
EndStructure
Define.I W = SpriteWidth(N), X, Y
If StartDrawing(SpriteOutput(N) )
Define *A.DWORD = DrawingBuffer()
For Y = 0 To (SpriteHeight(N) - 1)
For X = 0 To (W >> 1 - 1)
Swap *A\L[X], *A\L[W - X - 1]
Next
*A + DrawingBufferPitch()
Next
StopDrawing()
EndIf
EndProcedure