diff --git a/Data/Scripts/001_Settings.rb b/Data/Scripts/001_Settings.rb index 347d14f84..0e37493bc 100644 --- a/Data/Scripts/001_Settings.rb +++ b/Data/Scripts/001_Settings.rb @@ -446,5 +446,5 @@ end module Essentials VERSION = "20.1.dev" ERROR_TEXT = "" - MKXPZ_VERSION = "2.4.2" + MKXPZ_VERSION = "2.4.2/b0d8e0b" end diff --git a/Data/Scripts/001_Technical/001_MKXP_Compatibility.rb b/Data/Scripts/001_Technical/001_MKXP_Compatibility.rb index c2dc1d4b8..f8332fe95 100644 --- a/Data/Scripts/001_Technical/001_MKXP_Compatibility.rb +++ b/Data/Scripts/001_Technical/001_MKXP_Compatibility.rb @@ -1,4 +1,4 @@ -# Using mkxp-z v2.4.2 - https://github.com/mkxp-z/mkxp-z/releases/tag/v2.4.2 +# Using mkxp-z v2.4.2/b0d8e0b - https://github.com/mkxp-z/mkxp-z/actions/runs/5033679007 $VERBOSE = nil Font.default_shadow = false if Font.respond_to?(:default_shadow) Graphics.frame_rate = 40 diff --git a/Data/Scripts/004_Game classes/002_Game_System.rb b/Data/Scripts/004_Game classes/002_Game_System.rb index 1af2197a2..a821bd679 100644 --- a/Data/Scripts/004_Game classes/002_Game_System.rb +++ b/Data/Scripts/004_Game classes/002_Game_System.rb @@ -41,39 +41,43 @@ class Game_System #----------------------------------------------------------------------------- - def bgm_play(bgm) + def bgm_play(bgm, track = nil) old_pos = @bgm_position @bgm_position = 0 - bgm_play_internal(bgm, 0) + bgm_play_internal(bgm, 0, track) @bgm_position = old_pos end - def bgm_play_internal2(name, volume, pitch, position) # :nodoc: + def bgm_play_internal2(name, volume, pitch, position, track = nil) # :nodoc: vol = volume vol *= $PokemonSystem.bgmvolume / 100.0 vol = vol.to_i begin - Audio.bgm_play(name, vol, pitch, position) + Audio.bgm_play(name, vol, pitch, position, track) rescue ArgumentError - Audio.bgm_play(name, vol, pitch) + Audio.bgm_play(name, vol, pitch, 0, track) end end - def bgm_play_internal(bgm, position) # :nodoc: - @bgm_position = position if !@bgm_paused - @playing_bgm = bgm&.clone + def bgm_play_internal(bgm, position, track = nil) # :nodoc: + if !track || track == 0 + @bgm_position = position if !@bgm_paused + @playing_bgm = bgm&.clone + end if bgm && bgm.name != "" if !@defaultBGM && FileTest.audio_exist?("Audio/BGM/" + bgm.name) - bgm_play_internal2("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch, @bgm_position) + bgm_play_internal2("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch, @bgm_position, track) end else - @bgm_position = position if !@bgm_paused - @playing_bgm = nil - Audio.bgm_stop if !@defaultBGM + if !track || track == 0 + @bgm_position = position if !@bgm_paused + @playing_bgm = nil + end + Audio.bgm_stop(track) if !@defaultBGM end if @defaultBGM bgm_play_internal2("Audio/BGM/" + @defaultBGM.name, - @defaultBGM.volume, @defaultBGM.pitch, @bgm_position) + @defaultBGM.volume, @defaultBGM.pitch, @bgm_position, track) end Graphics.frame_reset end @@ -98,16 +102,20 @@ class Game_System end end - def bgm_stop # :nodoc: - @bgm_position = 0 if !@bgm_paused - @playing_bgm = nil - Audio.bgm_stop if !@defaultBGM + def bgm_stop(track = nil) # :nodoc: + if !track || track == 0 + @bgm_position = 0 if !@bgm_paused + @playing_bgm = nil + end + Audio.bgm_stop(track) if !@defaultBGM end - def bgm_fade(time) # :nodoc: - @bgm_position = 0 if !@bgm_paused - @playing_bgm = nil - Audio.bgm_fade((time * 1000).floor) if !@defaultBGM + def bgm_fade(time, track = nil) # :nodoc: + if !track || track == 0 + @bgm_position = 0 if !@bgm_paused + @playing_bgm = nil + end + Audio.bgm_fade((time * 1000).floor, track) if !@defaultBGM end def playing_bgm diff --git a/Game.exe b/Game.exe index e630da7b7..c32d7f423 100644 Binary files a/Game.exe and b/Game.exe differ diff --git a/x64-msvcrt-ruby310.dll b/x64-msvcrt-ruby310.dll index 03972bcc0..caf811f4c 100644 Binary files a/x64-msvcrt-ruby310.dll and b/x64-msvcrt-ruby310.dll differ