GameMaker (2.0 - 2.2.x)
Icon

GMS Timers

RedKnight

You must be logged in to obtain assets

Description

GMS Timers: Better Alarms, Intervals and Cooldowns!

Features:

  • More readable alarms
  • Repeated alarms (intervals)
  • Global alarms (not tied to an instance)
  • PAUSABLE ALARMS!
  • Built-in cooldowns

Replace and extend Game Maker's built-in alarm system for greater readability, streamlined code and more possibilities!

Expands the basic 'alarm' concept to 'Timers', with three different possibilities:

  • Alarm: Just like GM's alarms, runs code after an interval)
  • Interval: Repeatedly runs code after an interval)
  • Cooldown: Restores a variable to true/false after an interval to indicate cooldown is over.

Usage Examples:

setAlarm(60, doThing)           
setInterval(60, doThingRepeatedly)
canDoThing = true

if (canDoThing) {
    doThing()
    setCooldown("canDoThing", 60, true) //Sets canDoThing to false, restores it to true in 60 frames
}

Includes scripts to pause and resume alarms, intervals and cooldowns! If you want to pause all your timers, just use pauseTimers(). Great for pausing/unpausing your game!

Updates

  • Restructured the way global/local Timers are handled
  • Fixed bugs
  • Added logging variables to TimerManager (verbose timer setting, verbose timer clearing)
  • Added more utility scripts (alarmExists, intervalExists, ...)
  • Changed callback parameter to raw script to string because of the way GM handles script indices for extensions
  • Fixed scope in backend scripts (they now all run in with(TimerManager))
  • Bug fix: If an alarm's callback re-set the alarm, it would be cleared anyway.
  • Bug fix: Callbacks deleting their own timer crashed the game.

Docs https://pastebin.com/4XmWVBhY

End User Licence Agreement (EULA).

Age Rating: 4+

Version

GMS2 - Version 1.1.1. Published March 25, 2020

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait