class Scene_Battle def create_info_viewport @info_viewport = Viewport.new(0, 288, 544, 128) @info_viewport.z = 100 @status_window = Window_BattleStatus.new @party_command_window = Window_PartyCommand.new #~ @actor_command_window = Window_ActorCommand.new $data_system = load_data("Data/System.rvdata") @animate = false @actor_command_window = Ring_Menu.new(80,10,[Graphics.width/2,Graphics.height/2-60], create_options) @actor_command_window.reso = 16 @status_window.viewport = @info_viewport @party_command_window.viewport = @info_viewport #@actor_command_window.viewport = @info_viewport @status_window.x = 128 @actor_command_window.x = 200 @info_viewport.visible = false end def create_options # Create empty options with no graphics, with just block of instructions opt = [ RMenu_Option.new("Attack", 1) , RMenu_Option.new("Skill", 2) , RMenu_Option.new("Guard", 3) , RMenu_Option.new("Item", 4) , ] # You can access each option graphics, and change them if needed #~ opt[0].sprite.bitmap = Bitmap.new(64,32) #~ opt[0].sprite.bitmap.draw_text(0,0,64,32, "Move/Stop me!",1) #~ #~ opt[1].sprite.bitmap = Bitmap.new(64,32) #~ opt[1].sprite.bitmap.draw_text(0,0,64,32, "Say...",1) #~ #~ opt[2].sprite.bitmap = Bitmap.new(64,32) #~ opt[2].sprite.bitmap.draw_text(0,0,64,32, "Do nothing",1) #~ #~ opt[3].sprite.bitmap = Bitmap.new(64,32) #~ opt[3].sprite.bitmap.draw_text(0,0,64,32, "Go to title Screen",1) #~ #~ #opt[4].sprite.bitmap = Bitmap.new(64,32) #~ #opt[4].sprite.bitmap.draw_text(0,0,64,32, "Exit the demo",1) #~ #~ opt[5].sprite.bitmap = Bitmap.new(64,32) #~ opt[5].sprite.bitmap.draw_text(0,0,64,32, "I'M DISABLED",1) #~ opt[5].disabled = true #~ #~ opt end alias old_terminate terminate def terminate old_terminate @actor_command_window.dispose end #----------------------------------------------- alias old_update update def update old_update animate_menu if @animate #@actor_command_window.update @actor_command_window.selected.call if Input.trigger? Input::C end #----------------------------------------------- def animate_menu if Graphics.frame_count < 120 @actor_command_window.x +=2 @actor_command_window.y -=1 end if Graphics.frame_count.between?(120,240) @actor_command_window.x -= 2 @actor_command_window.y +=1 end if Graphics.frame_count.between?(400,500) @actor_command_window.opacity -=2 else @actor_command_window.opacity +=2 end Graphics.frame_count %= 500 end def start_actor_command_selection @party_command_window.active = false #@actor_command_window.setup(@active_battler) @actor_command_window.active = true @actor_command_window.index = 0 end def start_skill_selection @help_window = Window_Help.new @skill_window = Window_Skill.new(0, 56, 544, 232, @active_battler) @skill_window.help_window = @help_window @actor_command_window.active = false @actor_command_window.visible = false end def end_skill_selection if @skill_window != nil @skill_window.dispose @skill_window = nil @help_window.dispose @help_window = nil end @actor_command_window.active = true @actor_command_window.visible = true end def start_item_selection @help_window = Window_Help.new @item_window = Window_Item.new(0, 56, 544, 232) @item_window.help_window = @help_window @actor_command_window.active = false @actor_command_window.visible = false end def end_item_selection if @item_window != nil @item_window.dispose @item_window = nil @help_window.dispose @help_window = nil end @actor_command_window.active = true @actor_command_window.visible = true end def update_actor_command_selection if Input.trigger?(Input::B) Sound.play_cancel prior_actor elsif Input.trigger?(Input::C) case @actor_command_window.index when 0 # Attack Sound.play_decision @active_battler.action.set_attack start_target_enemy_selection when 1 # Skill Sound.play_decision start_skill_selection when 2 # Guard Sound.play_decision @active_battler.action.set_guard next_actor when 3 # Item Sound.play_decision start_item_selection end end end end