RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
A question...

0 Members and 1 Guest are viewing this topic.

**
Rep:
Level 89
I'm no good at scripting what so ever, so I'm using Near_Frantastica's day and night script. The part I labled game_time, is this...
Code: [Select]
#=======================================#
# â–  class Game_Title                   #
#    Written by Deke                    #
#    Rewritten by Near_Fantastica       #
#    Clock Added by Prexus              #
#---------------------------------------#
#=======================================#

# Search CLOCK PARAMETERS to adjust the size of the clock. Just change the
# height and width and the whole thing will adjust accordingly :)
#
# Search -Change File Name Here- without the - to change the background of the clock.

class Game_Time

attr_accessor :minute_length

def initialize
@minute_length=1.0      #length of game minute in real seconds
@hour_length= 60.0      #minute in an hour
@day_length=24.0        #hours in a day
@month_length=30.0    #days in a month
@year_length=12.0       #months in a year
@minutes=0                 #starting minute count
start_minute=0
add_minutes(start_minute)
start_hour=12               #starting hour count
add_hours(start_hour)
start_day=5                 #starting day count
add_days(start_day)
start_month=1              #starting month count
add_months(start_month-1)
start_year=129              #starting year count
add_years(start_year)
end

def add_minutes(minutes)
@minutes +=minutes
end

def add_hours(hours)
@minutes +=hours*@hour_length
end

def add_days(days)
@minutes += days*@hour_length*@day_length
end

def add_months(months)
@minutes +=months * @hour_length*@day_length*@month_length
end

def add_years(years)
@minutes += years * @hour_length*@day_length*@month_length * @year_length
end


def get_year
 minutes=get_total_minutes
 year=minutes / @hour_length / @day_length / @month_length  / @year_length
 return year
end
 
def get_month
 minutes=get_total_minutes
 month=minutes / @hour_length / @day_length /  @month_length % @year_length + 1
 return month
end

def get_day
 minutes=get_total_minutes
 day=minutes / @hour_length / @day_length % @month_length
 return day
end
 
def get_hour
 minutes=get_total_minutes
 hour=minutes / @hour_length % @day_length
 return hour
end

def get_total_minutes
 total_sec=Graphics.frame_count / Graphics.frame_rate
 minute=(total_sec/@minute_length+@minutes)
 return minute
end

def get_minute
minutes=get_total_minutes % @hour_length
return minutes
end

def get_tone
period_length=Math::PI*(get_hour / @day_length)
red_shift=  -100+ 115*Math.sin(period_length)
green_shift=  -140+ 155*Math.sin(period_length)
blue_shift=  -150+ 165*Math.sin(period_length)
return Tone.new(red_shift, green_shift, blue_shift, 0)
end

end # of class Game_Time

#=======================================#
# â–  class Window_Time                                                            #
# written by Deke                                                                      #
#------------------------------------------------------------------------------#
#=======================================#
class Window_Time < Window_Base

#--------------------------------------------------------------------------
def initialize
 super(0, 0, 160, 96)
 self.contents = Bitmap.new(width - 32, height - 32)
 self.contents.font.name = $fontface  # "Time" window font
 self.contents.font.size = $fontsize
 refresh
end

#--------------------------------------------------------------------------
def refresh
 self.contents.clear
 @total_sec = Graphics.frame_count / Graphics.frame_rate
 @minute=$game_time.get_minute.floor
 hour = $game_time.get_hour
 pm_flag= hour >=12 ? true : false
 hour= hour >= 12 ? hour-12 : hour
 day=$game_time.get_day
 month=$game_time.get_month
 year=$game_time.get_year
 if hour.floor==0
   text=sprintf("%02d:%02d",12,@minute)
 else
   text=sprintf("%02d:%02d",hour,@minute)
 end
 if pm_flag
   text += " PM"
 else
   text += " AM"
 end
 self.contents.font.color = normal_color
 self.contents.draw_text(4, 0, 120, 32, text, 2)
 text = sprintf("%02d-%02d-%02d", month, day, year)
 self.contents.font.color=system_color
 self.contents.draw_text(4,32,120,32,text)
end

#--------------------------------------------------------------------------
def update
 if $game_time.get_minute.floor != @minute
   refresh
 end
end
end # of class

