Gambá Programar Relógio
Agradecimentos:
-Autor: Gambá
Versão:
1.0
Descrição:
Permite que você programe uma switch para ativar daqui a um certo tempo, de acordo com o relógio do Windows, ou seja, você não precisa estar com o jogo ligado, o problema é que o jogador pode mudar o relógio do Windows quando quiser
Utilização:
Explicações no script
Script:
Demo:
Gambá Programar Relógio
Agradecimentos:
-Autor: Gambá
Versão:
1.0
Descrição:
Permite que você programe uma switch para ativar daqui a um certo tempo, de acordo com o relógio do Windows, ou seja, você não precisa estar com o jogo ligado, o problema é que o jogador pode mudar o relógio do Windows quando quiser
Utilização:
Explicações no script
Script:
- Spoiler:
- Código:
#================================================================
# Gambá Programar Relógio
#================================================================
# Esse script permite programar uma switch para ser ativada
# de acordo com o relógio do windows, você pode programar para
# ativar daqui a um certo tempo, ou num dia exato.
# Se você programar por exemplo uma switch para ativar daqui
# a uma hora, e então salvar o jogo, e carregá-lo duas horas
# depois, a switch que foi programada irá ativar assim que você
# voltar ao jogo, o jogo não precisa estar aberto
#
#
# Para programar uma switch pra daqui a um certo tempo utilize
# o comando:
# $game_time.program(Switch,h,m,s,D,M,A)
#
# No lugar de:
# Switch - Número da switch que será ativada (ID)
# h - Daqui a quantas horas a switch será ativada
# m - Daqui a quantos minutos
# s - Daqui a quantos segundos
# D - Dias
# M - Meses
# A - Anos
#
#
# Para programar uma switch para um certo dia, exato, utilize
# o comando:
# $game_time.program_exact(Switch,h,m,s,D,M,A)
#
# No lugar de:
# Switch - Número da switch que será ativada (ID)
# h - Hora exata em que a switch será ativada
# m - Minuto exato
# s - Segundo exato
# D - Dia exato
# M - Mês exato
# A - Ano exato
#
# Exemplos:
# $game_time.program(12,0,3,0,0,0,0)
# A switch 12 irá ativar daqui a 3 minutos, no relógio do
# windows
#
# $game_time.program_exact(18,0,0,0,25,12,2009)
# A switch 18 irá ativar quando for dia 25/12/2009, no relógio
# do windows
#
#================================================================
class Game_Time
attr_accessor :hours
attr_accessor :minutes
attr_accessor :seconds
attr_accessor :dia
attr_accessor :mes
attr_accessor :ano
attr_accessor :Aprogram
attr_accessor :Mprogram
attr_accessor :Dprogram
attr_accessor :hprogram
attr_accessor :mprogram
attr_accessor :sprogram
attr_accessor :id_max
attr_accessor :idp
attr_accessor :rtime
def initialize
@rtime=Time.now
@hours=rtime.strftime("%H").to_i
@minutes=rtime.strftime("%M").to_i
@seconds=rtime.strftime("%S").to_i
@dia=rtime.strftime("%d").to_i
@mes=rtime.strftime("%m").to_i
@ano=rtime.strftime("%Y").to_i
@idp = []
@Aprogram = []
@Mprogram = []
@Dprogram = []
@hprogram = []
@mprogram = []
@sprogram = []
for i in 1..5000
@idp[i] = 0
@Aprogram[i] = 0
@Mprogram[i] = 0
@Dprogram[i] = 0
@hprogram[i] = 0
@mprogram[i] = 0
@sprogram[i] = 0
end
@id = 0
@id_max = 0
switch = 0
end
def get_time
@rtime=Time.now
@hours=rtime.strftime("%H").to_i
@minutes=rtime.strftime("%M").to_i
@seconds=rtime.strftime("%S").to_i
@dia=rtime.strftime("%d").to_i
@mes=rtime.strftime("%m").to_i
@ano=rtime.strftime("%Y").to_i
end
#==============
def program(switch,h,m,s,di,me,an)
@id = switch
if @id > @id_max
@id_max = @id
end
@idp[@id] = @id
@hprogram[@id] = @hours + h
@mprogram[@id] = @minutes + m
@sprogram[@id] = @seconds + s
@Dprogram[@id] = @dia + di
@Mprogram[@id] = @mes + me
@Aprogram[@id] = @ano + an
end
def program_exact(switch,h,m,s,di,me,an)
@id = switch
if @id > @id_max
@id_max = @id
end
@idp[@id] = @id
@hprogram[@id] = h
@mprogram[@id] = m
@sprogram[@id] = s
@Dprogram[@id] = di
@Mprogram[@id] = me
@Aprogram[@id] = an
end
#=================
end
#=================
#=================
class Scene_Map
alias time_update update
def ativar(i)
$game_switches[i] = true
$game_map.refresh
$game_time.idp[i] = 0
$game_time.hprogram[i] = 0
$game_time.mprogram[i] = 0
$game_time.sprogram[i] = 0
$game_time.Dprogram[i] = 0
$game_time.Mprogram[i] = 0
$game_time.Aprogram[i] = 0
if @id_max == i
@id_max = 0
end
end
def update
$game_time.get_time
#@t = $game_time
@r = []
@r[0] = $game_time.seconds
@r[1] = $game_time.minutes
@r[2] = $game_time.hours
@r[3] = $game_time.dia
@r[4] = $game_time.mes
@r[5] = $game_time.ano
if $game_time.id_max > 0
for i in 1..$game_time.id_max
if $game_time.idp[i] != 0
if @r[5] > $game_time.Aprogram[i]
ativar(i)
elsif @r[5] == $game_time.Aprogram[i] and
@r[4] > $game_time.Mprogram[i]
ativar(i)
elsif @r[5] == $game_time.Aprogram[i] and
@r[4] == $game_time.Mprogram[i] and
@r[3] > $game_time.Dprogram[i]
ativar(i)
elsif @r[5] == $game_time.Aprogram[i] and
@r[4] == $game_time.Mprogram[i] and
@r[3] == $game_time.Dprogram[i] and
@r[2] > $game_time.hprogram[i]
ativar(i)
elsif @r[5] == $game_time.Aprogram[i] and
@r[4] == $game_time.Mprogram[i] and
@r[3] == $game_time.Dprogram[i] and
@r[2] == $game_time.hprogram[i] and
@r[1] > $game_time.mprogram[i]
ativar(i)
elsif @r[5] == $game_time.Aprogram[i] and
@r[4] == $game_time.Mprogram[i] and
@r[3] == $game_time.Dprogram[i] and
@r[2] == $game_time.hprogram[i] and
@r[1] == $game_time.mprogram[i] and
@r[0] >= $game_time.sprogram[i]
ativar(i)
end
end
end
end
time_update
end
end
#=================
class Scene_Save < Scene_File
def write_save_data(file)
write_characters(file)
write_frame(file)
write_setup(file)
write_data(file)
time_write(file)
end
def write_characters(file)
characters = []
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
characters.push([actor.character_name, actor.character_hue])
end
Marshal.dump(characters, file)
end
def write_frame(file)
Marshal.dump(Graphics.frame_count, file)
end
def write_setup(file)
$game_system.save_count += 1
$game_system.magic_number = $data_system.magic_number
end
def write_data(file)
Marshal.dump($game_system, file)
Marshal.dump($game_switches, file)
Marshal.dump($game_variables, file)
Marshal.dump($game_self_switches, file)
Marshal.dump($game_screen, file)
Marshal.dump($game_actors, file)
Marshal.dump($game_party, file)
Marshal.dump($game_troop, file)
Marshal.dump($game_map, file)
Marshal.dump($game_player, file)
end
def time_write(file)
Marshal.dump($game_time, file)
end
end
#=================
class Scene_Load < Scene_File
def read_save_data(file)
read_characters(file)
read_frame(file)
read_data(file)
read_time(file)
read_refresh
end
def read_characters(file)
characters = Marshal.load(file)
end
def read_frame(file)
Graphics.frame_count = Marshal.load(file)
end
def read_data(file)
$game_system = Marshal.load(file)
$game_switches = Marshal.load(file)
$game_variables = Marshal.load(file)
$game_self_switches = Marshal.load(file)
$game_screen = Marshal.load(file)
$game_actors = Marshal.load(file)
$game_party = Marshal.load(file)
$game_troop = Marshal.load(file)
$game_map = Marshal.load(file)
$game_player = Marshal.load(file)
end
def read_time(file)
$game_time = Marshal.load(file)
end
def read_refresh
$game_party.refresh
end
end
#=================
class Scene_Title
alias time_title command_new_game
def command_new_game
$game_time=Game_Time.new
time_title
end
end
Demo:
Gambá Programar Relógio