Confira o Videos Épicos #45!
10 Respostas   109 Visualizações
0 Membros e 1 Visitante estão vendo este tópico.
Graphics.freeze
As janelas são criadas em cenas específicas, é nessas cenas que você pausa o jogo. Não tenho certeza, mas deve ser o:Código: [Selecionar]Graphics.freezeInfelizmente não conheço nenhum tutorial focado no XP, mas as aulas do Sotelie quebram o galho. Você só vai precisar identificar a sintaxe que difere bastante.
# Main loop loop do # Update game screen Graphics.update # Update input information Input.update # Frame update update # Abort loop if screen is changed if $scene != self break end end
Testou o laço padrão do menu?Código: [Selecionar] # Main loop loop do # Update game screen Graphics.update # Update input information Input.update # Frame update update # Abort loop if screen is changed if $scene != self break end endLembrando que essa pausa é criada na cena que mostra a janela, não na janela propriamente dita. Qualquer coisa poste o seu código que tentaremos buscar o problema.
class Janela < Window_Base def initialize super(0, 0, 100, 100) self.contents = Bitmap.new(width - 32, height - 32) end def refresh self.contents.clear desenhar_texto(0, 0) end def update if Input.trigger?(Input::X) refresh end end def desenhar_texto(x, y) self.contents.draw_text(x, y-16, self.width, self.height, "Funcionando") end end
if $janela_ativa == true $janela.updateend
Não necessariamente. Você tem a janela que é uma classe. Você precisa de uma cena onde essa janela será mostrada, a segunda classe. Por exemplo, o Menu de itens. Você tem uma Cena: Scene_Item. Dentro dela são instanciadas as classes das janelas: Window_Help, Window_Item e Window_Target.No seu caso, aparentemente você se esqueceu de incluir uma chamada ao método update dentro do initialize. O initialize é o que será executado continuamente, então a verificação da atualização só será feita se você chamar o método responsável lá dentro.
def initialize super(0, 0, 100, 100) self.contents = Bitmap.new(width - 32, height - 32) update end
De ambos. A janela precisa do update dela e a cena também. Aí é só ir testando até acertar, se está mostrando no mapa veja que a Scene_Map já tem um laço chamando constantemente a atualização.
Mas funcionou? Se sim, um problema a menos.A imagem de fundo vai ficar preta mesmo, é uma nova cena e, como o fundo não foi criado, aparece vazio. Pra fazer o mapa aparecer só inserindo mais código. Recomendo dar uma estudada neste script que faz exatamente isso. O método responsável é o create_menu_background.