# Window Clock by Prexus
class Window_Clock < Window_Base
 def initialize(x, y, width, height)

   super(x, y, width, height)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.opacity = 0
   @time = $game_time.get_minute.floor
   if self.contents.width > self.contents.height
     @radius = self.contents.height / 2
   else
     @radius = self.contents.width / 2
   end
   @center_x = self.contents.width / 2
   @center_y = self.contents.height / 2
   refresh
 end
 def update
   if @time != $game_time.get_minute.floor
     refresh
     @time = $game_time.get_minute.floor
   end
 end
 def refresh
   self.contents.clear
   if @face != nil
     @face.dispose
   end
   @face = Sprite.new
   @face.bitmap = RPG::Cache.picture("clock") # Change File Name Here
   @face.x = self.x + 16
   @face.y = self.y + 16
   #self.contents.fill_circle(@radius-1, @center_x, @center_y, Color.new(255,248,220,90), perfection = 1)
   #self.contents.draw_ring(@radius-1, @center_x, @center_y, 2, Color.new(0,0,0,255))
   self.contents.draw_clock($game_time.get_minute.floor, $game_time.get_hour.floor, @center_x, @center_y, @radius)
 end
 def dispose
   self.contents.clear
   @face.dispose
   super
 end
end

#=======================================
class Game_Temp
#--------------------------------------------------------------------------
# ● Refer setup to Game Temp
#--------------------------------------------------------------------------
alias dns_game_temp_initalize initialize
#--------------------------------------------------------------------------
# ● Refer the Attr
#--------------------------------------------------------------------------
attr_reader    :map_infos  #Added Lines
attr_reader    :outside_array  #Added Lines
#--------------------------------------------------------------------------
# ● Refer setup to Scene Map
#--------------------------------------------------------------------------
def initialize
  dns_game_temp_initalize
  @outside_array = Array.new
  @map_infos = load_data("Data/MapInfos.rxdata")
  for key in @map_infos.keys
      @outside_array[key] = @map_infos[key].name.include?("*")
  end
end
end

#=======================================
class Scene_Map
#--------------------------------------------------------------------------
# ● Refer setup to Scene Map
#--------------------------------------------------------------------------
alias dns_scene_map_main main
alias dns_scene_map_update update
#--------------------------------------------------------------------------
# ● Main
#--------------------------------------------------------------------------
def main
   if $game_temp.outside_array[$game_map.map_id]
     tone=$game_time.get_tone
    @minute=$game_time.get_minute.floor
    $game_screen.start_tone_change(tone, 0)
  end
      # スプライトセットを作成
  @spriteset = Spriteset_Map.new
 
  #CLOCK PARAMETERS (X POSITION, Y POSITION, WIDTH, HEIGHT)
   @clock = Window_Clock.new(640-82, 480-82, 82, 82)
   
  # メッセージウィンドウを作成
  @message_window = Window_Message.new
  # トランジション実行
  Graphics.transition
  # メインループ
  loop do
    $light_effects.refresh
    # ゲーム画面を更新
    Graphics.update
    # 入力情報を更新
    Input.update
    # フレーム更新
    update
    # 画面が切り替わったらループを中断
    if $scene != self
      break
    end
  end
  # トランジション準備
  Graphics.freeze
  # スプライトセットを解放
  @spriteset.dispose
  @clock.dispose
  # メッセージウィンドウを解放
  @message_window.dispose
  # タイトル画面に切り替え中の場合
  if $scene.is_a?(Scene_Title)
    # 画面をフェードアウト
    Graphics.transition
    Graphics.freeze
  end
  $light_effects.hide
end
#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------
def update
  $light_effects.update
   conditional1 =$game_temp.outside_array[$game_map.map_id] and $game_time.get_minute.floor != @minute
   conditional2 =$game_temp.outside_array[$game_map.map_id] and @current_id != $game_map.map_id
   if conditional1 or conditional2
         tone=$game_time.get_tone
         $game_screen.start_tone_change(tone, 0)
         @minute = $game_time.get_minute.floor
         $game_map.need_refresh=true
         @current_id=$game_map.map_id
   end
   if $game_temp.outside_array[$game_map.map_id] == false and @current_id != $game_map.map_id
      $game_screen.start_tone_change(Tone.new(0,0,0,0),0)
      @current_id=$game_map.map_id
    end
    @clock.update
  dns_scene_map_update
end
end

