Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge

DirectInput: Einen Sprite nur in einem Raster bewegen

Yves3 / 2 Antworten / Flachansicht Nickles

hallo

ich programmiere im moment ein tetris.(kennt ihr sicher)
meine erstes richtiges projekt.

ich möchte jetzt, das man die figur nach liks und rechts bewegen kann, aber nicht irgendwie, sondern nur in schritten von 50 pixel. (ja nur zum üben, das wird nacher schon noch etwas kleiner)

dummerweise bewegt sich die figur so viel zu schnell und wenn ich nur 25 pixel nehme, dann ist die figur eben nicht mehr im raster. (passt nicht mehr genau auf einen anderen block)

scheint mir ein ziemlich banales problem zu sein, ich finde aber einfach keine brauchbare lösung.

vielen dank für alle antworten.

bei Antwort benachrichtigen
mr.escape Yves3 „DirectInput: Einen Sprite nur in einem Raster bewegen“
Optionen

Merke dir einfach den zeitpunkt der letzten bewegung und ignoriere alle autorepeat steuerkommandos für bewegung (seitwärts bewegen und drehen) bis eine bestimmte zeit vergangen ist.
Wird die entsprechende taste losgelassen und erneut gedrückt, sollte keine wartezeit erfolgen, denn dann ist die schnelle mehrfachausführung erwünscht (z.b. hektisches drehen in letzte mikrosekunde ;) ).

mr.escape

"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen
danke, hat geklappt. Yves3