mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
Yet more script rearranging
This commit is contained in:
136
Data/Scripts/016_UI/011_UI_Jukebox.rb
Normal file
136
Data/Scripts/016_UI/011_UI_Jukebox.rb
Normal file
@@ -0,0 +1,136 @@
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class PokemonJukebox_Scene
|
||||
def pbUpdate
|
||||
pbUpdateSpriteHash(@sprites)
|
||||
end
|
||||
|
||||
def pbStartScene(commands)
|
||||
@commands = commands
|
||||
@viewport = Viewport.new(0,0,Graphics.width,Graphics.height)
|
||||
@viewport.z = 99999
|
||||
@sprites = {}
|
||||
@sprites["background"] = IconSprite.new(0,0,@viewport)
|
||||
@sprites["background"].setBitmap("Graphics/Pictures/jukeboxbg")
|
||||
@sprites["header"] = Window_UnformattedTextPokemon.newWithSize(
|
||||
_INTL("Jukebox"),2,-18,128,64,@viewport)
|
||||
@sprites["header"].baseColor = Color.new(248,248,248)
|
||||
@sprites["header"].shadowColor = Color.new(0,0,0)
|
||||
@sprites["header"].windowskin = nil
|
||||
@sprites["commands"] = Window_CommandPokemon.newWithSize(@commands,
|
||||
94,92,324,224,@viewport)
|
||||
@sprites["commands"].windowskin = nil
|
||||
pbFadeInAndShow(@sprites) { pbUpdate }
|
||||
end
|
||||
|
||||
def pbScene
|
||||
ret = -1
|
||||
loop do
|
||||
Graphics.update
|
||||
Input.update
|
||||
pbUpdate
|
||||
if Input.trigger?(Input::BACK)
|
||||
break
|
||||
elsif Input.trigger?(Input::USE)
|
||||
ret = @sprites["commands"].index
|
||||
break
|
||||
end
|
||||
end
|
||||
return ret
|
||||
end
|
||||
|
||||
def pbSetCommands(newcommands,newindex)
|
||||
@sprites["commands"].commands = (!newcommands) ? @commands : newcommands
|
||||
@sprites["commands"].index = newindex
|
||||
end
|
||||
|
||||
def pbEndScene
|
||||
pbFadeOutAndHide(@sprites) { pbUpdate }
|
||||
pbDisposeSpriteHash(@sprites)
|
||||
@viewport.dispose
|
||||
end
|
||||
end
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class PokemonJukeboxScreen
|
||||
def initialize(scene)
|
||||
@scene = scene
|
||||
end
|
||||
|
||||
def pbStartScreen
|
||||
commands = []
|
||||
cmdMarch = -1
|
||||
cmdLullaby = -1
|
||||
cmdOak = -1
|
||||
cmdCustom = -1
|
||||
commands[cmdMarch = commands.length] = _INTL("March")
|
||||
commands[cmdLullaby = commands.length] = _INTL("Lullaby")
|
||||
commands[cmdOak = commands.length] = _INTL("Oak")
|
||||
commands[cmdCustom = commands.length] = _INTL("Custom")
|
||||
commands[commands.length] = _INTL("Exit")
|
||||
@scene.pbStartScene(commands)
|
||||
loop do
|
||||
cmd = @scene.pbScene
|
||||
if cmd<0
|
||||
pbPlayCloseMenuSE
|
||||
break
|
||||
elsif cmdMarch>=0 && cmd==cmdMarch
|
||||
pbPlayDecisionSE
|
||||
pbBGMPlay("Radio - March", 100, 100)
|
||||
$PokemonMap.whiteFluteUsed = true if $PokemonMap
|
||||
$PokemonMap.blackFluteUsed = false if $PokemonMap
|
||||
elsif cmdLullaby>=0 && cmd==cmdLullaby
|
||||
pbPlayDecisionSE
|
||||
pbBGMPlay("Radio - Lullaby", 100, 100)
|
||||
$PokemonMap.blackFluteUsed = true if $PokemonMap
|
||||
$PokemonMap.whiteFluteUsed = false if $PokemonMap
|
||||
elsif cmdOak>=0 && cmd==cmdOak
|
||||
pbPlayDecisionSE
|
||||
pbBGMPlay("Radio - Oak", 100, 100)
|
||||
$PokemonMap.whiteFluteUsed = false if $PokemonMap
|
||||
$PokemonMap.blackFluteUsed = false if $PokemonMap
|
||||
elsif cmdCustom>=0 && cmd==cmdCustom
|
||||
pbPlayDecisionSE
|
||||
files = [_INTL("(Default)")]
|
||||
Dir.chdir("Audio/BGM/") {
|
||||
Dir.glob("*.mp3") { |f| files.push(f) }
|
||||
Dir.glob("*.MP3") { |f| files.push(f) }
|
||||
Dir.glob("*.ogg") { |f| files.push(f) }
|
||||
Dir.glob("*.OGG") { |f| files.push(f) }
|
||||
Dir.glob("*.wav") { |f| files.push(f) }
|
||||
Dir.glob("*.WAV") { |f| files.push(f) }
|
||||
Dir.glob("*.mid") { |f| files.push(f) }
|
||||
Dir.glob("*.MID") { |f| files.push(f) }
|
||||
Dir.glob("*.midi") { |f| files.push(f) }
|
||||
Dir.glob("*.MIDI") { |f| files.push(f) }
|
||||
}
|
||||
@scene.pbSetCommands(files,0)
|
||||
loop do
|
||||
cmd2 = @scene.pbScene
|
||||
if cmd2<0
|
||||
pbPlayCancelSE
|
||||
break
|
||||
elsif cmd2==0
|
||||
pbPlayDecisionSE
|
||||
$game_system.setDefaultBGM(nil)
|
||||
$PokemonMap.whiteFluteUsed = false if $PokemonMap
|
||||
$PokemonMap.blackFluteUsed = false if $PokemonMap
|
||||
else
|
||||
pbPlayDecisionSE
|
||||
$game_system.setDefaultBGM(files[cmd2])
|
||||
$PokemonMap.whiteFluteUsed = false if $PokemonMap
|
||||
$PokemonMap.blackFluteUsed = false if $PokemonMap
|
||||
end
|
||||
end
|
||||
@scene.pbSetCommands(nil,cmdCustom)
|
||||
else # Exit
|
||||
pbPlayCloseMenuSE
|
||||
break
|
||||
end
|
||||
end
|
||||
@scene.pbEndScene
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user