Preserved forum archive. This topic stores the original first post and locally mirrored RPG Maker Web attachments when available. It is posted by the BMMPlay archive account, not by the original creator.
Original Source
- Original title: Better Game Timer
- Original author: ashes999
- Original date: August 22, 2014
- Source thread: https://forums.rpgmakerweb.com/threads/better-game-timer.31310/
- Source forum path: Game Development Engines > Ruby Game System (RGSS) Scripts > RGSS3 Scripts (RMVX Ace)
Summary
Description: some extensions on the in-game timer to make it more robust and easy to use: You can add or subtract time from it You can pause and resume The timer auto-pauses when messages, choices, etc. are visible
Archived First Post
Description: some extensions on the in-game timer to make it more robust and easy to use:
Demo:
Script: get it from GitHub. The initial version is below:
Credits go to Tsukihime, who authored the original script here.
- You can add or subtract time from it
- You can pause and resume
- The timer auto-pauses when messages, choices, etc. are visible
- In-game display turns red when time is under a certain threshold
Demo:
Script: get it from GitHub. The initial version is below:
Spoiler
#========================================================================
# ** Better Game Timer
# By: ashes999 (ashes999@yahoo.com)
# Version: 0.1
#------------------------------------------------------------------------
# * Description:
#
# -- Some extensions to make the timer a bit more useful and friendly.
# -- Original methods by Tsukihime (to add/lose time and pause/resume)
# -- You can also make the game time recolour if time is under some value (eg. 30s)
# -- via the CRITICAL_TIME_SECONDS constant.
# -- Finally, the timer pauses when message boxes, choices, etc. are visible.
# -- Author: ashes999 (ashes999@yahoo.com)
# -- Version 1.0
# Examples:
# $game_timer.add_time(20) # adds 20 seconds
# $game_timer.lose_time(15) # subtract 15 seconds
# $game_timer.pause
# $game_timer.resume
#========================================================================
# If remaining time is less than this many seconds, turn red. To disable, set to 0.
CRITICAL_TIME_SECONDS = 5
# End configuration
class Game_Timer
alias timer_plus_update update
def update
if !@pause
timer_plus_update unless $game_message.visible
end
end
# add more time, in seconds
def add_time(count)
@count += count * Graphics.frame_rate
end
# subtract time, in seconds
def lose_time(count)
@count = [@count - (count * Graphics.frame_rate), 0].max
end
def pause
@pause = true
end
def resume
@pause = false
end
end
#==============================================================================
# ** Sprite_Timer
#------------------------------------------------------------------------------
# This sprite is for timer displays. It monitors $game_timer and automatically
# changes sprite states.
#==============================================================================
class Sprite_Timer < Sprite
alias timer_plus_sprite_update update
def update
timer_plus_sprite_update
update_color
end
def update_color
if @total_sec > 0 && @total_sec <= CRITICAL_TIME_SECONDS
self.bitmap.font.color.set(255, 0, 0)
end
end
end
#========================================================================
# ** Better Game Timer
# By: ashes999 (ashes999@yahoo.com)
# Version: 0.1
#------------------------------------------------------------------------
# * Description:
#
# -- Some extensions to make the timer a bit more useful and friendly.
# -- Original methods by Tsukihime (to add/lose time and pause/resume)
# -- You can also make the game time recolour if time is under some value (eg. 30s)
# -- via the CRITICAL_TIME_SECONDS constant.
# -- Finally, the timer pauses when message boxes, choices, etc. are visible.
# -- Author: ashes999 (ashes999@yahoo.com)
# -- Version 1.0
# Examples:
# $game_timer.add_time(20) # adds 20 seconds
# $game_timer.lose_time(15) # subtract 15 seconds
# $game_timer.pause
# $game_timer.resume
#========================================================================
# If remaining time is less than this many seconds, turn red. To disable, set to 0.
CRITICAL_TIME_SECONDS = 5
# End configuration
class Game_Timer
alias timer_plus_update update
def update
if !@pause
timer_plus_update unless $game_message.visible
end
end
# add more time, in seconds
def add_time(count)
@count += count * Graphics.frame_rate
end
# subtract time, in seconds
def lose_time(count)
@count = [@count - (count * Graphics.frame_rate), 0].max
end
def pause
@pause = true
end
def resume
@pause = false
end
end
#==============================================================================
# ** Sprite_Timer
#------------------------------------------------------------------------------
# This sprite is for timer displays. It monitors $game_timer and automatically
# changes sprite states.
#==============================================================================
class Sprite_Timer < Sprite
alias timer_plus_sprite_update update
def update
timer_plus_sprite_update
update_color
end
def update_color
if @total_sec > 0 && @total_sec <= CRITICAL_TIME_SECONDS
self.bitmap.font.color.set(255, 0, 0)
end
end
end
Credits go to Tsukihime, who authored the original script here.
Downloads / Referenced Files
Log in to download
Log in, then follow the RPG Maker Developers Group to see these download links.
Log in to downloadLicense / Terms Note
Credits go to Tsukihime, who authored the original script here.
Creator Claims / Removal
If you are the original creator and want this listing reassigned, edited, or removed, join BMMPlay and contact the moderators with proof that matches the original RPG Maker Web profile, linked GitHub, itch.io page, or another public creator identity.
Replies (0)
No replies yet.
0
replies
1
view
Topic Summary
Loading summary...