Fathan Novice
Posts : 143 Thanked : 0 Engine : RMVX Skill : Advanced Type : Developer
Trophies
Awards: | Subyek: [ASK] Time System & Thomas Edison 2012-04-06, 14:26 | |
| kebetulan ane sudah buat game RPG jenis Harvest Moon,. namanya ojek ane Harvest Enasty,., ane punya masalah dikit sih di bagian Kylock Time System nih scriptnya - Spoiler:
- Code:
-
#============================================================================== # ■ Kylock's Time System VX 1.5 # 6.3.2008 #------------------------------------------------------------------------------ # Script by: Kylock #============================================================================== # Mostly rewritten since XP version. Cleaner code and less intrusive (more # compatible). This is my comprehensive time and day/night system. This # script adds a new window to the game menu, so if you use a CMS, then place # this script ABOVE it so that it won't mess up your CMS. If you use a custom # script that makes changes to the battle background, place KTS below it so # that you don't get the delayed-tone effect in you battles. Other than that, # there shouldn't be any other script compatibility issues. # I've tried to make this script as customizable as possible, the settings # are found immediately following this header. Although time output to game # variables is optional, I strongly suggest using it so that its easier to # build your events based on the time in the game. #============================================================================== # ● Change Log #------------------------------------------------------------------------------ # 1.0 - Original Release. # 1.1 - Corrected tinting issue at the start of a battle. Place this script # below any battle background scripts if you experience "jumpy tinting" # 1.2 - Corrected the accuracy of $kts.stop and $kts.go # 1.3 - $kts.stop really stops everything now. Also added game switches for # even easier eventing. # 1.4 - Fixed Battle Test compatibility (simulates normal daylight for battle # test instead of darkness). # Now switches and variables will only update when the map loads so that # events don't suddenly dissappear when their time is up. # Added $kts_anti_tone - returns an inverse tone color to allow sprites # to appear normally on a tinted screen. # 1.5 - Rewrote the regexp that finds the [KTS] in the map name. Hopefully # this resolves the wrong maps being tinted problem. #============================================================================== # ● Auto-tone Instructions #------------------------------------------------------------------------------ # Maps designated as outdoors are the only maps to be affected by this # scripts use of auto-toning. To signify a map to be "outdoors", you must # include [KTS] In the name of the map. For example, you world map could be # named "World Map [KTS]" or "[KTS] World Map". Provisions are made later in # the script to remove [KTS] from the map name when it's read by another # script. This means that "[KTS]" won't show up in your Map Name Popup # windows. #============================================================================== # ● Script Function Calls #------------------------------------------------------------------------------ # The following are script commands that can be executed by using the # "Script..." command in your events. # ● $kts.stop - Stops time (can be used for cutscenes) # ● $kts.go - Resumes time (don't forget to use this!) # ● $kts.sec(n) - progresses time forward (n) seconds # ● $kts.min(n) - progresses time forward (n) minutes # ● $kts.hours(n) - progresses time forward (n) hours # ● $kts.days(n) - progresses time forward (n) days # ● $kts.jump_to_hour(n) - progresses time forward TO the specified hour. # Particularly useful in a situation where you # want a certain event to happen at a certain time, # or an Innkeeper who should wake the party up at # a certain hour. This command MAY cause your game # to appear to freeze for a few seconds on slower # computers. #============================================================================== # ● Game Database Setup #------------------------------------------------------------------------------ # This script, by defult, uses the following game variables and switches: # Database Variables: # [1] The Current Time [4] The Current Hour # [2] The Current Second [5] The Current Day # [3] The Current Minute [6] Name of the Current Day # Database Switches # [1] ON during night hours (2200-0400)(10pm-4am) # [2] ON during dawn hours (0500-0800)( 5am-8am) # [3] ON during daytime hours (0900-1800)( 9am-6pm) # [4] ON during sunset hours (1900-2100)( 7pm-9pm) #==============================================================================
#============================================================================== # Stores variables and user defined settings for the time system. #============================================================================== module KTS #----------------------------------------------------------------------- # User Definable Clock Settings #----------------------------------------------------------------------- # Sets the speed multiplier of the clock. 1 is real time. A higher # value will give you a faster clock. Default is 100. SPEED = 500 #AMPM (True: 12-hour clock, False: 24-hour clock) AMPM = false # Sets the time at the start of your game. START_HOUR = 0 START_DAY = 1 #----------------------------------------------------------------------- # If you want custom day names, edit away! #----------------------------------------------------------------------- DAY_NAMES = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"] #----------------------------------------------------------------------- # Settings for Time Periods #----------------------------------------------------------------------- T1 = [ 0,5 ] # Night # Sets time periods for tinting effects T2 = [ 6,8 ] # Dawn # [Start Hour, End Hour] for time period T3 = [ 9,16] # Day # Use 24-hour values for time periods T4 = [17,19] # Sunset T5 = [20,24] # Night # <- Ex: Night is between 23:00 and 24:00 #----------------------------------------------------------------------- # Settings for Output to Game Variables option. #----------------------------------------------------------------------- # Set this to true to output the current time to game variables. DATABASE_OUTPUT = true # Game Variable to be used for time output. TIME = 1 #(Time in string format. Ex: "2:48 AM" or "02:48") SECONDS = 2 MINUTES = 3 HOURS = 4 DAYS = 5 DAYNAME = 6 # Game Switches to be used for time output. NIGHT = 1 # This switch is on during night hours (2000-0400)( 8pm-4am) DAWN = 2 # This switch is on during dawn hours (0500-0800)( 5am-8am) DAY = 3 # This switch is on during daytime hours (0900-1500)( 9am-3pm) SUNSET = 4 # This switch is on during sunset hours (1600-1800)( 4pm-6pm) #----------------------------------------------------------------------- # Settings for time controlled screen toning #----------------------------------------------------------------------- # True will enable screen toning to be used by the script. USE_TONE = true # Sets the duration of tone changes (in frames) FADE_LENGTH = 300 # Defines tones to be used in the corresponding time periods defined above. # RED, GREEN, BLUE, GREY C1 = Tone.new(-110, -110, -50, 100) C2 = Tone.new( 17, -51, -102, 0) C3 = Tone.new( 0, 0, 0, 0) C4 = Tone.new( -68, -68, -34, 70) C5 = Tone.new(-110, -110, -50, 100) # Defines anti-tones A1 = Tone.new( 110, 110, 50, -150) A2 = Tone.new( -17, 51, 102, 0) A3 = Tone.new( 0, 0, 0, 0) A4 = Tone.new( 68, 68, 34, -70) A5 = Tone.new( 110, 110, 50, -150) end
#============================================================================== # Core Time System Engine #============================================================================== class Kylock_Time_System # sets instance variables def initialize $kts_map_data = load_data("Data/MapInfos.rvdata") @event_offset = (KTS::START_HOUR * 3600) + (KTS::START_DAY * 86400) @kts_stop = false $kts_event_tone = false $kts_battle_tone = true $kts_anti_tone = Tone.new(0,0,0,0) end # Computes current time and updates variables if used def update if !@kts_stop @total_seconds = (Graphics.frame_count * KTS::SPEED / 60) + @event_offset @seconds = (@total_seconds) % 60 @minutes = (@total_seconds / 60) % 60 @hours = (@total_seconds / 3600) % 24 @days = (@total_seconds / 86400) update_tint update_switches if KTS::DATABASE_OUTPUT $game_variables[KTS::TIME] = getTime end end end
def update_variables $game_variables[KTS::SECONDS] = @seconds $game_variables[KTS::MINUTES] = @minutes $game_variables[KTS::HOURS] = @hours $game_variables[KTS::DAYS] = @days $game_variables[KTS::DAYNAME] = getDayName end
def update_switches if @period == 1 || @period == 5 $game_switches[KTS::NIGHT] = true else $game_switches[KTS::NIGHT] = false end if @period == 2 $game_switches[KTS::DAWN] = true else $game_switches[KTS::DAWN] = false end if @period == 3 $game_switches[KTS::DAY] = true else $game_switches[KTS::DAY] = false end if @period == 4 $game_switches[KTS::SUNSET] = true else $game_switches[KTS::SUNSET] = false end end
def getTime if KTS::AMPM # Formats a 12-Hour Clock if @hours > 12 hours1 = @hours - 12 if hours1 > 9 time = sprintf("%02d:%02d" + " PM", hours1, @minutes) else time = sprintf("%01d:%02d" + " PM", hours1, @minutes) end else if @hours > 9 time = sprintf("%02d:%02d" + " AM", @hours, @minutes) else time = sprintf("%01d:%02d" + " AM", @hours, @minutes) end end return time else # Formats a 24-Hour Clock time = sprintf("%02d:%02d", @hours, @minutes) return time end end #----------------------------------------------------------------------- # Script Command Functions #----------------------------------------------------------------------- def stop @time_stopped = @total_seconds @kts_stop = true end def go total_seconds = (Graphics.frame_count * KTS::SPEED / 60) + @event_offset @event_offset -= (total_seconds - @time_stopped) @kts_stop = false end def sec(sec = 0) @event_offset += sec end def min(min = 0) @event_offset += min * 60 end def hours(hours = 0) @event_offset += hours * 3600 end def days(days = 0) @event_offset += days * 86400 end def jump_to_hour(jhour = 0) while @hours != jhour @event_offset += 1 $kts.update end end #----------------------------------------------------------------------- # Script Support/Misc Functions #----------------------------------------------------------------------- def getDayName weekday = (@days % KTS::DAY_NAMES.length) return KTS::DAY_NAMES[weekday] end
#----------------------------------------------------------------------- # Screen Tone Functions #----------------------------------------------------------------------- def update_tint(duration = KTS::FADE_LENGTH) return if $BTEST if KTS::USE_TONE && !$kts_event_tone && $kts_map_data[$game_map.map_id].outside_tint? if @hours >= KTS::T1[0] and @hours <= KTS::T1[1] @period = 1 screen.start_tone_change(KTS::C1,duration) $kts_anti_tone = KTS::A1 elsif @hours >= KTS::T2[0] and @hours <= KTS::T2[1] @period = 2 screen.start_tone_change(KTS::C2,duration) $kts_anti_tone = KTS::A2 elsif @hours >= KTS::T3[0] and @hours <= KTS::T3[1] @period = 3 screen.start_tone_change(KTS::C3,duration) $kts_anti_tone = KTS::A3 elsif @hours >= KTS::T4[0] and @hours <= KTS::T4[1] @period = 4 screen.start_tone_change(KTS::C4,duration) $kts_anti_tone = KTS::A4 elsif @hours >= KTS::T5[0] and @hours <= KTS::T5[1] @period = 5 screen.start_tone_change(KTS::C5,duration) $kts_anti_tone = KTS::A5 end else # no tone if indoors if !$kts_map_data[$game_map.map_id].outside_tint? screen.start_tone_change(Tone.new(0,0,0,0),duration) end end end def screen if $game_temp.in_battle return $game_troop.screen else return $game_map.screen end end end
class Spriteset_Map #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- alias kts_initialize initialize def initialize $kts.update_switches if !@kts_stop && KTS::DATABASE_OUTPUT $kts.update_variables if !@kts_stop && KTS::DATABASE_OUTPUT kts_initialize end end
#============================================================================== # Instantly updates screen tone when a new map is loaded. #============================================================================== class Game_Map alias kts_setup setup def setup(map_id) kts_setup(map_id) $kts_event_tone = false $kts.update $kts.update_tint(0) end end
#============================================================================== # Instantly updates screen tone when a battle starts. #============================================================================== class Spriteset_Battle alias kts_create_battleback create_battleback def create_battleback $kts.update_tint(0) kts_create_battleback end end
#============================================================================== # Temporarily disables auto-toning if an event tints the screen. #============================================================================== class Game_Interpreter alias kts_Interpreter_command_223 command_223 def command_223 $kts_event_tone = true kts_Interpreter_command_223 end end
#============================================================================== # Integrates the Time System into the Game System. #============================================================================== class Game_System # inits a KTS object alias kts_initialize initialize def initialize $kts=Kylock_Time_System.new kts_initialize end # Updates kts every game frame alias kts_update update def update $kts.update kts_update end end
#============================================================================== # Scans Map Names for Toning #============================================================================== class RPG::MapInfo def name # Definition prevents location scripts from reading anything within return @name.gsub(/\[.*\]/) {""} # brackets, including the brackets end def original_name return @name end def outside_tint? return @name.scan(/\[KTS\]/).size > 0 # old regexp: return @name.scan(/[\KTS]/).size > 0 end end
#============================================================================== # Sets up the time window for the menu. #============================================================================== class Window_KTS < Window_Base def initialize(x, y) super(x, y, 160, WLH + 32) refresh end def refresh self.contents.clear self.contents.draw_text(4, -6, 120, 32, $kts.getTime, 2) end def update super $kts.update self.contents.clear self.contents.draw_text(4, -6, 120, 32, $kts.getTime, 2) end end
#============================================================================== # Adds the time window to the menu. #============================================================================== class Scene_Menu < Scene_Base alias kts_start start def start kts_start @kts_window = Window_KTS.new(0,305) end alias kts_terminate terminate def terminate kts_terminate @kts_window.dispose end alias kts_update update def update kts_update @kts_window.update end end
#============================================================================== # Saves and Loads game time to/from save game file. #============================================================================== class Scene_File alias kts_write_save_data write_save_data def write_save_data(file) kts_write_save_data(file) Marshal.dump($kts, file) end alias kts_read_save_data read_save_data def read_save_data(file) kts_read_save_data(file) $kts = Marshal.load(file) end end
masalahnya, ane kepingin tuh clock juga muncul dimap,. kira2 isinya [hari bulan Tanggal, bawahnya jam format AM/PM] - Spoiler:
- Code:
-
=begin Thomas Edison VX
Version: 0.1 Author: BulletXt (bulletxt@gmail.com) Date: 12/06/2009 Script based upon Kylock's (http://www.rpgmakervx.net/index.php?showtopic=2432)
Description: To make an event glow, put a Comment inside event with one of the following light modes. When importing this script to a new project, be sure to copy Graphics/Pictures/le.png to your project. Light Modes: GROUND - Medium steady white light. GROUND2 - Medium white light with slight flicker. GROUND3 - Small steady red light. GROUND4 - Medium steady green light. GROUND5 - Medium steady blu light. FIRE - Large red light with a slight flicker. LIGHT - Small steady white light. LIGHT2 - X-Large steady white light. LIGHT3 - Small white light with slight flicker. TORCH - X-Large red light with a heavy flicker. TORCH2 - X-Large red light with a sleight flicker. TORCH3 - Large white light with a slight flicker.
You can make a specific light type turn off/on by turning one of the following switches id ON/off. By default, the switches are off so the lights will show. Of course, turning all switches to ON will make all light types go off.
=end
#id switch that if ON turns off FIRE mode lights #applies only to light mode: FIRE FIRE = 6 #id switch that if ON turns off LIGHT mode lights #applies to light mode: LIGHT, LIGHT2, LIGHT3 LIGHT = 7 #id switch that if ON turns off GROUND mode lights #applies to light mode: GROUND, GROUND2, GROUND3, GROUND4, GROUND5 GROUND = 8 #id switch that if ON turns off TORCH mode lights #applies to light mode: TORCH, TORCH2, TORCH3 TORCH = 9
# this value can be true or false. If true, it enables compatibility with # KGC_DayNight script. When it's night, lights will automatically go on, when # morning comes back lights will go off. If you set this to true, be sure to # place this script below KGC_DayNight script in the Scripting Editor of VX. ENABLE_KGC_DAY_NIGHT_SCRIPT = true
=begin This value must be exactly the same of "PHASE_VARIABLE" setting in KGC_DayNight script. By default the script sets it to 11. To make the event light go on/off with DayNight system, set the event page to be triggered with this variable id and set it to be 1 or above. =end KGC_DAY_NIGHT_SCRIPT_VARIABLE = 999
=begin Tips and tricks: You can't make a single specific light inside event go on/off if a condition applies, for example if a switch is ON. For the moment, you can achieve this by doing a script call immediatley after you make the condition apply. If for example the light event must go on if switch 100 is ON, after you turn on the switch do this call script: $scene = Scene_Map.new Be aware that doing this call script will make game freeze for 30 milliseconds.
################################################################################ =end
$bulletxt_day_check = 0
class Spriteset_Map alias bulletxt_spriteset_map_initalize initialize def initialize @light_effects = [] initialize_lights bulletxt_spriteset_map_initalize update end
alias bulletxt_spriteset_map_dispose dispose def dispose bulletxt_spriteset_map_dispose for effect in @light_effects effect.light.dispose end @light_effects = [] end alias bulletxt_spriteset_map_update update def update bulletxt_spriteset_map_update check_day_night if ENABLE_KGC_DAY_NIGHT_SCRIPT update_light_effects end
def check_day_night #if night if $bulletxt_day_check == 0 if $game_variables[KGC_DAY_NIGHT_SCRIPT_VARIABLE] == 1 $scene = Scene_Map.new $bulletxt_day_check = 1 end else #if morning if $game_variables[KGC_DAY_NIGHT_SCRIPT_VARIABLE] == 3 $game_variables[KGC_DAY_NIGHT_SCRIPT_VARIABLE] = -1 $scene = Scene_Map.new $bulletxt_day_check = 0 end end end def initialize_lights for event in $game_map.events.values next if event.list == nil for i in 0...event.list.size
if event.list[i].code == 108 and event.list[i].parameters == ["FIRE"] type = "FIRE" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 300 / 100.0 light_effects.light.zoom_y = 300 / 100.0 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT"] type = "LIGHT" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 1 light_effects.light.zoom_y = 1 light_effects.light.opacity = 150 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT2"] type = "LIGHT2" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 6 light_effects.light.zoom_y = 5 light_effects.light.opacity = 150 @light_effects.push(light_effects) end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT3"] type = "LIGHT3" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 1 light_effects.light.zoom_y = 1 light_effects.light.opacity = 150 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["TORCH"] type = "TORCH" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 6 light_effects.light.zoom_y = 6 light_effects.light.opacity = 150 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["TORCH2"] type = "TORCH2" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 6 light_effects.light.zoom_y = 6 light_effects.light.opacity = 150 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["TORCH3"] type = "TORCH3" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 300 / 100.0 light_effects.light.zoom_y = 300 / 100.0 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["GROUND"] type = "GROUND" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 2 light_effects.light.zoom_y = 2 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["GROUND2"] type = "GROUND2" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 2 light_effects.light.zoom_y = 2 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["GROUND3"] type = "GROUND3" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 2 light_effects.light.zoom_y = 2 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["GROUND4"] type = "GROUND4" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 2 light_effects.light.zoom_y = 2 light_effects.light.opacity = 100 @light_effects.push(light_effects) end if event.list[i].code == 108 and event.list[i].parameters == ["GROUND5"] type = "GROUND5" light_effects = Light_Effect.new(event,type) light_effects.light.zoom_x = 2 light_effects.light.zoom_y = 2 light_effects.light.opacity = 100 @light_effects.push(light_effects) end end end for effect in @light_effects case effect.type when "FIRE" effect.light.x = (effect.event.real_x - 600 - $game_map.display_x) / 8 + rand(6) - 3 effect.light.y = (effect.event.real_y - 600 - $game_map.display_y) / 8 + rand(6) - 3 effect.light.tone = Tone.new(255,-100,-255, 0) effect.light.blend_type = 1 when "LIGHT" effect.light.x = (-0.25 / 2 * $game_map.display_x) + (effect.event.x * 32) - 15 effect.light.y = (-0.25 / 2 * $game_map.display_y) + (effect.event.y * 32) - 15 effect.light.blend_type = 1 when "LIGHT2" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 effect.light.blend_type = 1 when "LIGHT3" effect.light.x = (-0.25 / 2 * $game_map.display_x) + (effect.event.x * 32) - 15 effect.light.y = (-0.25 / 2 * $game_map.display_y) + (effect.event.y * 32) - 15 effect.light.blend_type = 1 when "TORCH" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 effect.light.tone = Tone.new(255,-100,-255, 0) effect.light.blend_type = 1 when "TORCH2" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 effect.light.tone = Tone.new(255,-100,-255, 0) effect.light.blend_type = 1 when "TORCH3" effect.light.x = (effect.event.real_x - 600 - $game_map.display_x) / 8 + rand(6) - 3 effect.light.y = (effect.event.real_y - 600 - $game_map.display_y) / 8 + rand(6) - 3 effect.light.blend_type = 1 when "GROUND" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.blend_type = 1 when "GROUND2" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.blend_type = 1 when "GROUND3" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.tone = Tone.new(255,-255,-255, 255) effect.light.blend_type = 1 when "GROUND4" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.tone = Tone.new(-255,255,-255, 100) effect.light.blend_type = 1 when "GROUND5" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.tone = Tone.new(-255,255,255, 100) effect.light.blend_type = 1 end end end
def update_light_effects ################################################################################ # handle FIRE if $game_switches[FIRE] for effect in @light_effects next if effect.type != "FIRE" effect.light.visible = false end else for effect in @light_effects next if effect.type != "FIRE" effect.light.visible = true end end
# handle LIGHT if $game_switches[LIGHT] for effect in @light_effects next if effect.type != "LIGHT" && effect.type != "LIGHT2" && effect.type != "LIGHT3" effect.light.visible = false end else for effect in @light_effects next if effect.type != "LIGHT" && effect.type != "LIGHT2" && effect.type != "LIGHT3" effect.light.visible = true end end
# handle GROUND if $game_switches[GROUND] for effect in @light_effects next if effect.type != "GROUND" && effect.type != "GROUND2" && effect.type != "GROUND3" && effect.type != "GROUND4" && effect.type != "GROUND5" effect.light.visible = false end else for effect in @light_effects next if effect.type != "GROUND" && effect.type != "GROUND2" && effect.type != "GROUND3" && effect.type != "GROUND4" && effect.type != "GROUND5" effect.light.visible = true end end
# handle TORCH if $game_switches[TORCH] for effect in @light_effects next if effect.type != "TORCH" && effect.type != "TORCH2" && effect.type != "TORCH3" effect.light.visible = false end else for effect in @light_effects next if effect.type != "TORCH" && effect.type != "TORCH2" && effect.type != "TORCH3" effect.light.visible = true end end
################################################################################
for effect in @light_effects case effect.type
when "FIRE" effect.light.x = (effect.event.real_x - 600 - $game_map.display_x) / 8 + rand(6) - 3 effect.light.y = (effect.event.real_y - 600 - $game_map.display_y) / 8 + rand(6) - 3 effect.light.opacity = rand(10) + 90 when "LIGHT" effect.light.x = (-0.25 / 2 * $game_map.display_x) + (effect.event.x * 32) - 15 effect.light.y = (-0.25 / 2 * $game_map.display_y) + (effect.event.y * 32) - 15 when "LIGHT2" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 when "LIGHT3" effect.light.x = (-0.25 / 2 * $game_map.display_x) + (effect.event.x * 32) - 15 effect.light.y = (-0.25 / 2 * $game_map.display_y) + (effect.event.y * 32) - 15 effect.light.opacity = rand(10) + 90 when "TORCH" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 + rand(20) - 10 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 + rand(20) - 10 effect.light.opacity = rand(30) + 70 when "TORCH2" effect.light.x = (effect.event.real_x - 1200 - $game_map.display_x) / 8 - 20 effect.light.y = (effect.event.real_y - 1200 - $game_map.display_y) / 8 effect.light.opacity = rand(10) + 90 when "TORCH3" effect.light.x = (effect.event.real_x - 600 - $game_map.display_x) / 8 + rand(6) - 3 effect.light.y = (effect.event.real_y - 600 - $game_map.display_y) / 8 + rand(6) - 3 effect.light.opacity = rand(10) + 90 when "GROUND" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 when "GROUND2" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 effect.light.opacity = rand(10) + 90 when "GROUND3" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 when "GROUND4" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 when "GROUND5" effect.light.x = (effect.event.real_x - 400 - $game_map.display_x) / 8 effect.light.y = (effect.event.real_y - 400 - $game_map.display_y) / 8 end end
#close def end #close class end
class Light_Effect attr_accessor :light attr_accessor :event attr_accessor :type def initialize(event, type) @light = Sprite.new @light.bitmap = Cache.picture("le.png") @light.visible = true @light.z = 1000 @event = event @type = type end
end
kan yang script ini kompitible dengan KGC Day night, ane juga ingin tuh script kompitable dengan Kylock,., ane dah coba dari event, tapi eventnya nggak jalan pass malam, setelah buka menu truss tutup menu, baru tuh ivent jalan,., mohon bantuannya | |
|