#======================================================
class Scene_Title
#--------------------------------------------------------------------------
# ● Refer setup to Scene Map
#--------------------------------------------------------------------------
alias dns_scene_title_update update
#--------------------------------------------------------------------------
# ● Refer setup to Scene Map
#--------------------------------------------------------------------------
def update
 $game_time=Game_Time.new
  #Dubealex Addition (from XRXS) to show Map Name on screen
 dns_scene_title_update
end
end

#========================================================
class Scene_Load
def read_save_data(file)
 characters = Marshal.load(file)
 Graphics.frame_count = Marshal.load(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)
 $game_time           =Marshal.load(file) #Added Line
 if $game_system.magic_number != $data_system.magic_number
   $game_map.setup($game_map.map_id)
   $game_player.center($game_player.x, $game_player.y)
 end
 $game_party.refresh
end
end # of Scene_Load updates

#=======================================================
class Scene_Save
def write_save_data(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)
 Marshal.dump(Graphics.frame_count, file)
 $game_system.save_count += 1
 $game_system.magic_number = $data_system.magic_number
 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)
 Marshal.dump($game_time,file) # Added Line
end
end # of Scene_Save updates

#========================================================

class Game_Map
#--------------------------------------------------------------------------
# ● Refer the attr
#--------------------------------------------------------------------------
attr_reader   :outside
attr_reader   :map_id
#--------------------------------------------------------------------------
# ● Outside
#--------------------------------------------------------------------------
def outside
   return $game_temp.outside_array[@map_id]
end
end

#==============================================================================
# â–  Light Effect System
#------------------------------------------------------------------------------
#  By: Near Fantastica
#   Date: 13/2/05
#
#   Addes light Effects to the DNS so objects glow and have ground effect lighting...
#==============================================================================

class Light_Effect_System
#--------------------------------------------------------------------------
# ● Refer the attr
#--------------------------------------------------------------------------
attr_accessor    :picture_le
attr_accessor    :event_list
attr_accessor    :type_list
#--------------------------------------------------------------------------
# ● Initialization
#--------------------------------------------------------------------------
def initialize
  @event_counter = 0

  @picture_le = Array.new
  @event_list = Array.new
  @type_list = Array.new
end
#--------------------------------------------------------------------------
# ● Setup Light Effects on Map Change
#--------------------------------------------------------------------------
def setup
  # Setup Event Max
  @event_counter = 0
  for i in 1..999
    if $game_map.map.events[i].id > @event_counter
      @event_counter = $game_map.map.events[i].id
    end
  end
  #
  for i in 1..@event_counter
    if  $game_map.map.events[i] == nil
      next
    end
    case $game_map.map.events[i].name
    when "Ground"
      ground(i)
    when "Fire"
      fire(i)
    when "Lamp Post"
      lamp(i)
    when "Left Lantern"
      left_lantern(i)
    when "Right Lantern"
      right_lantern(i)
    end
  end
end
#--------------------------------------------------------------------------
# ● Updates the Array based on time of day
#--------------------------------------------------------------------------
def update
  if $game_time.get_hour > 7 and $game_time.get_hour < 14
    hide
  else
    show
  end
end
#--------------------------------------------------------------------------
# ● Updates the XY of the sprites
#--------------------------------------------------------------------------
def refresh
  for i in 0..$light_effects.picture_le.size - 1
    case $light_effects.type_list[i]
    when "Ground"
      $light_effects.picture_le[i].x = ($game_map.events[$light_effects.event_list[i]].real_x - 200 - $game_map.display_x) / 4
      $light_effects.picture_le[i].y = ($game_map.events[$light_effects.event_list[i]].real_y - 200 - $game_map.display_y) / 4
      $light_effects.picture_le[i].visible = true
    when "Fire"
      $light_effects.picture_le[i].x = ($game_map.events[$light_effects.event_list[i]].real_x - 300 - $game_map.display_x) / 4
      $light_effects.picture_le[i].y = ($game_map.events[$light_effects.event_list[i]].real_y - 300 - $game_map.display_y) / 4
      $light_effects.picture_le[i].visible = true
    when "Left Lamp Post"
      $light_effects.picture_le[i].x = (-0.25 * $game_map.display_x) + ($game_map.events[$light_effects.event_list[i]].x * 32) - 5
      $light_effects.picture_le[i].y = (-0.25 * $game_map.display_y) + ($game_map.events[$light_effects.event_list[i]].y * 32) - 15
    when "Right Lamp Post"
      $light_effects.picture_le[i].x = (-0.25 * $game_map.display_x) + ($game_map.events[$light_effects.event_list[i]].x * 32) - 25
      $light_effects.picture_le[i].y = (-0.25 * $game_map.display_y) + ($game_map.events[$light_effects.event_list[i]].y * 32) - 15
      $light_effects.picture_le[i].visible = true
    when "Left Lantern"
      $light_effects.picture_le[i].x = (-0.25 * $game_map.display_x) + ($game_map.events[$light_effects.event_list[i]].x * 32) - 20
        $light_effects.picture_le[i].y = (-0.25 * $game_map.display_y) + ($game_map.events[$light_effects.event_list[i]].y * 32) - 5
        $light_effects.picture_le[i].visible = true
    when "Right Lantern"
      $light_effects.picture_le[i].x = (-0.25 * $game_map.display_x) + ($game_map.events[$light_effects.event_list[i]].x * 32) - 10
      $light_effects.picture_le[i].y = (-0.25 * $game_map.display_y) + ($game_map.events[$light_effects.event_list[i]].y * 32) - 5
      $light_effects.picture_le[i].visible = true
    end
  end
