Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

hopefully quick edit

can someone please edit this script to just have the light effects and not the day/night system, i dont want the day/night system ONLY THE LIGHT EFFECTS..
i need this very badly.. thanx!!!
Code:
#=======================================#
# â–  class Game_Title                                                                 #
#     written by Deke
#     Rewiten by Near Fantastica
#------------------------------------------------------------------------------#
#=======================================#
class Game_Time

 attr_accessor :minute_length
 
 def initialize
  @minute_length=2.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=56
  add_minutes(start_minute)
  start_hour=23               #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
  hour=get_hour.floor
  minutes=get_minute + hour*@hour_length
  phase_shift=Math::PI*(minutes/(@hour_length*@day_length))
  illumination=  -150+ 165*Math.sin(phase_shift)
  tone=Tone.new(illumination,illumination,illumination,0)
  return tone
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 = $defaultfonttype  # "Time" window font
   self.contents.font.size = $defaultfontsize
   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

#=======================================
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
    # メッセージウィンドウを作成
    @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
    # メッセージウィンドウを解放
    @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
    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
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top