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

MS - Idle Character

Iniciado por Brandt, 15/04/2014 às 00:37

15/04/2014 às 00:37 Última edição: 20/08/2015 às 03:49 por Masked
[box2 class=titlebg]
MS - Idle Character
[/box2]

por Masked

[box2 class=titlebg title=Introdução]Mas um script que eu faço pra complementar o MBS - Spritesheet, ele faz com que o personagem mude de pose/gráfico (caso não queira usar o MBS - Spritesheet) quando não estiver se movendo.[/box2]

[box2 class=titlebg title=Screenshots]Não perceptível por screenshots[/box2]

[box2 class=titlebg title=Script]
#==============================================================================
# MS - Idle Character
#------------------------------------------------------------------------------
# por Masked
#==============================================================================
#==============================================================================
# Configurações
#==============================================================================
module MBS
  module IdleCharacter
    # Sufixo do arquivo com o gráfico do personagem parado
    IDLE_SFX = "_idl"

    # Se estiver usando o script MBS - Spritesheet, deixe
    # como true e configure uma pose :idle nas configurações
    # dele, caso contrário, deixe como false
    MBS_SPR = false
  end
end
#==============================================================================
# Fim das Configurações
#==============================================================================
#==============================================================================
# ** Game_Player
#==============================================================================
class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # Alias
  #--------------------------------------------------------------------------
  alias mbs_mvbi move_by_input
  alias mbs_idleinitialize initialize
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #--------------------------------------------------------------------------
  def initialize(*args)
    mbs_idleinitialize(*args)
    @idle = false
  end
  #--------------------------------------------------------------------------
  # * Verificação de se o personagem está com gráfico de parado
  #--------------------------------------------------------------------------
  def idle?
    @idle
  end
  #--------------------------------------------------------------------------
  # * Movimento
  #--------------------------------------------------------------------------
  def move_by_input(*args)
    mbs_mvbi(*args)
    @pose = :idle if Input.dir8.zero? && MBS::IdleCharacter::MBS_SPR
    @idle = true if Input.dir8.zero? && !idle?
    @idle &&= false unless Input.dir8.zero?
  end
  #--------------------------------------------------------------------------
  # * Aquisição do char do personagem
  #--------------------------------------------------------------------------
  def character_name
    @character_name + (idle? ? MBS::IdleCharacter::IDLE_SFX : '')
  end
end
[/box2]

[box2 class=titlebg title=Créditos e Agradecimentos]- a mim, por criar e disponibilizar[/box2]
~ Masked

Ah interessante, parabéns pelo trabalho :P.

Acho que seria legal colocar um movimento quando o char está parado ah outra coisinha xD.

  # Se estiver usando o script MBS - Spritesheet, deixe
  # como true e configure uma pose :idle nas configurações
  # dele, caso contrário, deixe como false
  MBS_SPR = true


Dá para tirar essa parte, se usar o $include que o pessoal da gringa usa :P.
ai dá para deixar compatível com os seus outros scripts xD

Ah... Entendi, valeu pela dica, vou usar isso mas vou deixar essa opção também, pra quem não quiser ter que comfigurar a pose no MBS - Spritesheet.

Quanto à animação, eu esqueci disso mesmo '-', valeu pelo toque.
~ Masked