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

Problema com Animations

Iniciado por Takkun, 05/02/2013 às 18:32

05/02/2013 às 18:32 Última edição: 05/02/2013 às 18:45 por Faalco
Estou a fazer um novo script.
E tive um problema com Animations, eu consigo fazer com que a mesma sejá executada mais na hora do dispose quando eu coloco ou o projeto da erro, ou a animation na hora de se transformar não e executada.

#==============================================================================
# Faalco - Transformation System
#------------------------------------------------------------------------------
# Esse script permite que o herói se trasforme.
#==============================================================================
# Feito por: Faalco © 2013
#==============================================================================
module FT
  Switch = 1 #Switch que ativa ou desativa o sistema.
  Animation = 31 #Animation que será executado na transformação e na destranformação.
  Transformacao_Char = "Monster3" #Nome do Char da Transformação.
  Transformacao_Index = 5 #Index do Char da Transformação.
  Char_Normal = "Actor4" #Char do Herói Normal.
  Char_Normal_Index = 0 #Index do Char do Herói Normal.
end

class Game_Player < Game_Character
  alias transformar_update update
  def update
    transformar_update
    if $game_switches[FT::Switch]
      $game_player.animation_id = FT::Animation
      @character_name = FT::Transformacao_Char
      @character_index = FT::Transformacao_Index
    else
      $game_player.animation_id = FT::Animation
      @character_name = FT::Char_Normal
      @character_index = FT::Char_Normal_Index
      end
    end
  end


O que preciso e fazer com que a mesma sejá executada e disposada.
Um abraço.

~ Faalco

Estou meio confuso x_x, porque assim Faalco, a animação é uma sprite se não me engano, e ela está ligada a Sprite_Algo, e ela sempre está digamos, aberta.

Como funciona é o seguinte, essa sprite ela sempre está aberta quando o mapa está aberto, então se você der dispose nela, quando abrir outra Scene, ele vai tentar dispor a animação e ai vai retornar o erro, você não precisa dar dispose na animação basta...
$game_player.animation_id = 0

Porque ai é como se falasse para essa sprite ficar invisivel. :D, isso de não dar dispose tem uma razão muito simples e básica, perceba que não dá para executar inúmeras animações em seguida sem uma apagar a outra, porque o dispose é um método pesado, então eles não dão dispose, e nem redesenham, simplesmente mantém ela oculta quando não é usada :D.

Obrigado Raizen! ;3
Podem trancar o tópico.