ich habe eine Art Tetris programmiert. Das funktioniert auch alles sehr gut. Aber ich möchte, dass die neue Position von Sprites, nachdem es ein Löschen der Sprites mit gleicher Farbe gegeben hat, mit etwas Verzögerung angezeigt wird - also eine Art Animation.
Im nachfolgenden Code habe ich mal das Problem auf den Kern reduziert, wie ich hoffe. Es werden drei Boxes mit unterschiedlicher Farbe angezeigt.
Wie kann ich erreichen, dass sie beim Starten des Codes nacheinander (beispielsweise mit 1 sec Abstand) angezeigt werden?
Code: Alles auswählen
Screen_Width = GetSystemMetrics_(#SM_CXSCREEN)
Screen_Height = GetSystemMetrics_(#SM_CYSCREEN)
Define Resolution.DEVMODE
Resolution.DEVMODE\dmSize = SizeOf(DEVMODE)
If EnumDisplaySettings_(0, #ENUM_REGISTRY_SETTINGS, @Resolution)
col_depth = Resolution\dmBitsPerPel
EndIf
Enumeration
#sprite1
#sprite2
#sprite3
EndEnumeration
InitSprite()
InitKeyboard()
OpenScreen(Screen_Width, Screen_Height, col_depth, "Sprite-Example")
CreateSprite(#sprite1, 50, 50)
StartDrawing( SpriteOutput(#sprite1) )
Box(0, 0, 50, 50, #Red)
StopDrawing()
CreateSprite(#sprite2, 50, 50)
StartDrawing( SpriteOutput(#sprite2) )
Box(0, 0, 50, 50, #Blue)
StopDrawing()
CreateSprite(#sprite3, 50, 50)
StartDrawing( SpriteOutput(#sprite3) )
Box(0, 0, 50, 50, #Magenta)
StopDrawing()
Repeat
ClearScreen(RGB(0,0,0))
DisplaySprite(#sprite1, Screen_Width/2, 250)
DisplaySprite(#sprite2, Screen_Width/2, 350)
DisplaySprite(#sprite3, Screen_Width/2, 450)
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)