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

[Pedido](VXace) Colocar Switch nesse Script

Iniciado por Rafaelz98, 12/02/2014 às 01:38

12/02/2014 às 14:15 #15 Última edição: 12/02/2014 às 14:19 por Klarth
Ah!! Ai que está do problema o script: Quando ele tenta atualizar a janela que está com dispose gera o erro.
Troquei a linha 95 do script Scene_Base por:
ivar.update if ivar.is_a?(Window) && !ivar.disposed?
e modifiquei essa linha
hud_create if @hud.nil?
por essa:
hud_create if @hud.nil? || @hud.disposed?
E deu certo haha
Esse é o script final:
#===============================================================================
# Por Faalco
# Esse script pode ser usado em fins comerciais e não comerciais desde que os
# devidos ao criador sejam devidamente apresentados.
#===============================================================================
# Faz com que seja exibido na tela de testes do RPG Maker uma janela que mostra
# as coordenadas (posição) do herói no mapa.
#
#===============================================================================
# ● Histórico
#===============================================================================
# v 1.0 - Criação do Script (09-12-2013)
#===============================================================================
module Coord #Módulo de Configuração
  X = 0 #Posição X da janela na Tela.
  Y = 0 #Posição Y da janela na Tela.
  Largura = 150 #Largura da Janela.
  Altura  = 50 #Altura da Janela.
  Opacidade = 255 #Opacidade da Janela.
  Switch = 1
end #Fim do Módulo de Configuração
#===============================================================================
# ● Window_Coord
#==============================================================================
class Window_Coord < Window_Base
  include Coord
  def initialize
    super(X, Y, Largura, Altura)
    self.opacity = Opacidade
    refresh
  end
  def refresh
    self.contents.clear
    draw_text_ex(0, 0,"X:" + $game_player.x.to_s)
    draw_text_ex(70, 0,"Y:" + $game_player.y.to_s)
  end
end
  class Scene_Map
  alias faalco_123_main main
  alias faalco_123_update update
  def main
   hud_create if $game_switches[Coord::Switch]
    faalco_123_main
    @hud.dispose if !@hud.nil?
  end
  def update
    faalco_123_update
    if $game_switches[Coord::Switch]
      hud_create if @hud.nil? || @hud.disposed?
      @hud.update
      @hud.refresh
    elsif !@hud.nil?
      @hud.dispose
    end
  end
  def hud_create
    @hud = Window_Coord.new
  end
end
class Scene_Base
  def update_all_windows
    instance_variables.each do |varname|
      ivar = instance_variable_get(varname)
      ivar.update if ivar.is_a?(Window) && !ivar.disposed?
    end
  end
end