O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Auto Select Scene

Iniciado por Selitto, 15/09/2021 às 23:00

15/09/2021 às 23:00 Última edição: 20/09/2021 às 23:46 por Selitto
Auto Select Scene

Compatível com: RMVXAce
Compatibilidade: Boa
Facilidade de uso: Fácil
Lag gerado: Zero

[box2 class=titlebg title=Condições de uso]
Pode ser modificado, e divulgado, não precisa dar os créditos.
[/box2]

[box2 class=titlebg title=Para que serve o script?]
O script faz com que quando existe somente 1 membro/actor na party, os menus de equipamento, status e habilidades abram sem precisar selecionar o actor, já que só existe 1.
Caso tenha mais de um membro na party, a seleção voltar a aparecer.
[/box2]

[box2 class=titlebg title=Demonstração]
Link vídeo demonstração: https://www.loom.com/share/f5518a81d027452d9db096502cbac578 (Não liguem para o projeto, as telas em si, mas no funcionamento do script)
[/box2]

[box2 class=titlebg title=Script]
#===========================================================================
#                          Auto Select Scene 1.2
# Autor Selitto
# Data: 20/09/2021
# Comunidade www.centrorpg.com
# O script faz com que quando existe somente 1 membroactor na party,
# os menus de equipamento, status e habilidades abram sem precisar
# escolher o actor, já que só tem somente 1 na party dããã
#===========================================================================
#                             COMO FUNCIONA?
# Por padrão já vem configurado para funcionar o auto select
# das 3 scenes, para remover alguma scene, basta apagar da variável menu
# Exemplo sem o menu de equipamentos menu = ['Status', 'Skill']
module MENUS_SCENE
  Menus = ['Equip', 'Status', 'Skill'] # CONFIGURE AQUI
end
#===========================================================================
class Scene_Menu < Scene_MenuBase
# Cria os métodos de acordo com os menus escolhidos.
#==========================================================================
alias skip_select create_command_window
def create_command_window
  skip_select
    if MENUS_SCENE::Menus.include?('Equip') 
      @command_window.set_handler(:equip, method(:call_equip_scene))
  end
   if MENUS_SCENE::Menus.include?('Status')
      @command_window.set_handler(:status, method(:call_status_scene))
  end
   if MENUS_SCENE::Menus.include?('Skill')
      @command_window.set_handler(:skill, method(:call_skill_scene))
    end
end
#===========================================================================
# Chama a Scene de Equip
#===========================================================================
  def call_equip_scene
    if $game_party.members.size == 1
      $game_party.menu_actor = $game_party.members[0]
      SceneManager.call(Scene_Equip)
    else
      command_personal
    end
 end
#===========================================================================
# Chama a Scene de Status
#===========================================================================
  def call_status_scene
    if $game_party.members.size == 1
      $game_party.menu_actor = $game_party.members[0]
      SceneManager.call(Scene_Status)
    else
      command_personal
    end
  end
#===========================================================================
# Chama a Scene de Skill
#===========================================================================
  def call_skill_scene
    if $game_party.members.size == 1
      $game_party.menu_actor = $game_party.members[0]
      SceneManager.call(Scene_Skill)
    else
      command_personal
    end
  end
end

[/box2]

Fiz esse tópico baseado no do Raizen.

Simples e direto, funciona como descrito. Também não parece ter problema de compatibilidade com a Ace Engine do Yanfly. Valeu pelo compartilhamento!

Esse é dos bons, heim? Chega do pessoal perguntando sobre como fazer isso aí. Obrigado por postar o/

Citação de: Seki online 16/09/2021 às 02:22
Simples e direto, funciona como descrito. Também não parece ter problema de compatibilidade com a Ace Engine do Yanfly. Valeu pelo compartilhamento!
Meu projeto está cheio de scripts aqui e parece funcionar bem, então acredito que não tenha problemas de compatibilidade.

Citação de: Seki online 16/09/2021 às 02:22
Esse é dos bons, heim? Chega do pessoal perguntando sobre como fazer isso aí. Obrigado por postar o/
Pois é, procurei por algo pronto assim e não achei também, resolvi criar.

Atualizei o script, ficou mais enxuto  :blink:.