mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
fixes mélangés...
This commit is contained in:
@@ -1,278 +1,278 @@
|
||||
# #===============================================================================
|
||||
# # * Unreal Time System - by FL (Credits will be apreciated)
|
||||
# #===============================================================================
|
||||
# # #===============================================================================
|
||||
# # # * Unreal Time System - by FL (Credits will be apreciated)
|
||||
# # #===============================================================================
|
||||
# # #
|
||||
# # # This script is for Pokémon Essentials. It makes the time in game uses its
|
||||
# # # own clock that only pass when you are in game instead of using real time
|
||||
# # # (like Minecraft and Zelda: Ocarina of Time).
|
||||
# # #
|
||||
# # #== INSTALLATION ===============================================================
|
||||
# # #
|
||||
# # # To this script works, put it above main OR convert into a plugin.
|
||||
# # #
|
||||
# # #== HOW TO USE =================================================================
|
||||
# # #
|
||||
# # # This script automatic works after installed.
|
||||
# # #
|
||||
# # # If you wish to add/reduce time, there are 3 ways:
|
||||
# # #
|
||||
# # # 1. EXTRA_SECONDS/EXTRA_DAYS are variables numbers that hold time passage;
|
||||
# # # The time in these variable isn't affected by PROPORTION.
|
||||
# # # Example: When the player sleeps you wish to the time in game advance
|
||||
# # # 8 hours, so put in EXTRA_SECONDS a game variable number and sum
|
||||
# # # 28800 (60*60*8) in this variable every time that the players sleeps.
|
||||
# # #
|
||||
# # # 2. 'UnrealTime.add_seconds(seconds)' and 'UnrealTime.add_days(days)' does the
|
||||
# # # same thing, in fact, EXTRA_SECONDS/EXTRA_DAYS call these methods.
|
||||
# # #
|
||||
# # # 3. 'UnrealTime.advance_to(16,17,18)' advance the time to a fixed time of day,
|
||||
# # # 16:17:18 on this example.
|
||||
# # #
|
||||
# # #== NOTES ======================================================================
|
||||
# # #
|
||||
# # # If you wish to some parts still use real time like the Trainer Card start time
|
||||
# # # and Pokémon Trainer Memo, just change 'pbGetTimeNow' to 'Time.now' in their
|
||||
# # # scripts.
|
||||
# # #
|
||||
# # # This script uses the Ruby Time class. Before Essentials version 19 (who came
|
||||
# # # with 64-bit ruby) it can only have 1901-2038 range.
|
||||
# # #
|
||||
# # # Some time methods:
|
||||
# # # 'pbGetTimeNow.year', 'pbGetTimeNow.mon' (the numbers from 1-12),
|
||||
# # # 'pbGetTimeNow.day','pbGetTimeNow.hour', 'pbGetTimeNow.min',
|
||||
# # # 'pbGetTimeNow.sec', 'pbGetAbbrevMonthName(pbGetTimeNow.mon)',
|
||||
# # # 'pbGetTimeNow.strftime("%A")' (displays weekday name),
|
||||
# # # 'pbGetTimeNow.strftime("%I:%M %p")' (displays Hours:Minutes pm/am)
|
||||
# # #
|
||||
# # #===============================================================================
|
||||
# #
|
||||
# # This script is for Pokémon Essentials. It makes the time in game uses its
|
||||
# # own clock that only pass when you are in game instead of using real time
|
||||
# # (like Minecraft and Zelda: Ocarina of Time).
|
||||
# # if defined?(PluginManager) && !PluginManager.installed?("Unreal Time System")
|
||||
# # PluginManager.register({
|
||||
# # :name => "Unreal Time System",
|
||||
# # :version => "1.1",
|
||||
# # :link => "https://www.pokecommunity.com/showthread.php?t=285831",
|
||||
# # :credits => "FL"
|
||||
# # })
|
||||
# # end
|
||||
# #
|
||||
# #== INSTALLATION ===============================================================
|
||||
# #
|
||||
# # To this script works, put it above main OR convert into a plugin.
|
||||
# #
|
||||
# #== HOW TO USE =================================================================
|
||||
# #
|
||||
# # This script automatic works after installed.
|
||||
# #
|
||||
# # If you wish to add/reduce time, there are 3 ways:
|
||||
# #
|
||||
# # 1. EXTRA_SECONDS/EXTRA_DAYS are variables numbers that hold time passage;
|
||||
# # The time in these variable isn't affected by PROPORTION.
|
||||
# # Example: When the player sleeps you wish to the time in game advance
|
||||
# # 8 hours, so put in EXTRA_SECONDS a game variable number and sum
|
||||
# # 28800 (60*60*8) in this variable every time that the players sleeps.
|
||||
# #
|
||||
# # 2. 'UnrealTime.add_seconds(seconds)' and 'UnrealTime.add_days(days)' does the
|
||||
# # same thing, in fact, EXTRA_SECONDS/EXTRA_DAYS call these methods.
|
||||
# #
|
||||
# # 3. 'UnrealTime.advance_to(16,17,18)' advance the time to a fixed time of day,
|
||||
# # 16:17:18 on this example.
|
||||
# #
|
||||
# #== NOTES ======================================================================
|
||||
# #
|
||||
# # If you wish to some parts still use real time like the Trainer Card start time
|
||||
# # and Pokémon Trainer Memo, just change 'pbGetTimeNow' to 'Time.now' in their
|
||||
# # scripts.
|
||||
# #
|
||||
# # This script uses the Ruby Time class. Before Essentials version 19 (who came
|
||||
# # with 64-bit ruby) it can only have 1901-2038 range.
|
||||
# #
|
||||
# # Some time methods:
|
||||
# # 'pbGetTimeNow.year', 'pbGetTimeNow.mon' (the numbers from 1-12),
|
||||
# # 'pbGetTimeNow.day','pbGetTimeNow.hour', 'pbGetTimeNow.min',
|
||||
# # 'pbGetTimeNow.sec', 'pbGetAbbrevMonthName(pbGetTimeNow.mon)',
|
||||
# # 'pbGetTimeNow.strftime("%A")' (displays weekday name),
|
||||
# # 'pbGetTimeNow.strftime("%I:%M %p")' (displays Hours:Minutes pm/am)
|
||||
# #
|
||||
# #===============================================================================
|
||||
# module UnrealTime
|
||||
# # Set false to disable this system (returns Time.now)
|
||||
# ENABLED=true
|
||||
#
|
||||
# if defined?(PluginManager) && !PluginManager.installed?("Unreal Time System")
|
||||
# PluginManager.register({
|
||||
# :name => "Unreal Time System",
|
||||
# :version => "1.1",
|
||||
# :link => "https://www.pokecommunity.com/showthread.php?t=285831",
|
||||
# :credits => "FL"
|
||||
# })
|
||||
# # Time proportion here.
|
||||
# # So if it is 100, one second in real time will be 100 seconds in game.
|
||||
# # If it is 60, one second in real time will be one minute in game.
|
||||
# PROPORTION=60
|
||||
#
|
||||
# # Starting on Essentials v17, the map tone only try to refresh tone each 30
|
||||
# # real time seconds.
|
||||
# # If this variable number isn't -1, the game use this number instead of 30.
|
||||
# # When time is changed with advance_to or add_seconds, the tone refreshes.
|
||||
# TONE_CHECK_INTERVAL = 10.0
|
||||
#
|
||||
# # Make this true to time only pass at field (Scene_Map)
|
||||
# # A note to scripters: To make time pass on other scenes, put line
|
||||
# # '$PokemonGlobal.addNewFrameCount' near to line 'Graphics.update'
|
||||
# TIME_STOPS=true
|
||||
#
|
||||
# # Make this true to time pass in battle, during turns and command selection.
|
||||
# # This won't affect the Pokémon and Bag submenus.
|
||||
# # Only works if TIME_STOPS=true.
|
||||
# BATTLE_PASS=true
|
||||
#
|
||||
# # Make this true to time pass when the Dialog box or the main menu are open.
|
||||
# # This won't affect the submenus like Pokémon and Bag.
|
||||
# # Only works if TIME_STOPS=true.
|
||||
# TALK_PASS=true
|
||||
#
|
||||
# # Choose switch number that when true the time won't pass (or -1 to cancel).
|
||||
# # Only works if TIME_STOPS=true.
|
||||
# SWITCH_STOPS=-1
|
||||
#
|
||||
# # Choose variable(s) number(s) that can hold time passage (or -1 to cancel).
|
||||
# # Look at description for more details.
|
||||
# EXTRA_SECONDS=79
|
||||
# EXTRA_DAYS=-1
|
||||
#
|
||||
# # Initial date. In sequence: Year, month, day, hour and minutes.
|
||||
# # Method UnrealTime.reset resets time back to this time.
|
||||
# def self.initial_date
|
||||
# return Time.local(2000,1,1, 12,0)
|
||||
# end
|
||||
#
|
||||
# # Advance to next time. If time already passed, advance
|
||||
# # into the time on the next day.
|
||||
# # Hour is 0..23
|
||||
# def self.advance_to(hour,min=0,sec=0)
|
||||
# if hour < 0 || hour > 23
|
||||
# raise RangeError, "hour is #{hour}, should be 0..23"
|
||||
# end
|
||||
# day_seconds = 60*60*24
|
||||
# seconds_now = pbGetTimeNow.hour*60*60+pbGetTimeNow.min*60+pbGetTimeNow.sec
|
||||
# target_seconds = hour*60*60+min*60+sec
|
||||
# seconds_added = target_seconds-seconds_now
|
||||
# seconds_added += day_seconds if seconds_added<0
|
||||
# $PokemonGlobal.newFrameCount+=seconds_added
|
||||
# PBDayNight.sheduleToneRefresh
|
||||
# end
|
||||
#
|
||||
# # Resets time to initial_date.
|
||||
# def self.reset
|
||||
# raise "Method doesn't work when TIME_STOPS is false!" if !TIME_STOPS
|
||||
# $game_variables[EXTRA_SECONDS]=0 if EXTRA_DAYS>0
|
||||
# $game_variables[EXTRA_DAYS]=0 if EXTRA_DAYS>0
|
||||
# $PokemonGlobal.newFrameCount=0
|
||||
# $PokemonGlobal.extraYears=0
|
||||
# PBDayNight.sheduleToneRefresh
|
||||
# end
|
||||
#
|
||||
# # Does the same thing as EXTRA_SECONDS variable.
|
||||
# def self.add_seconds(seconds)
|
||||
# raise "Method doesn't work when TIME_STOPS is false!" if !TIME_STOPS
|
||||
# $PokemonGlobal.newFrameCount+=(seconds*Graphics.frame_rate)/PROPORTION.to_f
|
||||
# PBDayNight.sheduleToneRefresh
|
||||
# end
|
||||
#
|
||||
# def self.add_days(days)
|
||||
# add_seconds(60*60*24*days)
|
||||
# end
|
||||
#
|
||||
# NEED_32_BIT_FIX = [''].pack('p').size <= 4
|
||||
# end
|
||||
#
|
||||
module UnrealTime
|
||||
# Set false to disable this system (returns Time.now)
|
||||
ENABLED=true
|
||||
|
||||
# Time proportion here.
|
||||
# So if it is 100, one second in real time will be 100 seconds in game.
|
||||
# If it is 60, one second in real time will be one minute in game.
|
||||
PROPORTION=60
|
||||
|
||||
# Starting on Essentials v17, the map tone only try to refresh tone each 30
|
||||
# real time seconds.
|
||||
# If this variable number isn't -1, the game use this number instead of 30.
|
||||
# When time is changed with advance_to or add_seconds, the tone refreshes.
|
||||
TONE_CHECK_INTERVAL = 10.0
|
||||
|
||||
# Make this true to time only pass at field (Scene_Map)
|
||||
# A note to scripters: To make time pass on other scenes, put line
|
||||
# '$PokemonGlobal.addNewFrameCount' near to line 'Graphics.update'
|
||||
TIME_STOPS=true
|
||||
|
||||
# Make this true to time pass in battle, during turns and command selection.
|
||||
# This won't affect the Pokémon and Bag submenus.
|
||||
# Only works if TIME_STOPS=true.
|
||||
BATTLE_PASS=true
|
||||
|
||||
# Make this true to time pass when the Dialog box or the main menu are open.
|
||||
# This won't affect the submenus like Pokémon and Bag.
|
||||
# Only works if TIME_STOPS=true.
|
||||
TALK_PASS=true
|
||||
|
||||
# Choose switch number that when true the time won't pass (or -1 to cancel).
|
||||
# Only works if TIME_STOPS=true.
|
||||
SWITCH_STOPS=-1
|
||||
|
||||
# Choose variable(s) number(s) that can hold time passage (or -1 to cancel).
|
||||
# Look at description for more details.
|
||||
EXTRA_SECONDS=79
|
||||
EXTRA_DAYS=-1
|
||||
|
||||
# Initial date. In sequence: Year, month, day, hour and minutes.
|
||||
# Method UnrealTime.reset resets time back to this time.
|
||||
def self.initial_date
|
||||
return Time.local(2000,1,1, 12,0)
|
||||
end
|
||||
|
||||
# Advance to next time. If time already passed, advance
|
||||
# into the time on the next day.
|
||||
# Hour is 0..23
|
||||
def self.advance_to(hour,min=0,sec=0)
|
||||
if hour < 0 || hour > 23
|
||||
raise RangeError, "hour is #{hour}, should be 0..23"
|
||||
end
|
||||
day_seconds = 60*60*24
|
||||
seconds_now = pbGetTimeNow.hour*60*60+pbGetTimeNow.min*60+pbGetTimeNow.sec
|
||||
target_seconds = hour*60*60+min*60+sec
|
||||
seconds_added = target_seconds-seconds_now
|
||||
seconds_added += day_seconds if seconds_added<0
|
||||
$PokemonGlobal.newFrameCount+=seconds_added
|
||||
PBDayNight.sheduleToneRefresh
|
||||
end
|
||||
|
||||
# Resets time to initial_date.
|
||||
def self.reset
|
||||
raise "Method doesn't work when TIME_STOPS is false!" if !TIME_STOPS
|
||||
$game_variables[EXTRA_SECONDS]=0 if EXTRA_DAYS>0
|
||||
$game_variables[EXTRA_DAYS]=0 if EXTRA_DAYS>0
|
||||
$PokemonGlobal.newFrameCount=0
|
||||
$PokemonGlobal.extraYears=0
|
||||
PBDayNight.sheduleToneRefresh
|
||||
end
|
||||
|
||||
# Does the same thing as EXTRA_SECONDS variable.
|
||||
def self.add_seconds(seconds)
|
||||
raise "Method doesn't work when TIME_STOPS is false!" if !TIME_STOPS
|
||||
$PokemonGlobal.newFrameCount+=(seconds*Graphics.frame_rate)/PROPORTION.to_f
|
||||
PBDayNight.sheduleToneRefresh
|
||||
end
|
||||
|
||||
def self.add_days(days)
|
||||
add_seconds(60*60*24*days)
|
||||
end
|
||||
|
||||
NEED_32_BIT_FIX = [''].pack('p').size <= 4
|
||||
end
|
||||
|
||||
# Essentials V18 and lower compatibility
|
||||
module Settings
|
||||
TIME_SHADING = defined?(ENABLESHADING) ? ENABLESHADING : ::TIME_SHADING
|
||||
end if defined?(TIME_SHADING) || defined?(ENABLESHADING)
|
||||
|
||||
module PBDayNight
|
||||
class << self
|
||||
if method_defined?(:getTone) && UnrealTime::TONE_CHECK_INTERVAL > 0
|
||||
def getTone
|
||||
@cachedTone = Tone.new(0,0,0) if !@cachedTone
|
||||
return @cachedTone if !Settings::TIME_SHADING
|
||||
toneNeedUpdate = (!@dayNightToneLastUpdate ||
|
||||
Graphics.frame_count-@dayNightToneLastUpdate >=
|
||||
Graphics.frame_rate*UnrealTime::TONE_CHECK_INTERVAL
|
||||
)
|
||||
if toneNeedUpdate
|
||||
getToneInternal
|
||||
@dayNightToneLastUpdate = Graphics.frame_count
|
||||
end
|
||||
return @cachedTone
|
||||
end
|
||||
end
|
||||
|
||||
# Shedule a tone refresh on the next try (probably next frame)
|
||||
def sheduleToneRefresh
|
||||
@dayNightToneLastUpdate = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def pbGetTimeNow
|
||||
return Time.now if !$PokemonGlobal || !UnrealTime::ENABLED
|
||||
day_seconds = 60*60*24
|
||||
if UnrealTime::TIME_STOPS
|
||||
# Sum the extra values to newFrameCount
|
||||
if UnrealTime::EXTRA_SECONDS>0
|
||||
UnrealTime.add_seconds(pbGet(UnrealTime::EXTRA_SECONDS))
|
||||
$game_variables[UnrealTime::EXTRA_SECONDS]=0
|
||||
end
|
||||
if UnrealTime::EXTRA_DAYS>0
|
||||
UnrealTime.add_seconds(day_seconds*pbGet(UnrealTime::EXTRA_DAYS))
|
||||
$game_variables[UnrealTime::EXTRA_DAYS]=0
|
||||
end
|
||||
elsif UnrealTime::EXTRA_SECONDS>0 && UnrealTime::EXTRA_DAYS>0
|
||||
# Checks to regulate the max/min values at UnrealTime::EXTRA_SECONDS
|
||||
while pbGet(UnrealTime::EXTRA_SECONDS)>=day_seconds
|
||||
$game_variables[UnrealTime::EXTRA_SECONDS]-=day_seconds
|
||||
$game_variables[UnrealTime::EXTRA_DAYS]+=1
|
||||
end
|
||||
while pbGet(UnrealTime::EXTRA_SECONDS)<=-day_seconds
|
||||
$game_variables[UnrealTime::EXTRA_SECONDS]+=day_seconds
|
||||
$game_variables[UnrealTime::EXTRA_DAYS]-=1
|
||||
end
|
||||
end
|
||||
start_time=UnrealTime.initial_date
|
||||
if UnrealTime::TIME_STOPS
|
||||
time_played=$PokemonGlobal.newFrameCount
|
||||
else
|
||||
time_played=Graphics.frame_count
|
||||
end
|
||||
time_played=(time_played*UnrealTime::PROPORTION)/Graphics.frame_rate
|
||||
time_jumped=0
|
||||
if UnrealTime::EXTRA_SECONDS>-1
|
||||
time_jumped+=pbGet(UnrealTime::EXTRA_SECONDS)
|
||||
end
|
||||
if UnrealTime::EXTRA_DAYS>-1
|
||||
time_jumped+=pbGet(UnrealTime::EXTRA_DAYS)*day_seconds
|
||||
end
|
||||
time_ret = 0
|
||||
# Before Essentials V19, there is a year limit. To prevent crashes due to this
|
||||
# limit, every time that you reach in year 2036 the system will subtract 6
|
||||
# years (to works with leap year) from your date and sum in
|
||||
# $PokemonGlobal.extraYears. You can sum your actual year with this extraYears
|
||||
# when displaying years.
|
||||
loop do
|
||||
time_fix=0
|
||||
if $PokemonGlobal.extraYears!=0
|
||||
time_fix = $PokemonGlobal.extraYears*day_seconds*(365*6+1)/6
|
||||
end
|
||||
time_ret=start_time+(time_played+time_jumped-time_fix)
|
||||
break if !UnrealTime::NEED_32_BIT_FIX || time_ret.year<2036
|
||||
$PokemonGlobal.extraYears+=6
|
||||
end
|
||||
return time_ret
|
||||
end
|
||||
|
||||
if UnrealTime::ENABLED
|
||||
class PokemonGlobalMetadata
|
||||
attr_accessor :newFrameCount # Became float when using extra values
|
||||
attr_accessor :extraYears
|
||||
|
||||
def addNewFrameCount
|
||||
return if (UnrealTime::SWITCH_STOPS>0 &&
|
||||
$game_switches[UnrealTime::SWITCH_STOPS])
|
||||
self.newFrameCount+=1
|
||||
end
|
||||
|
||||
def newFrameCount
|
||||
@newFrameCount=0 if !@newFrameCount
|
||||
return @newFrameCount
|
||||
end
|
||||
|
||||
def extraYears
|
||||
@extraYears=0 if !@extraYears
|
||||
return @extraYears
|
||||
end
|
||||
end
|
||||
|
||||
if UnrealTime::TIME_STOPS
|
||||
class Scene_Map
|
||||
alias :updateold :update
|
||||
def update
|
||||
$PokemonGlobal.addNewFrameCount
|
||||
updateold
|
||||
end
|
||||
|
||||
if UnrealTime::TALK_PASS
|
||||
alias :miniupdateold :miniupdate
|
||||
def miniupdate
|
||||
$PokemonGlobal.addNewFrameCount
|
||||
miniupdateold
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if UnrealTime::BATTLE_PASS
|
||||
class PokeBattle_Scene
|
||||
alias :pbGraphicsUpdateold :pbGraphicsUpdate
|
||||
def pbGraphicsUpdate
|
||||
$PokemonGlobal.addNewFrameCount
|
||||
pbGraphicsUpdateold
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
# # Essentials V18 and lower compatibility
|
||||
# module Settings
|
||||
# TIME_SHADING = defined?(ENABLESHADING) ? ENABLESHADING : ::TIME_SHADING
|
||||
# end if defined?(TIME_SHADING) || defined?(ENABLESHADING)
|
||||
#
|
||||
# module PBDayNight
|
||||
# class << self
|
||||
# if method_defined?(:getTone) && UnrealTime::TONE_CHECK_INTERVAL > 0
|
||||
# def getTone
|
||||
# @cachedTone = Tone.new(0,0,0) if !@cachedTone
|
||||
# return @cachedTone if !Settings::TIME_SHADING
|
||||
# toneNeedUpdate = (!@dayNightToneLastUpdate ||
|
||||
# Graphics.frame_count-@dayNightToneLastUpdate >=
|
||||
# Graphics.frame_rate*UnrealTime::TONE_CHECK_INTERVAL
|
||||
# )
|
||||
# if toneNeedUpdate
|
||||
# getToneInternal
|
||||
# @dayNightToneLastUpdate = Graphics.frame_count
|
||||
# end
|
||||
# return @cachedTone
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# # Shedule a tone refresh on the next try (probably next frame)
|
||||
# def sheduleToneRefresh
|
||||
# @dayNightToneLastUpdate = nil
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# def pbGetTimeNow
|
||||
# return Time.now if !$PokemonGlobal || !UnrealTime::ENABLED
|
||||
# day_seconds = 60*60*24
|
||||
# if UnrealTime::TIME_STOPS
|
||||
# # Sum the extra values to newFrameCount
|
||||
# if UnrealTime::EXTRA_SECONDS>0
|
||||
# UnrealTime.add_seconds(pbGet(UnrealTime::EXTRA_SECONDS))
|
||||
# $game_variables[UnrealTime::EXTRA_SECONDS]=0
|
||||
# end
|
||||
# if UnrealTime::EXTRA_DAYS>0
|
||||
# UnrealTime.add_seconds(day_seconds*pbGet(UnrealTime::EXTRA_DAYS))
|
||||
# $game_variables[UnrealTime::EXTRA_DAYS]=0
|
||||
# end
|
||||
# elsif UnrealTime::EXTRA_SECONDS>0 && UnrealTime::EXTRA_DAYS>0
|
||||
# # Checks to regulate the max/min values at UnrealTime::EXTRA_SECONDS
|
||||
# while pbGet(UnrealTime::EXTRA_SECONDS)>=day_seconds
|
||||
# $game_variables[UnrealTime::EXTRA_SECONDS]-=day_seconds
|
||||
# $game_variables[UnrealTime::EXTRA_DAYS]+=1
|
||||
# end
|
||||
# while pbGet(UnrealTime::EXTRA_SECONDS)<=-day_seconds
|
||||
# $game_variables[UnrealTime::EXTRA_SECONDS]+=day_seconds
|
||||
# $game_variables[UnrealTime::EXTRA_DAYS]-=1
|
||||
# end
|
||||
# end
|
||||
# start_time=UnrealTime.initial_date
|
||||
# if UnrealTime::TIME_STOPS
|
||||
# time_played=$PokemonGlobal.newFrameCount
|
||||
# else
|
||||
# time_played=Graphics.frame_count
|
||||
# end
|
||||
# time_played=(time_played*UnrealTime::PROPORTION)/Graphics.frame_rate
|
||||
# time_jumped=0
|
||||
# if UnrealTime::EXTRA_SECONDS>-1
|
||||
# time_jumped+=pbGet(UnrealTime::EXTRA_SECONDS)
|
||||
# end
|
||||
# if UnrealTime::EXTRA_DAYS>-1
|
||||
# time_jumped+=pbGet(UnrealTime::EXTRA_DAYS)*day_seconds
|
||||
# end
|
||||
# time_ret = 0
|
||||
# # Before Essentials V19, there is a year limit. To prevent crashes due to this
|
||||
# # limit, every time that you reach in year 2036 the system will subtract 6
|
||||
# # years (to works with leap year) from your date and sum in
|
||||
# # $PokemonGlobal.extraYears. You can sum your actual year with this extraYears
|
||||
# # when displaying years.
|
||||
# loop do
|
||||
# time_fix=0
|
||||
# if $PokemonGlobal.extraYears!=0
|
||||
# time_fix = $PokemonGlobal.extraYears*day_seconds*(365*6+1)/6
|
||||
# end
|
||||
# time_ret=start_time+(time_played+time_jumped-time_fix)
|
||||
# break if !UnrealTime::NEED_32_BIT_FIX || time_ret.year<2036
|
||||
# $PokemonGlobal.extraYears+=6
|
||||
# end
|
||||
# return time_ret
|
||||
# end
|
||||
#
|
||||
# if UnrealTime::ENABLED
|
||||
# class PokemonGlobalMetadata
|
||||
# attr_accessor :newFrameCount # Became float when using extra values
|
||||
# attr_accessor :extraYears
|
||||
#
|
||||
# def addNewFrameCount
|
||||
# return if (UnrealTime::SWITCH_STOPS>0 &&
|
||||
# $game_switches[UnrealTime::SWITCH_STOPS])
|
||||
# self.newFrameCount+=1
|
||||
# end
|
||||
#
|
||||
# def newFrameCount
|
||||
# @newFrameCount=0 if !@newFrameCount
|
||||
# return @newFrameCount
|
||||
# end
|
||||
#
|
||||
# def extraYears
|
||||
# @extraYears=0 if !@extraYears
|
||||
# return @extraYears
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# if UnrealTime::TIME_STOPS
|
||||
# class Scene_Map
|
||||
# alias :updateold :update
|
||||
# def update
|
||||
# $PokemonGlobal.addNewFrameCount
|
||||
# updateold
|
||||
# end
|
||||
#
|
||||
# if UnrealTime::TALK_PASS
|
||||
# alias :miniupdateold :miniupdate
|
||||
# def miniupdate
|
||||
# $PokemonGlobal.addNewFrameCount
|
||||
# miniupdateold
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# if UnrealTime::BATTLE_PASS
|
||||
# class PokeBattle_Scene
|
||||
# alias :pbGraphicsUpdateold :pbGraphicsUpdate
|
||||
# def pbGraphicsUpdate
|
||||
# $PokemonGlobal.addNewFrameCount
|
||||
# pbGraphicsUpdateold
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
Reference in New Issue
Block a user