Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Laggy Game Movement
#9
By using pygame.time.get_ticks.
This is how I normal handle it. This handle three different ways. one shot timer, repeat timer, and trip counter timer.
class Ticker:
    def __init__(self, ticks, interval):
        self.tick = ticks + interval
        self.interval = interval
        self.count = 0

    # One Shot Ticker
    def elapsed(self, ticks):
        return ticks >= self.tick

    def reset(self, ticks, interval=None):
        if interval:
            self.interval = interval
            
        self.tick = ticks + self.interval

    # Repeat Ticker
    def tick(self, ticks):
        if ticks >= self.tick:
            self.tick = ticks + self.interval
            return True

        return False

    # Trip Counter. Keep track when interval are low. 
    def tick_count(self, ticks):
        self.count = 0
        while ticks >= self.tick:
            self.tick += self.interval
            self.count += 1

        return bool(self.count)
In main loop. You can do something like this.
ticks = pygame.get_ticks()
ticker = Ticker(ticks, 2000) # 2000 milliseconds equals 2 seconds.

# In Main Loop
ticks = pygame.get_ticks()
if ticker.elasped(ticks):
    ticker.count += 1
    if ticker.count < 2:
        # set next ticker if needed
        ticker.reset(ticks, 3000)

if ticker.count == 0:
    # draw your stuff
elif ticker.count == 1:
    # draw your stuff
99 percent of computer problems exists between chair and keyboard.
Reply


Messages In This Thread
Laggy Game Movement - by game_slayer_99 - Jul-18-2022, 09:55 PM
RE: Laggy Game Movement - by Windspar - Jul-19-2022, 12:10 AM
RE: Laggy Game Movement - by game_slayer_99 - Jul-19-2022, 12:49 AM
RE: Laggy Game Movement - by metulburr - Jul-19-2022, 12:05 PM
RE: Laggy Game Movement - by game_slayer_99 - Jul-19-2022, 07:51 PM
RE: Laggy Game Movement - by Windspar - Jul-19-2022, 06:34 PM
RE: Laggy Game Movement - by Windspar - Jul-19-2022, 11:14 PM
RE: Laggy Game Movement - by game_slayer_99 - Jul-20-2022, 12:05 AM
RE: Laggy Game Movement - by Windspar - Jul-20-2022, 02:37 AM
RE: Laggy Game Movement - by Windspar - Jul-20-2022, 02:54 AM
RE: Laggy Game Movement - by prasedenica - Jul-20-2022, 06:27 AM
RE: Laggy Game Movement - by Windspar - Jul-27-2022, 08:14 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  [PyGame] Particle movement mystery XavierPlatinum 10 3,267 Jul-09-2022, 04:28 AM
Last Post: deanhystad
  [PyGame] Isometric Movement on Tiled Map Josselin 0 2,476 Nov-02-2021, 06:56 AM
Last Post: Josselin
  [PyGame] object's movement to left leave shadow on the screen Zhaleh 3 3,285 Aug-02-2020, 09:59 PM
Last Post: nilamo
  [PyGame] sound effect delay and program laggy xBlackHeartx 26 13,470 Oct-09-2019, 11:36 AM
Last Post: metulburr
  Using classes for room movement (text game) Lawr3y 3 6,715 Aug-20-2019, 12:40 AM
Last Post: Lawr3y
  Problem with coding for movement keys Aresofthesea 3 3,564 Jul-05-2019, 07:05 PM
Last Post: nilamo
  Pygame Movement X/Y coord TheHumbleIdiot 2 3,597 Mar-19-2019, 02:21 PM
Last Post: TheHumbleIdiot
  Movement after KEYUP, only after pause func esteel 2 3,371 Aug-22-2018, 03:03 PM
Last Post: Windspar
  [PyGame] How to stop the sprite's movement when it touches the edges of the screen? mrmn 5 11,877 May-13-2018, 06:33 PM
Last Post: mrmn
  [PyGame] My program is very laggy GamePlanet 6 7,255 Aug-15-2017, 03:00 PM
Last Post: nilamo

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020