end
#--------------------------------------------------------------------------
# ● Redraws the Array
#--------------------------------------------------------------------------
def redraw
  if @picture_le != []
    for i in 0..@picture_le.size - 1
      @picture_le[i].bitmap.dispose
    end
    @picture_le = Array.new
    @event_list = Array.new
    @type_list = Array.new
  end
end
#--------------------------------------------------------------------------
# ● Shows Array
#--------------------------------------------------------------------------
def show
  if @picture_le != []
    for i in 0..@picture_le.size - 1
      @picture_le[i].visible = true
    end
  end
end
#--------------------------------------------------------------------------
# ● Hides Array
#--------------------------------------------------------------------------
def hide
  if @picture_le != []
    for i in 0..@picture_le.size - 1
       @picture_le[i].visible = false
    end
  end
end
#--------------------------------------------------------------------------
# ● Setup Light Effects for Ground
#--------------------------------------------------------------------------
def ground(event_index)
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.zoom_x = 200 / 100.0
  light_effects.zoom_y = 200 / 100.0
  light_effects.z = 1000
  light_effects.opacity = 50
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Ground")
end
#--------------------------------------------------------------------------
# ● Setup Light Effects for Fire
#--------------------------------------------------------------------------
def fire(event_index)
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.zoom_x = 300 / 100.0
  light_effects.zoom_y = 300 / 100.0
  light_effects.z = 1000
  light_effects.opacity = 100
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Fire")
end
#--------------------------------------------------------------------------
# ● Setup Light Effects for Lamp
#--------------------------------------------------------------------------
def lamp(event_index)
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.z = 1000
  light_effects.opacity = 100
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Left Lamp Post")
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.z = 1000
  light_effects.opacity = 100
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Right Lamp Post")
end
#--------------------------------------------------------------------------
# ● Setup Light Effects for Lantern
#--------------------------------------------------------------------------
def left_lantern(event_index)
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.z = 1000
  light_effects.opacity = 150
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Left Lantern")
end
  #--------------------------------------------------------------------------
# ● Setup Light Effects for Lantern
#--------------------------------------------------------------------------
def right_lantern(event_index)
  light_effects = Sprite.new
  light_effects.bitmap = RPG::Cache.picture("LE.PNG")
  light_effects.z = 1000
  light_effects.opacity = 150
  light_effects.visible = false
  @picture_le.push(light_effects)
  @event_list.push(event_index)
  @type_list.push("Right Lantern")
end
end

#==============================================================================
# â–  Game_Map
#------------------------------------------------------------------------------
#  Add defenision of the names to Game Map Class
#==============================================================================

class Game_Map
#--------------------------------------------------------------------------
# ● Refer the attr
#--------------------------------------------------------------------------
attr_accessor :map
#--------------------------------------------------------------------------
# ● Refer setup to Game Map
#--------------------------------------------------------------------------
alias les_game_map_setup setup
#--------------------------------------------------------------------------
# ● Refers the Map Setup
#--------------------------------------------------------------------------
def setup(map_id)
  $light_effects.redraw
  les_game_map_setup(map_id)
  $light_effects.setup
end
end

