Per 2016, RMID pindah ke RMID Discord (Invite link dihapus untuk mencegah spambot -Theo @ 2019). Posting sudah tidak bisa dilakukan lagi.
Mohon maaf atas ketidaknyamanannya dan mohon kerjasamanya.
|
|
| [Ask] Cara membuat event berbeda pada day and night system | |
| 2014-06-06, 15:32 | [Ask] Cara membuat event berbeda pada day and night system |
---|
SirenKira Newbie
Posts : 26 Thanked : 1 Engine : RMVX Ace Skill : Beginner Type : Mapper
Awards:
| Permisi numpang nanya, itu saya kan makai system day and night script, nah gimana ya supaya misalnya pas night dia ada event kayak dark merchant tapi pas pagi nggak ada?? terima kasih |
| | | 2014-06-06, 17:14 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
Black Mage Newbie
Posts : 98 Thanked : 3 Engine : Multi-Engine User Skill : Masterful Type : Jack of All Trades
Awards:
| | | | 2014-06-06, 17:27 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
SirenKira Newbie
Posts : 26 Thanked : 1 Engine : RMVX Ace Skill : Beginner Type : Mapper
Awards:
| - Script vlue? :
#Advanced Game Time + Night/Day v1.5.1a #----------# #Features: Provides a series of functions to set and recall current game time # as well customizable tints based on current game time to give the # appearance of night and day in an advanced and customizable way. # #Usage: Script calls: # GameTime.sec? #current second # GameTime.min? #current minute # GameTime.hour? #current hour # GameTime.hour_nom? #current hour (12-hour) # GameTime.day? #current day of month # GameTime.day_week? #current day of the week # GameTime.day_year? #current day of the year # GameTime.month? #current month # GameTime.year? #current year # GameTime.year_post("set") #changes the year post to set # GameTime.pause_tint(true/false) #pauses/unpauses tint # GameTime.notime(true/false) #stops time based on true/false # GameTime.change(s,m,h,d,dw,mn,y) #manually set the time # seconds,minutes,hours,days,weekday,months,years # any can be nil to not be changed # GameTime.set("handle",n) #increases a certain time portion # valid arguments are: # addsec,addmin,addhour,addday # addmonth,addyear # and: # remsec,remmin,remhour,remday # remmonth,remyear # GameTime.clock?(true/false) #hides/shows the clock # GameTime.save_time #saves the current time # GameTime.load_time #loads the saved time # # Message Codes: # GTSEC #Inputs the current second # GTMIN #Inputs the current minute # GTHOUR #Inputs the current hour # GTDAYN #Inputs the day of the month # GTDAYF #Inputs the day of the week (full) # GTDAYA #Inputs the day of the week (abbreviated) # GTMONN #Inputs the month of the year # GTMONF #Inputs the name of the month (full) # GTMONA #Inputs the name of the month (abbreviated) # GTYEAR #Inputs the current year # # Map Note Tags: (These go in the note box of Map Properties) # Notint #These maps will not tint! # Notime #Stops time from moving in that map # #Customization: Set below, in comments. # #Examples: GameTime.pause_tint = false # GameTime.change(nil,30,4,1,1,1,2012) # GameTime.set("addyear",5) # GameTime.clock?(true) # #----------# #-- Script by: V.M of D.T # #- Questions or comments can be: # posted on the thread for the script # given by email: sumptuaryspade@live.ca # provided on facebook: https://www.facebook.com/DaimoniousTailsGames # posed on site: daimonioustails.wordpress.com # #--- Free to use in any project, commercial or non-commercial, with credit given # - - Though a donation's always a nice way to say thank you~ (I also accept actual thank you's) #_# BEGIN_CUSTOMIZATION #_# #What time a new game starts at: [sec, min, hour, day, month, year] START_TIME = [0,0,0,0,0,0] #Wether or not to set time to PC (Real) Time $USE_REAL_TIME = true #Time does not increase while the message window is visible: NOTIMEMESSAGE = false #Time does not increase unless you are on the map PAUSE_IN_MENUS = true #Time does not increase if you are in battle NOBATTLETIME = false #Clock is shown USECLOCK = false #Set to true to have the clock show up in the menu! USECLOCK_MENU = true #Set the format for the clock both in and out of menu #1. hh:mm am/pm #2. Sun dd hh:mm am/pm #3. hh:mm (24 hour clock) #4. Sun dd hh:mm (24 hour clock) #5. Custom clock, see below CLOCK_FORMAT = 5 MENU_CLOCK_FORMAT = 5 #Clock window background opacity CLOCK_BACK = 75 #Whether to use a special image for the back of the clock or not (Picture folder) CUSTOM_CLOCK_BACKGROUND = false #The name of the special image to use CUSTOM_CLOCK_BACKGROUND_IMAGE = "Spider" #The offset of the image on the x-axis CUSTOM_CLOCK_BACKGROUND_X = 0 #The offset of the image on the y-axis CUSTOM_CLOCK_BACKGROUND_Y = 0 #Button to be used to toggle the clock CLOCK_TOGGLE = :SHIFT #X and Y position of clock CLOCK_X = Graphics.width - 175 CLOCK_Y = Graphics.height - 48 - 24 - 12 #Finetune the width of the clock window here: CLOCK_WIDTH = 175 #Whether or not those little dots on the clock blink USE_BLINK = true #The speed at which they blink BLINK_SPEED = 120 #Here is where you would insert the array of commands for the custom clock: CUSTOM_CLOCK = ["weekshort"," ","day"," ","year","yearp"] CUSTOM_CLOCK2 = ["hour12","blinky","min"," ","meri"] #Available commands for CUSTOM_CLOCK: # "sec" - seconds "min" - minutes # "hour" - hour (24) "hour12" - hour (12) # "meri" - AM/PM "day" - day of the month # "weekshort" - day of the week abbr # "weeklong" - day of the week long # "month" - month "monthshort" - month name abbr # "monthlong" - month name # "year" - year "yearp" - year post # "blinky" - those blinky dots #Using KHAS lighting effects script? Turn this on to use that tint USE_KHAS = false #Using Victor Engine Light effects? Turn this on to use that tint USE_VICTOR = false #Variables that count down each gametime second/minute TIMER_VARIABLES = [] #Use Tint in the Battles BATTLE_TINT = false #Time it takes for a second (or minute) to pass, in frames by default #(Frame rate is 60 frames per second) DEFAULT_TIMELAPSE = 60 #Variable ID containing the current speed of time! TIMELAPSE_VARIABLE = 80 #Whether to use seconds or not NOSECONDS = true #Number of seconds in a minute SECONDSINMIN = 60 #Number of minutes in an hour MINUTESINHOUR = 60 #Number of hours in a day HOURSINDAY = 24 #Names of the days (As little or as many days in the week as you want) DAYNAMES = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"] #Day name abbreviations DAYNAMESABBR = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"] #Number of days in each month (Also represents number of months in a year) MONTHS = [31,28,31,30,31,30,31,31,30,31,30,31] #Names of the months MONTHNAMES = ["January","February","March","April","May","June", "July","August","September","October","November","December"] #Abrreviated names of the months MONTHNAMESABBR = ["Jan","Feb","Mar","Apr","May","Jun", "Jul","Aug","Sep","Oct","Nov","Dec"] #The default letters to be posted before the year in dates DEFAULT_YEAR_POST = "AD" #NOT YET IMPLEMENTED *IGNORE* USE_PERIODS = true #Gradual tint effects! (The hardest part) #It may look daunting, and it is, but here is where you put the tint #to be shown at each hour (the actual tint is usually somewhere in between) #The number of Color.new objects here must equal the number of hours in a day #Starts from hour 0 (or 12am) #A color object is -> Color.new(r,g,b,a) # Where r is red,g is green,b is blue,and a is opacity and all are (0-255) TINTS = [Color.new(30,0,40,155), Color.new(20,0,30,135), Color.new(20,0,30,135), Color.new(10,0,30,135), Color.new(10,0,20,125), Color.new(0,0,20,125), Color.new(80,20,20,125), Color.new(130,40,10,105), Color.new(80,20,10,85), Color.new(0,0,0,65), Color.new(0,0,0,35), Color.new(0,0,0,15), Color.new(0,0,0,0), Color.new(0,0,0,0), Color.new(0,0,0,5), Color.new(0,0,0,15), Color.new(0,0,0,25), Color.new(0,0,10,55), Color.new(80,20,20,85), Color.new(130,40,30,105), Color.new(80,20,40,125), Color.new(10,0,50,135), Color.new(20,0,60,135), Color.new(30,0,70,155)] #NOT YET IMPLEMENTED *IGNORE* PERIODS = [["Night",0,5], ["Morning",6,11], ["Afternoon",12,17], ["Evening",18,23]] $gametimeclockvisible = true #_# END CUSTOMIZATION #_# module GameTime def self.run $game_time = Current_Time.new $game_time_tint = Sprite_TimeTint.new end def self.update return if $game_message.busy? and NOTIMEMESSAGE if !SceneManager.scene.is_a?(Scene_Map) and PAUSE_IN_MENUS return $game_time_tint.update if SceneManager.scene.is_a?(Scene_Title) return $game_time_tint.update if SceneManager.scene.is_a?(Scene_File) return unless SceneManager.scene.is_a?(Scene_Battle) and !NOBATTLETIME end $game_time.update $game_time_tint = Sprite_TimeTint.new if $game_time_tint.disposed? update_tint end def self.update_tint $game_time_tint.update unless @pause_tint end def self.sec? return $game_time.sec end def self.min? return $game_time.min end def self.mint? return $game_time.min if $game_time.min > 9 return "0" + $game_time.min.to_s end def self.hour? return $game_time.hour end def self.hour_nom? hour = $game_time.hour hour -= 12 if hour > 11 hour = 12 if hour == 0 return hour end def self.day? return $game_time.day if $USE_REAL_TIME return $game_time.day + 1 end def self.day_week? return $game_time.dayweek end def self.day_year? month = month? - 1 day = day? while month > 0 day += MONTHS[month] month -= 1 end day end def self.day_name return DAYNAMES[$game_time.dayweek-1] if $USE_REAL_TIME return DAYNAMES[$game_time.dayweek] end def self.day_name_abbr return DAYNAMESABBR[$game_time.dayweek-1] if $USE_REAL_TIME return DAYNAMESABBR[$game_time.dayweek] end def self.month_name_abbr return MONTHNAMESABBR[$game_time.month-1] if $USE_REAL_TIME return MONTHNAMESABBR[$game_time.month] end def self.month? return $game_time.month if $USE_REAL_TIME return $game_time.month + 1 end def self.month_name return MONTHNAMES[$game_time.month-1] if $USE_REAL_TIME return MONTHNAMES[$game_time.month] end def self.year? return $game_time.year end def self.pause_tint(set) @pause_tint = set end def self.change(s = nil,m = nil,h = nil,d = nil,dw = nil, mn = nil,y = nil) $game_time.manual(s,m,h,d,dw,mn,y) end def self.set(handle,n) $game_time.forward(handle,n) end def self.clock?(set) SceneManager.scene.clock_visible?(set) end def self.year_post(set) $game_time.year_post = set end def self.save_time $saved_game_time = $game_time.dup end def self.load_time $game_time = $saved_game_time.dup end def self.no_time_map note = $game_map.map_note /Notime/ =~ note return false unless $~ return true end def self.notime(set) $game_time.notime = set end class Current_Time attr_reader :sec attr_reader :min attr_reader :hour attr_reader :day attr_reader :dayweek attr_reader :month attr_reader :year attr_accessor :year_post attr_accessor :notime def initialize reset_all_values end def reset_all_values @sec = START_TIME[0] @min = START_TIME[1] @hour = START_TIME[2] @day = START_TIME[3] @dayweek = 0 @month = START_TIME[4] @year = START_TIME[5] @notime = false @year_post = DEFAULT_YEAR_POST end def update return realtime if $USE_REAL_TIME return if GameTime.no_time_map or @notime $game_variables[TIMELAPSE_VARIABLE] = DEFAULT_TIMELAPSE if $game_variables[TIMELAPSE_VARIABLE] <= 0 return unless Graphics.frame_count % $game_variables[TIMELAPSE_VARIABLE] == 0 NOSECONDS ? addmin(1) : addsec(1) update_timers end def update_timers return unless TIMER_VARIABLES.size > 0 for i in TIMER_VARIABLES $game_variables[i] -= 1 unless $game_variables[i] == 0 end end def realtime @sec = Time.now.sec @sec = 0 if @sec == 60 @min = Time.now.min @hour = Time.now.hour @day = Time.now.day @dayweek = Time.now.wday @month = Time.now.month @year = Time.now.year 0 end def addsec(s) @sec += s return unless @sec == SECONDSINMIN @sec = 0 addmin(1) end def addmin(m) @min += m return unless @min == MINUTESINHOUR @min = 0 addhour(1) end def addhour(h) @hour += h return unless @hour == HOURSINDAY @hour = 0 addday(1) end def addday(d) @day += d @dayweek += d @dayweek = 0 if @dayweek == DAYNAMES.size return unless @day == MONTHS[@month] @day = 0 addmonth(1) end def addmonth(mn) @month += mn return unless @month == MONTHS.size @month = 0 addyear(1) end def addyear(y) @year += y end def manual(s = nil,m = nil,h = nil,d = nil,dw = nil,mn = nil,y = nil) @sec = s if !s.nil? @sec = SECONDSINMIN - 1 if @sec >= SECONDSINMIN @min = m if !m.nil? @min = MINUTESINHOUR - 1 if @min >= MINUTESINHOUR @hour = h if !h.nil? @hour = HOURSINDAY - 1 if @hour >= HOURSINDAY @day = d if !d.nil? @day = MONTHS[@month] - 1 if @day >= MONTHS[@month] @dayweek = dw if !dw.nil? @dayweek = 0 if @dayweek >= DAYNAMES.size @month = mn if !mn.nil? @month = MONTHS.size - 1 if @month >= MONTHS.size @year = y if !y.nil? end def forward(handle,n) handle = handle.to_s + "(1)" n.times do |s| eval(handle) end end def remsec(s) @sec -= s return unless @sec == -1 @sec = SECONDSINMIN remmin(1) end def remmin(m) @min -= m return unless @min == -1 @min = MINUTESINHOUR remhour(1) end def remhour(h) @hour -= h return unless @hour == -1 @hour = HOURSINDAY - 1 remday(1) end def remday(d) @day -= d @dayweek -= d @dayweek = DAYNAMES.size - 1 if @dayweek == -1 return unless @day == -1 @day = MONTHS[@month] - 1 remmonth(1) end def remmonth(mn) @month -= mn return unless @month == -1 @month = MONTHS.size - 1 remyear(1) end def remyear(y) @year -= y end end class Sprite_TimeTint < Sprite_Base def initialize(viewport = nil) super(viewport) self.z = 10 create_contents update @old_tint = [0,0,0,0] @old_time = 0 end def create_contents self.bitmap = Bitmap.new(Graphics.width,Graphics.height) self.visible = false end def update return use_default if SceneManager.scene.is_a?(Scene_Battle) and BATTLE_TINT return use_khas if USE_KHAS return use_victor if USE_VICTOR return use_default end def use_default return if self.disposed? create_contents if self.bitmap.height != Graphics.height create_contents if self.bitmap.width != Graphics.width self.visible = SceneManager.scene.is_a?(Scene_Map) self.visible = true if SceneManager.scene.is_a?(Scene_Battle) and BATTLE_TINT self.visible = false if SceneManager.scene.is_a?(Scene_Title) self.visible = false if no_tint return unless self.visible min = $game_time.min return if min == @old_time @old_time = min rgba = get_new_tint(min) return if rgba == @old_tint @old_tint = rgba self.bitmap.clear self.bitmap.fill_rect(0,0,Graphics.width,Graphics.height,Color.new(rgba[0],rgba[1],rgba[2],rgba[3])) end def use_khas begin temp = $game_map.light_surface.opacity rescue return end self.visible = false $game_map.effect_surface.change_color(1,0,0,0,0) if no_tint return if no_tint min = $game_time.min return if min == @old_time @old_time = min rgba = get_new_tint(min) return if rgba == @old_tint @old_tint = rgba $game_map.effect_surface.change_color(1,rgba[0],rgba[1],rgba[2],rgba[3]) end def no_tint return if $game_map.nil? note = $game_map.map_note /Notint/ =~ note return false unless $~ return true end def use_victor return if $game_map.nil? self.visible = false $game_map.screen.shade.change_color(0,0,0,0) if no_tint $game_map.screen.shade.change_opacity(0) if no_tint return if no_tint $game_map.screen.shade.show if !$game_map.screen.shade.visible min = $game_time.min return if min == @old_time @old_time = min rgba = get_new_tint(min) return if rgba == @old_tint @old_tint = rgba $game_map.screen.shade.change_color(rgba[0],rgba[1],rgba[2],0) $game_map.screen.shade.change_opacity(rgba[3],0) end def get_new_tint(min) ctint = TINTS[$game_time.hour] ntint = TINTS[$game_time.hour + 1] unless $game_time.hour + 1 == HOURSINDAY ntint = TINTS[0] if $game_time.hour + 1 == HOURSINDAY r = ctint.red.to_f - ((ctint.red.to_f - ntint.red) * (min.to_f / MINUTESINHOUR)) g = ctint.green.to_f - ((ctint.green.to_f - ntint.green) * (min.to_f / MINUTESINHOUR)) b = ctint.blue.to_f - ((ctint.blue.to_f - ntint.blue) * (min.to_f / MINUTESINHOUR)) a = ctint.alpha.to_f - ((ctint.alpha.to_f - ntint.alpha) * (min.to_f / MINUTESINHOUR)) return [r,g,b,a] end end class Window_GameClock < Window_Base def initialize super(CLOCK_X,CLOCK_Y,CLOCK_WIDTH,clock_height) self.opacity = CLOCK_BACK unless SceneManager.scene.is_a?(Scene_Menu) update self.visible = $gametimeclockvisible unless SceneManager.scene.is_a?(Scene_Menu) end def clock_height return 80 if !CUSTOM_CLOCK2.nil? and CLOCK_FORMAT == 5 and SceneManager.scene.is_a?(Scene_Map) return 80 if !CUSTOM_CLOCK2.nil? and MENU_CLOCK_FORMAT == 5 and SceneManager.scene.is_a?(Scene_Menu) return 56 end def update if NOSECONDS && @set_minute == $game_time.min if Graphics.frame_count % BLINK_SPEED / 2 == 0 && USE_BLINK return end end contents.clear @set_minute = $game_time.min if NOSECONDS if SceneManager.scene.is_a?(Scene_Map) v = CLOCK_FORMAT else v = MENU_CLOCK_FORMAT end string = normal_clock if v == 1 string = dated_clock if v == 2 string = military_clock if v == 3 string = dated_military_clock if v == 4 string = custom(CUSTOM_CLOCK) if v == 5 string2 = custom(CUSTOM_CLOCK2) if !CUSTOM_CLOCK2.nil? and v == 5 contents.draw_text(0,0,contents.width,24,string,1) contents.draw_text(0,24,contents.width,24,string2,1) if !CUSTOM_CLOCK2.nil? and v == 5 end def military_clock hour = $game_time.hour minute = $game_time.min if hour < 10 then hour = " " + hour.to_s else hour.to_s end if minute < 10 then minute = "0" + minute.to_s else minute.to_s end string = hour.to_s + blinky + minute.to_s return string end def dated_military_clock hour = $game_time.hour minute = $game_time.min dayweek = DAYNAMESABBR[$game_time.dayweek] day = $game_time.day day += 1 unless $USE_REAL_TIME if hour < 10 then hour = " " + hour.to_s else hour.to_s end if minute < 10 then minute = "0" + minute.to_s else minute.to_s end if day < 10 then day = " " + day.to_s end string = dayweek.to_s + " " + day.to_s + " " string += hour.to_s + blinky + minute.to_s return string end def normal_clock meri = "AM" hour = $game_time.hour minute = $game_time.min if hour > 11 then meri = "PM" end if hour == 0 then hour = 12; meri = "AM" end if hour > 12 then hour -= 12 end if hour < 10 then hour = " " + hour.to_s else hour.to_s end if minute < 10 then minute = "0" + minute.to_s else minute.to_s end string = hour.to_s + blinky + minute.to_s + " " + meri return string end def dated_clock meri = "AM" hour = $game_time.hour minute = $game_time.min dayweek = DAYNAMESABBR[$game_time.dayweek] day = $game_time.day day += 1 unless $USE_REAL_TIME if hour > 11 then meri = "PM" end if hour == 0 then hour = 12; meri = "AM" end if hour > 12 then hour -= 12 end if hour < 10 then hour = " " + hour.to_s else hour.to_s end if minute < 10 then minute = "0" + minute.to_s else minute.to_s end if day < 10 then day = " " + day.to_s end string = dayweek.to_s + " " + day.to_s + " " string += hour.to_s + blinky + minute.to_s + " " + meri return string end def blinky return ":" unless USE_BLINK return " " if Graphics.frame_count % BLINK_SPEED > (BLINK_SPEED / 2) return ":" end def custom(array) string = "" for command in array case command when "sec" sec = $game_time.sec sec = "0" + sec.to_s if sec < 10 string += sec.to_s when "min" minute = $game_time.min minute = "0" + minute.to_s if minute < 10 string += minute.to_s when "hour" hour = $game_time.hour hour >= 12 ? meri = "PM" : meri = "AM" hour = " " + hour.to_s if hour < 10 string += hour.to_s when "hour12" hour12 = $game_time.hour hour12 -= 12 if hour12 > 12 hour12 = 12 if hour12 == 0 string += hour12.to_s when "meri" hour = $game_time.hour hour >= 12 ? meri = "PM" : meri = "AM" string += meri.to_s when "weekshort" dayweek = DAYNAMESABBR[$game_time.dayweek] string += dayweek.to_s when "weeklong" dayweekn = DAYNAMES[$game_time.dayweek] string += dayweekn.to_s when "day" day = $game_time.day day += 1 unless $USE_REAL_TIME string += day.to_s when "month" month = $game_time.month month += 1 unless $USE_REAL_TIME string += month.to_s when "monthshort" monthna = MONTHNAMESABBR[$game_time.month] string += monthna.to_s when "monthlong" monthn = MONTHNAMES[$game_time.month] string += monthn.to_s when "year" year = $game_time.year string += year.to_s when "yearp" string += $game_time.year_post when "blinky" string += blinky else string += command.to_s end end return string end end end GameTime.run class Window_Base < Window alias game_time_convert_escape_characters convert_escape_characters def convert_escape_characters(text) result = game_time_convert_escape_characters(text) result.gsub!(/GTSEC/) { GameTime.sec? } result.gsub!(/GTMIN/) { GameTime.mint? } result.gsub!(/GTHOUR/) { GameTime.hour? } result.gsub!(/GTDAYN/) { GameTime.day? } result.gsub!(/GTDAYF/) { GameTime.day_name } result.gsub!(/GTDAYA/) { GameTime.day_name_abbr } result.gsub!(/GTMONF/) { GameTime.month? } result.gsub!(/GTMONN/) { GameTime.month_name } result.gsub!(/GTMONA/) { GameTime.month_name_abbr } result.gsub!(/GTYEAR/) { GameTime.year? } result end end class Scene_Base alias game_time_update update def update game_time_update GameTime.update end end class Scene_Map alias game_time_post_transfer post_transfer alias game_time_init create_all_windows alias game_time_map_update update alias game_time_start start def start game_time_start GameTime.update_tint end def create_all_windows game_time_init @gametimeclock = GameTime::Window_GameClock.new if USECLOCK if CUSTOM_CLOCK_BACKGROUND @clockbackground = Sprite.new(@gametimeclock.viewport) @clockbackground.bitmap = Cache.picture(CUSTOM_CLOCK_BACKGROUND_IMAGE) @clockbackground.x = @gametimeclock.x @clockbackground.x += CUSTOM_CLOCK_BACKGROUND_X @clockbackground.y = @gametimeclock.y @clockbackground.y += CUSTOM_CLOCK_BACKGROUND_Y end end def post_transfer GameTime.update_tint game_time_post_transfer end def update game_time_map_update return unless USECLOCK @gametimeclock.update unless SceneManager.scene != self if Input.trigger?(CLOCK_TOGGLE) and @gametimeclock.nil? == false @gametimeclock.visible ? @gametimeclock.visible = false : @gametimeclock.visible = true $gametimeclockvisible = @gametimeclock.visible @clockbackground.visible = @gametimeclock.visible if @clockbackground end end def clock_visible?(set) @gametimeclock.visible = set end def update_encounter if $game_player.encounter $game_time_tint.use_default SceneManager.call(Scene_Battle) end end end class Game_Map def map_note return @map.note unless @map.nil? end end class Scene_Menu alias gt_start start alias gt_update update def start gt_start @clock = GameTime::Window_GameClock.new if USECLOCK_MENU return if @clock.nil? @clock.x = 0 @clock.y = @gold_window.y - @clock.height @clock.width = @gold_window.width @clock.create_contents end def update gt_update @clock.update unless @clock.nil? @clock.contents.clear if SceneManager.scene != self and !@clock.nil? end end class Scene_Battle alias gametime_pre_terminate pre_terminate def pre_terminate gametime_pre_terminate $game_time_tint.update end end module DataManager class << self alias gametime_msc make_save_contents alias gametime_esc extract_save_contents alias gametime_sng setup_new_game end def self.make_save_contents contents = gametime_msc contents[:gametime] = $game_time contents end def self.extract_save_contents(contents) gametime_esc(contents) $game_time = contents[:gametime] end def self.setup_new_game gametime_sng $game_time = GameTime::Current_Time.new end end
|
| | | 2014-06-06, 23:44 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
sokita Novice
Posts : 217 Thanked : 5 Engine : RMVX Ace Skill : Intermediate Type : Jack of All Trades
| kenapa gak make sesuatu dari script itu aja untuk dipakai sebagai conditional branch di eventnya, semisal if Current_Time.hour > 11 (@hour ada di class current time kan ya?) maka efeknya dia begini, else, begitu. Atau buat common event. Tapi bagus lagi kalo gabungin sama fine tuningnya yang punya script ini nih, bisa pindah2 eventnya. Setahu saya... |
| | | 2014-06-07, 08:43 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
SirenKira Newbie
Posts : 26 Thanked : 1 Engine : RMVX Ace Skill : Beginner Type : Mapper
Awards:
| Ngg..itu pakai conditional triggernya pakai variable? script call? kalau script call yang mananya yang dipakai ya? kalau variable, variable apa yang diaktifin?? maap masih belum ngerti scriptnya... |
| | | 2014-06-07, 09:37 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
sokita Novice
Posts : 217 Thanked : 5 Engine : RMVX Ace Skill : Intermediate Type : Jack of All Trades
| - silakan kalo mau dibaca:
kan di conditional branch ada script call, kita pakai untuk manggil instance variable(dimulai dengan lambang @, dalam hal ini @hour), si @hour itu kan di class current time. Tapi ingat, yang bisa dipanggil setahu saya hanya yang diset attr_accessor atau satu lagi(saya lupa, yang pasti ada 3 accessor, reader, dan satu lagi ini). Kenapa? karena attr_accessor itu sebenarnya adalah seperti ini: - Code:
-
#semisal attr_accessor #sistemnya menerjemahkan jadi def hour=(arg) @hour = arg end
def hour @hour end #CMIIW kalo salah Cara manggilnya selalu dengan menulis nama classnya dulu lalu titik, lalu method(dalam hal ini hour) lalu dobel sama dengan(==) lalu angkanya.
tapi... lah di situ udah dikasih script call GameTime.hour? di condi-branchnya pake aja gini GameTime.hour? == 12 misalnya, coba dulu deh. Kalo gak bisa coba $game_time.hour == 12 atau yang di spoiler. Maaf, saya juga masih belajar, karena metode belajar untuk 100% itu membagikan ke orang lain, jadi saya coba membagi yang saya tahu ke orang lain. Kalo bermanfaat, alhamdulillah.
Terakhir diubah oleh sokita tanggal 2014-06-07, 09:39, total 1 kali diubah (Reason for editing : ada yang kurang aja) |
| | | 2014-06-07, 10:44 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
SirenKira Newbie
Posts : 26 Thanked : 1 Engine : RMVX Ace Skill : Beginner Type : Mapper
Awards:
| Hoo bisa kakak, maap banyak nanya. pertanyaan terakhir kalau mau bikin untuk beberapa jam apanya yang ditambah di script call? misal jam 7-10 ya |
| | | 2014-06-07, 16:00 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
sokita Novice
Posts : 217 Thanked : 5 Engine : RMVX Ace Skill : Intermediate Type : Jack of All Trades
| hmm, coba tanda double equalnya ganti jadi gini GameTime.hour? >=7 && Game.Time<=10. dicoba aja dulu. Tapi tahu kan kira2 ini maksudnya apa? kalo tahu kamu bisa terusin sendiri koq.
Terakhir diubah oleh sokita tanggal 2014-06-07, 16:01, total 1 kali diubah (Reason for editing : selalu aja ada yang kurang, bingung ane) |
| | | 2014-06-07, 20:28 | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
SirenKira Newbie
Posts : 26 Thanked : 1 Engine : RMVX Ace Skill : Beginner Type : Mapper
Awards:
| Oh makasih banyak kakak udah bisa, "solved"!! Om mimin ini thread bisa di lock terima kasih |
| | | | Re: [Ask] Cara membuat event berbeda pada day and night system |
---|
Sponsored content
| | | | | [Ask] Cara membuat event berbeda pada day and night system | |
|
Similar topics | |
|
Similar topics | |
| |
Halaman 1 dari 1 | |
| Permissions in this forum: | Anda tidak dapat menjawab topik
| |
| |
Latest 10 Topics | [Web Novel] Gloria Infidelis 2016-11-17, 21:27 by LightNightKnight
[Announcement] Forum baru untuk RMID 2016-08-25, 16:39 by TheoAllen
Where I'm Wrong ? 2016-07-24, 16:10 by ReydVires
flakeheartnet's Resources part III 2016-07-08, 14:30 by flakeheartnet
Keira's Art Warehouse 2016-06-28, 19:27 by KeiraBlaze
Theo Core Time System + Bingung 2016-06-27, 16:24 by Lockin
Error Script, Maybe ? 2016-06-27, 16:20 by Lockin
Nusaimoe @ RMID Lounge 2016-06-21, 05:02 by Jihad Bagas
Call Random Battle 2016-06-15, 17:04 by Lockin
Flakeheartnet Resources Part II [come back gift] 2016-06-07, 15:51 by flakeheartnet
|
Statistics
|
Members: [ 4947 ]
Topics: [ 8258 ]
Posts: [ 112606 ]
Newest member: [ https://rmid.forumotion.net/u4968 ]
|
|
|
|
|
|