#==============================================================================
# â–  Scene_Title
#------------------------------------------------------------------------------
#  It is the class which processes the title picture
#==============================================================================

class Scene_Title
#--------------------------------------------------------------------------
# ● Refer setup to Scene Title
#--------------------------------------------------------------------------
alias les_scene_title_update update
#--------------------------------------------------------------------------
# ● Sets up the ABS
#--------------------------------------------------------------------------
def update
 $light_effects = Light_Effect_System.new
 les_scene_title_update
end
end





My question is how would I go about making an event change the hour of the time of the day with the call script? I have no idea how to work it so any help would be awesome :)


EDIT : This isnt the full script, so dont try it if you want to use it. Tell me and I'll post the whole thing.

****
Rep:
Level 90
Is that ...?
Could that be the script I'm looking for ?

The day and night script ?
If so I wanna know how to do certain events at night and certain events in the morning.
MSN CHAT-

BlueXx says: Why would i lie to someone as dumb as you?

Kite says: Cuz i'm as dumb as me

BlueXx says: Good point

**
Rep:
Level 89
^^^ I would like to know that too. I should post the full script I guess

****
Rep:
Level 90
Yeah, I need that script. You know like every 7-8 minutes it changes from morning to night. I'd like that.
MSN CHAT-

BlueXx says: Why would i lie to someone as dumb as you?

Kite says: Cuz i'm as dumb as me

BlueXx says: Good point

******
Rep:
Level 91
you are just proving just by how far event clocks and day/night system are better than script ones...

if you are slow and didn't figure it out on your own- freaking use events... -.-
holy shit my sig was big!

*
I love Firerain
Rep:
Level 97
=D
Blue is right, your script doesn't work(you posted in troubleshooting) so events are better
Arlen is hot.

******
Rep:
Level 91
even if the script did work.. and it  should work...
if they want things to only happen at day or night time, it's alot easier to use events
holy shit my sig was big!

****
Rep:
Level 90
Ok cool, But I don't know what buttons to hit day and what buttons to hit night. I also need to put different events during night and morning. That all sounds really hard and it sounds like it could take hours!
MSN CHAT-

BlueXx says: Why would i lie to someone as dumb as you?

Kite says: Cuz i'm as dumb as me

BlueXx says: Good point

*
I love Firerain
Rep:
Level 97
=D
Blaze you need to plan n all, an rpg game can't just be finished in 12 minutes.
I thought that once, now i'm very patient, take time.
The more the time, the better the game.
THE MORE(time) THE MERRIER(members who download it)
Arlen is hot.

******
Rep:
Level 91
blaze wants the game to be made for him
he doesn't understand that beyond knowladge there is a need for basic common sense...

you can tell him how to make switches all you want but when asked to trigger a flag that will show an event was done he wouldn't know what you are talking about
holy shit my sig was big!

**
Rep:
Level 89
could we read my question? the script i posted is only part of it. that one i posted wont work alone, i only posted the part with my question in it. if you can see that the script changes time, I was wondering how I could make a event changing the hour variable, for things such as in a cutscene. this script works perfectly, I'll post the whole thing soon.

**
Rep:
Level 89
*terribly sorry for double post*
All I need here is to know how to call a script changing a local variable (In this case hours..) in the game with a event. (Ex. Change the time with a event...)

*
Full Metal Mod - He will pillage your women!
Rep:
Level 93
The RGSS Dude
Quote from: blueXx
blaze wants the game to be made for him
he doesn't understand that beyond knowladge there is a need for basic common sense...

you can tell him how to make switches all you want but when asked to trigger a flag that will show an event was done he wouldn't know what you are talking about


The sad thing? Common sense isn't as common as it used to be.

[I'm pretty sure I learned that phrase from a member here...]

I could try to make one, starting tomorrow, probably thursday.

But it'll take a while.
"The wonderful thing about Tiggers
Is Tiggers are wonderful things
Their tops are made out of rubber
Their bottoms are made out of springs

They’re bouncy, trouncy, flouncy, pouncy
Fun, fun, fun, fun, fun!
But the most wonderful thing about Tiggers
Is I’m the only one, I’m the only one."

**
Rep:
Level 89
*still doesnt answer my question.

In the script provided there is a variable in it called "hours". This determines the hour that the day is on. Is there a way to use a event, call the script, and change the hour variable? (I dont know if you answer this tho, srry.)