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

Masked Eventer Tools

Iniciado por Brandt, 24/11/2013 às 18:25

24/11/2013 às 18:25 Última edição: 15/04/2014 às 00:08 por Masked
Masked Eventer Tools

Introdução:

Este é um conjunto de scripts meus que eu fiz para facilitar a vida dos eventers, a ideia veio a partir do pedido do  NetinhoMaker na minha fábrica.
Por enquanto são poucos, mas vou atualizando e adicionando novos scripts.

Índice:



■ MBS - Check Item Type

■ MS - Switch = Variable value

■ MBS - Event Created Window

■ MBS - Change Event Trigger


MBS - Check Item Type
MBS - Check Item Type

Instruções:

No script

Script:

Código: ruby
#==============================================================================
# MBS - Check Item Type
# 
# by Masked
#
# Esse script é uma ferramenta para eventers, ele serve para verificar se o 
# item equipado no personagem x é do tipo y ao invés de simplesmente verificar
# se o item n está equipado.
#
# Para usá-lo coloque em uma condição de script:
# actor_equipamento_type_is?(id do personagem, tipo)
#
# Substitua o "equipamento" por armor(para armadura), shield(para escudo), hat
# (para chapéu), accessory(para acessorio), weapon(para arma) ou
# any_equip(para qualquer equipamento).
#
#==============================================================================
class Game_Interpreter
#==============================================================================
# Criação dos métodos:
#==============================================================================
# Método de verificação de armadura:
def actor_armor_type_is?(actor_id, type)
  if $game_actors[actor_id]
  return true if $game_actors[actor_id].equips[3].atype_id == type
end
return false
end
# Método de verificação de escudo:
def actor_shield_type_is?(actor_id, type)
  if $game_actors[actor_id]
  return true if $game_actors[actor_id].equips[1].atype_id == type
end
return false
end
# Método de verificação de chapéu:
def actor_hat_type_is?(actor_id, type)
  if $game_actors[actor_id]
  return true if $game_actors[actor_id].equips[2].atype_id == type
end
return false
end
# Método de verificação de acesorio:
def actor_accessory_type_is?(actor_id, type)
  if $game_actors[actor_id]
  return true if $game_actors[actor_id].equips[4].atype_id == type
end
return false
end
# Método de verificação de arma:
def actor_weapon_type_is?(actor_id, type)
  if $game_actors[actor_id]
  return true if $game_actors[actor_id].equips[0].wtype_id == type
end
return false
end
# Método de verificação de todos os equipamentos:
def actor_any_equip_type_is?(actor_id, type)
  if $game_actors[actor_id]
    for i in 0..$game_actors[actor_id].equips.size
      if i != 0
  return true if $game_actors[actor_id].equips[i].atype_id == type
else
  return true if $game_actors[actor_id].equips[i].wtype_id == type
  end
end
end
return false
end
#==============================================================================
# Fim
#==============================================================================
  end


[close]




MS - Switch = Variable value
MS - Switch = Variable value

Instruções:

No script

Script:

Código: ruby
« Resposta #1 em: Hoje às 20:33:39 »
CitaçãoPontuação: 0  
Código: Ruby [Selecionar]
#==============================================================================
# MS - Switch = Variable value
#
# Esse script serve para que possa-se fazer com que uma swich tenha um valor
# baseando-se no valor de uma variável.
#
# Por exemplo: a switch x = variável y, se a variável y = número positivo, a 
# switch vai ficar ON, ser for um valor negativo ou 0, a switch ficará OFF
#
# Para usá-lo, digite em chamar script:
#
# switch_id_variable(id da switch, id da variável)
#
#==============================================================================
class Game_Interpreter
  # método de transformar o valor de uma variável em switch
  def switch_is_variable(switch_id, variable_id)
    $game_switches[switch_id] = ($game_variables[variable_id] > 0)
  end
end

[close]




MBS - Event Created Window
MBS - Event created Window

Atualizações:

1.0:

- Adicionada a opção de pausar a cena

Introdução:

Esse script foi pedido do NetinhoMaker, ele, inclusive, o fez na fábrica do Keven, mas como a fábrica não está tão ativa, ele decidiu me pedir para ver se eu fazia.

Características:

O script serve para auxiliar os eventers na hora de criar uma janela, ele tem funções como:

Criar a janela!: Lógico, essa função não poderia faltar  :-P , vamos à explicação:

Para criar a janela, digite em chamar script:

@janela = Event_Window.new(posição x, posição y, tamanho x, tamanho y, valores)


Os quatro primeiro argumentos são simples, a posição/tamanho x (horizontal) ou y (vertical).
Já o quinto merece um pouco mais de atenção, ele é uma array (valores entre colchetes []) com valores que podem ser um número, uma variável (que deve ser escrita $game_variables[id da variável]) ou um texto (que deve ser escrito entre aspas ""), os diferentes valores devem ser separados por vírgulas.

Escrever os valores de texto: Essa função escreve todos os valores dentro da array 'valores' da janela que forem do tipo String ou texto.
@janela.show_text


Escrever os valores numéricos ou variáveis: Essa função escreve os valores que estiverem dentro da array e que forem ou números ou variáveis ($game_variables[id]).
@janela.show_variables


Escrever todos os valores: Essa função escreve todos os valores dentro da array de valores da janela

Retornar posição e retornar tamanho: Essa função serve para identificar o tamanho ou posição da janela, para se referir à posição x:

@janela.return_position[0]


E para se referir à posição y:

@janela.return_position[1]


Para retornar o tamanho, é só substituir o 'position' por 'dimensions'.

Pausar a cena: Essa função faz com que a cena fique estática, para adicioná-la, adicione um item na lista de argumentos, se ele for true, a cena ficará parada, se ele for false ou for inexistente, a cena continua.
Ex.:
@janela = Event_Window.new(0, 0, 100, 100, [1, "Masked"], true)


Fechar a janela: Para fechar a janela, digite em chamar script:

@janela.dispose


Extra: Auxiliar de script por janela de depuração: Esta opção está no script nas configurações, ela serve para ativar/desativar as mensagens na janela de depuração que indicam os processos e os erros ocorridos.

Script:

#==============================================================================
# MBS_Event_Window
# 
# by Masked
#
# O script serve para auxiliar os eventers na criação de janelas, o script cria
# uma janela onde podem ser armazenados valores e os mesmos podem ser mostrados,
# também é possível mostrar ícones na janela e, claro, apagar ela.
#
# Para criar a janela, ponha em chamar script: 
# @nome_da_janela = Event_Window.new(posição x, posição y, largura, altura, 
# [valor1, valor2...])
# 
# Os valores (valor1, valor2...) podem ser uma variável ($game_variables[id]) ou
# um texto ("texto") e devem ser adicionados na array ( [] ) como mencionado nos
# respectivos parentesis.
#
# Para mostrar os valores que forem uma variável, digite:
# @nome_da_janela.show_variables
# 
# Para mostar os valores que forem um texto, digite:
# @nome_da_janela.show_text
#
# Para mostar os dois:
# @nome_da_janela.show_all
#
# Para mostar um ícone:
# @nome_da_janela.draw_icon(index do ícone, posição x, posição y)
#
# Também é possível fazer a janela "dizer" o seu tamanho e posição
# x e y, para isso:
# @nome_da_janela.return_dimensions
# @nome_da_janela.return_position
# na ordem: retorna o tamanho e retorna a posição
# Esses métodos retornam uma array ( [] ), então para se referir à posição/tamanho
# x, use @nome_da_janela.return_*[0] e use @nome_da_janela.return_*[1] para se 
# referir à posição/tamanho y.
#
# Para fechar a janela, digite em chamar script:
# @janela.dispose
#
# Atualização 1.1:
#
# - adicionada opção de pausar a cena ao abrir a janela
#
# Se quiser que a janela pause a cena, coloque um sexto argumento depois dos 
# valores, se ele for true, a cena será pausada, se for false ou não houver um 
# sexto argumento, a cena continuará.
# Ex.:
# @janela = Event_Window.new(0, 0, 100, 100, [10, "Masked"], true)
#==============================================================================
#==============================================================================
# Configurações:
#==============================================================================

# $mbs_debug_aux:
# deixe como true para ativar o auxiliar pela janela de depuração, para 
# desativar deixe como false

$mbs_debug_aux = true 

#==============================================================================
# Fim das Configurações
#==============================================================================
class Event_Window < Window_Base
  
  attr_accessor :dispose_key
  
 def initialize(x, y, width, height, values, pause_scene=false)
  super(x, y, width, height)
  @pause = pause_scene
  SceneManager.call(Scene_MBS_Event_Window) if pause_scene
  puts "Criando janela #{self}..."  if $mbs_debug_aux
  @value = []
  @text_values = []
  @variable_values = []
  check_value(values)
  @dispose_key = :B
end

def update
  super
  dispose if Input.trigger?(@dispose_key)
end

def check_value(value)
  puts "Verificando se o valor é uma Array..." if $mbs_debug_aux
  if value.is_a?(Array)
@value = value
@value.each {|val| 
if val.is_a?(String)
  @text_values << val
else
  @variable_values << val
end}
else
  raise("O valor atríbuído à janela deve ser  uma array ( [] )!")
  if $mbs_debug_aux
  puts "ERRO 01:" 
  puts "Se você está vendo este erro, provavelmente você atribuíu um valor à janela que não é uma array."
  puts "Para corrigir este erro, mude, na chamada de script, o código da criação da janela e coloque os valores dentro de '[]' (colchetes) e separados por ',' (vírgula)" 
  end
end
end

def show_variables
  times = 0
  self.contents.clear
  puts "Escrevendo variáveis..."  if $mbs_debug_aux
  @variable_values.each {|val|  
  self.contents.draw_text(5, times * 24 - 40, self.width, @variable_values.size*24, @value[i].to_s)
    times += 1
  }
  end

def show_text
  times = 0
  self.contents.clear
  puts "Escrevendo textos..." if $mbs_debug_aux
  @text_values.each {|val|
  self.contents.draw_text(5, times * 24 - 40, self.width, @text_values.size*24, val,0)
  times += 1
  }
end

def show_all
  times = 0
  self.contents.clear
  puts "Escrevendo variáveis e textos..." if $mbs_debug_aux
@value.each {|val|
  self.contents.draw_text(5, i * 24 - 40, self.width, @value.size*24, val.to_s)
}
end

def return_dimensions
return [self.width, self.height]
end

def return_positions
return [self.x, self.y]
end

def dispose
super
puts "Fechando janela #{self}..." if $mbs_debug_aux
SceneManager.return if @pause
end

end

class Scene_MBS_Event_Window < Scene_Base
  
def start
  super
  create_background
end

def update
  super
    $game_map.update(true)
  end

def create_background
    @background_sprite = Sprite.new
    @background_sprite.bitmap = SceneManager.background_bitmap
    @background_sprite.color.set(16, 16, 16, 0)
  end
  def dispose_background
    @background_sprite.dispose
  end
  
  def terminate
    super
    dispose_background
  end
  
end
class Game_Interpreter
  #--------------------------------------------------------------------------
  # * Atualização da tela
  #--------------------------------------------------------------------------
  def update
    @fiber.resume if @fiber
    instance_variables.each {|ivar| 
    if instance_variable_get(ivar).is_a?(Event_Window)
    instance_variable_get(ivar).update unless instance_variable_get(ivar).disposed?
    end}
  end
end
[close]




MBS - Change Event Trigger
MBS - Change Event Trigger

Introdução:

Esse script foi uma ideia do NetinhoMaker, que ele me passou por MP. O script foi feito com a intenção de auxiliar os eventers na criação de seus sistemas.

Características:

O script serve para mudar a condição de inicialização do evento/evento comum, para usá-lo, siga as instruções;

Instruções:

Para usar o script, digite em Chamar script:

set_init_cond(tipo, id, condição [,switch])


O que está entre parêntesis é opcional, e só serve no caso de estar modificando a condição de inicialização de um Evento Comum.

- tipo: Esse argumento serve para indicar o tipo do evento que se está modificando.
Deve ser "Normal" (para eventos do mapa) ou "Common"(para eventos comuns)

- id: O id do evento/evento comum, para ver o id de um evento, clique duas vezes nele e no topo da janela que abrirá aparece: Editar Evento - ID: o id. Lembre-se que não faz diferença escrever 01 e 1.

- condição: A condição que será atribuída ao evento, ela deve ser uma das opções abaixo:

  "Press": A condição será modificada para Pressionar Tecla.

  "TouchAct": A condição será Ao Tocar Herói.

  "TouchEvnt": A condição será Ao Tocar Evento.

  "Auto": A condição será Início Automático.

  "Parallel": A condição será Processo Paralelo

- switch: O id da switch que 'liga' o evento coum, ele só funciona com eventos comuns.

Extra: Auxiliar de script por janela de depuração: Esta opção está no script nas configurações, ela serve para ativar/desativar as mensagens na janela de depuração que indicam os processos e os erros ocorridos.

Script:

#==============================================================================
# MBS - Change Event Initialization Condition
#
# by Masked
#
# Introdução:
# 
# Esse script serve para auxiliar eventers na criação de seus sistemas, como 
# todos os scripts da coleção Masked Eventer Tools 
#
# Características:
#
# O script faz com que seja possível mudar a condição de inicialização de um 
# evento / evento comum
#
# Instruções:
#
# 
#==============================================================================

class Game_Interpreter

#==============================================================================
# Configurações:
#==============================================================================

# $mbs_debug_aux:
# deixe como true para ativar o auxiliar pela janela de depuração, para 
# desativar deixe como false

$mbs_debug_aux = true 

#==============================================================================
# Fim das Configurações
#==============================================================================
#==============================================================================
# * set_init_cond(type, id, cond [, switch]);
#
# - type: tipo do evento a ser transformado, ele deve ser "Common", para eventos
# comuns, ou "Normal" para eventos normais.
#
# - id: O id do evento a ser afetado 
#
# - cond: A nova condição de inicialização, ela deve ser "Auto" para Início 
# Automático, "Parallel" para Processo Paralelo, "Press" para Apertar Tecla,
# "TouchAct" para Ao Tocar Jogador, "TouchEvnt" para Ao Tocar Evento.
# Obs.: Em um evento comum, estão disponíveis apenas três opções: 
# Nenhum("None"), Início Automático ("Auto") e Processo Paralelo ("Parallel")
#
# - switch: Esse argumento será utilizado só em eventos comuns, ele serve para
# mudar a switch que 'liga' o evento, substitua pelo id da switch para mudar e
# por nil para manter.
#
#==============================================================================

def set_init_cond(type, id, cond, switch=nil)
  puts "Iniciando troca de condição..." if $mbs_debug_aux
unless id.is_a?(Integer)
  
puts "O id deve ser um número, qualquer outro tipo de variável causará erro." if $mbs_debug_aux
puts "Transformando id em número..." if $mbs_debug_aux

id = 1

puts "O id será considerado como 1." if $mbs_debug_aux

end

case type
when "Common"
  
puts "Tipo identificado como Evento Comum." if $mbs_debug_aux
puts "Calculando alterações no Evento Comum de id #{id} (#{$data_common_events[id]})." if $mbs_debug_aux

case cond
when "None"
  cond = 0
  
puts "Condição identificada como Nenhum." if $mbs_debug_aux
  
when "Auto"
  cond = 1
  
puts "Condição identificada como Início Automático." if $mbs_debug_aux  
  
when "Parallel"
  cond = 2
  
puts "Condição identificada como Processo Paralelo." if $mbs_debug_aux
  
else
  
puts "Erro: Condição não reconhecida, será considerada como Nenhum." if $mbs_debug_aux
puts "Provavelmente, você não indicou a condição como 'Auto', 'Parallel' ou 'None'." if $mbs_debug_aux
puts 'Certifique-se de que colocou o nome da condição entre "" (aspas duplas).' if $mbs_debug_aux

  cond = 0
  
end
unless switch.nil?

puts "A switch de inicialização será modificada." if $mbs_debug_aux
unless switch == 0
puts "Switch identificada como switch #{switch}" if $mbs_debug_aux
$data_common_events[id].switch_id = switch
else

puts "A switch não pode ser 0, ela será considerada como 1." if $mbs_debug_aux
$data_common_events[id].switch_id = 1

end
else
 
puts "A switch será mantida." if $mbs_debug_aux
  
end
puts "Aplicando alterações..." if $mbs_debug_aux

  $data_common_events[id].trigger = cond
  
when "Normal"
  
case cond
when "Press"
  
puts "Condição indentificada como Pressionar Tecla." if $mbs_debug_aux
  
cond = 0 

when "TouchAct"
  
puts "Condição indentificada como Ao Tocar Jogador." if $mbs_debug_aux
  
cond = 1
  
when "TouchEvnt"
  
puts "Condição indentificada como Ao Tocar Evento." if $mbs_debug_aux
  
cond = 2

when "Auto"
  
puts "Condição indentificada como Início Automático." if $mbs_debug_aux
  
cond = 3

when "Parallel"
  
puts "Condição indentificada como Processo Paralelo." if $mbs_debug_aux  
  
cond = 4

else
  
puts "Erro: Condição não reconhecida, será considerada como Nenhum." if $mbs_debug_aux
puts "Provavelmente, você não indicou a condição como uma das condições reconhecidas." if $mbs_debug_aux
puts 'Certifique-se de que colocou o nome da condição entre "" (aspas duplas).' if $mbs_debug_aux

cond = 0
  
end

  $game_map.events[id].trigger = cond

else
  
puts "Erro: Tipo de evento não reconhecido, certifique-se de ter identificado ele como 'Normal' ou 'Common'." if $mbs_debug_aux    
puts 'Lembre-se de colocar o tipo entre "" (aspas duplas).'
puts "O tipo será considerado como Normal."

case cond
when "Press"
  
puts "Condição indentificada como Pressionar Tecla." if $mbs_debug_aux
  
cond = 0 

when "TouchAct"
  
puts "Condição indentificada como Ao Tocar Jogador." if $mbs_debug_aux
  
cond = 1
  
when "TouchEvnt"
  
puts "Condição indentificada como Ao Tocar Evento." if $mbs_debug_aux
  
cond = 2

when "Auto"
  
puts "Condição indentificada como Início Automático." if $mbs_debug_aux
  
cond = 3

when "Parallel"
  
puts "Condição indentificada como Processo Paralelo." if $mbs_debug_aux  
  
cond = 4

else
  
puts "Erro: Condição não reconhecida, será considerada como Nenhum." if $mbs_debug_aux
puts "Provavelmente, você não indicou a condição como uma das condições reconhecidas." if $mbs_debug_aux
puts 'Certifique-se de que colocou o nome da condição entre "" (aspas duplas).' if $mbs_debug_aux

cond = 0
  
end

  $game_map.events[id].trigger = cond

end
  
end

end

#==============================================================================

class Game_Event < Game_Character

attr_accessor   :trigger       
  
end

#==============================================================================
# Fim do script
#==============================================================================


[close]




Créditos e Agradecimentos:

- a mim, por criar e disponibilizar;

- ao NetinhoMaker, pela ideia.

- ao Gab! por melhorar o script MS - Switch = Variable value
~ Masked

O script e bom . mais mao na massa que qualquer
eventer possa imaginar. parabens pela criaçao +ouro

Interessante, realmente amplia as possibilidades de um evento. Bom trabalho, Masked! Continue sempre assim!

Viva a lenda!



Tópico atualizado, adicionei o script Event created Window
~ Masked

Tópico atualizado, adicionei o script MBS - Change Event Trigger.
~ Masked

Incrível, usarei com certeza!

Muito bom, então esses das windows que eu fazia por script e não conseguia dar dispose!

+ouro

Revivendo o tópico pois vale a pena o.o

Script sensacional ( inclusive esse de Janelas, cara, em um projeto meu isso vai cair super bem )

Parabens pelo script mask o/ EOASUHEU ( ri porque "mask" me lembra "mascar" g.g )
Tudo vai dar certo (y(8.

Huahhuahua, me lembrou de um dia no chat que me perguntaram que chiclete eu "maskava", e depois ainda disseram que "deve ser o chiclete do maskara"... Euri

Mas então, tinha até esquecido desses scripts, obrigado por reviver, talvez eu faça mais deles.
~ Masked

Tio masked ._. Achei um bug ( ou não ) no seu Event created Window O:

Quando eu crio a janela, tal e tal tamanho, e escrevo alguma coisa, ela fica com um espaço muito feio ...
Exemplo : vou escrever um texto, aí fica tipo assim

__________________________________
|                                                    |
|                                                    |
|                                                    |
|                                                    |
| Texto se inicia aqui                         |

e tipo, se eu escrever mais coiass, e depois diminuir o tamanho da janela, continua com o espaço grande em cima, só que no final do texto ele fica cortado, como se o texto fosse maior que  a janela ...
Teria como resolver isto? Por favor ><
Tudo vai dar certo (y(8.

Pode passar o call que você está usando? Porque aqui eu tentei e deu certo  :hm:
tente esse call:

@janela = Event_Window.new(
0,0,250,100,[1,2,"Normal",
"Normal de novo",
"Normal mais uma vez"])
@janela.show_text


Não deu problema aqui... você está usando algum script adicional?
~ Masked

@janela = Event_Window.new(16, 188, 512,
190, ["Tutorial :", "Tecla E : Pular",
"Tecla R : Reiniciar mapa",
"Tecla SHIFT: Correr", "Tecla Z : Fecha esta
janela"])
@janela.show_text

tenta com esse .-.

( tenta em Evento Comum )
Tudo vai dar certo (y(8.

Opa, corrigido:

#==============================================================================
# MBS_Event_Window
# 
# by Masked
#
# O script serve para auxiliar os eventers na criação de janelas, o script cria
# uma janela onde podem ser armazenados valores e os mesmos podem ser mostrados,
# também é possível mostrar ícones na janela e, claro, apagar ela.
#
# Para criar a janela, ponha em chamar script: 
# @nome_da_janela = Event_Window.new(posição x, posição y, largura, altura, 
# [valor1, valor2...])
# 
# Os valores (valor1, valor2...) podem ser uma variável ($game_variables[id]) ou
# um texto ("texto") e devem ser adicionados na array ( [] ) como mencionado nos
# respectivos parentesis.
#
# Para mostrar os valores que forem uma variável, digite:
# @nome_da_janela.show_variables
# 
# Para mostar os valores que forem um texto, digite:
# @nome_da_janela.show_text
#
# Para mostar os dois:
# @nome_da_janela.show_all
#
# Para mostar um ícone:
# @nome_da_janela.draw_icon(index do ícone, posição x, posição y)
#
# Também é possível fazer a janela "dizer" o seu tamanho e posição
# x e y, para isso:
# @nome_da_janela.return_dimensions
# @nome_da_janela.return_position
# na ordem: retorna o tamanho e retorna a posição
# Esses métodos retornam uma array ( [] ), então para se referir à posição/tamanho
# x, use @nome_da_janela.return_*[0] e use @nome_da_janela.return_*[1] para se 
# referir à posição/tamanho y.
#
# Para fechar a janela, digite em chamar script:
# @janela.dispose
#
# Atualização 1.1:
#
# - adicionada opção de pausar a cena ao abrir a janela
#
# Se quiser que a janela pause a cena, coloque um sexto argumento depois dos 
# valores, se ele for true, a cena será pausada, se for false ou não houver um 
# sexto argumento, a cena continuará.
# Ex.:
# @janela = Event_Window.new(0, 0, 100, 100, [10, "Masked"], true)
#==============================================================================

#==============================================================================
# Configurações:
#==============================================================================

# $mbs_debug_aux:
# deixe como true para ativar o auxiliar pela janela de depuração, para 
# desativar deixe como false

$mbs_debug_aux = true 

#==============================================================================
# Fim das Configurações
#==============================================================================
class Event_Window < Window_Base
  
 def initialize(x, y, width, height, values, pause_scene=false)
  super(x, y, width, height)
  @pause = pause_scene
  SceneManager.call(Scene_MBS_Event_Window) if pause_scene
  puts "Criando janela #{self}..."  if $mbs_debug_aux
  @value = []
  @text_values = []
  @variable_values = []
  check_value(values)
end

def update
  super
end

def check_value(value)
  puts "Verificando se o valor é uma Array..." if $mbs_debug_aux
  if value.is_a?(Array)
@value = value
@value.each {|val| 
if val.is_a?(String)
  @text_values << val
else
  @variable_values << val
end}
else
  raise("O valor atríbuído à janela deve ser  uma array ( [] )!")
  if $mbs_debug_aux
  puts "ERRO 01:" 
  puts "Se você está vendo este erro, provavelmente você atribuíu um valor à janela que não é uma array."
  puts "Para corrigir este erro, mude, na chamada de script, o código da criação da janela e coloque os valores dentro de '[]' (colchetes) e separados por ',' (vírgula)" 
  end
end
end

def show_variables
  times = 0
  self.contents.clear
  puts "Escrevendo variáveis..."  if $mbs_debug_aux
  @variable_values.each {|val|  
  self.contents.draw_text(5, times * 24 - 40, self.width, @variable_values.size*24, @value[i].to_s)
    times += 1
  }
  end

def show_text
  times = 0
  self.contents.clear
  puts "Escrevendo textos..." if $mbs_debug_aux
  @text_values.each {|val|
  self.contents.draw_text(5, times * 24 - 40, self.width, @text_values.size*24, val,0)
  times += 1
  }
end

def show_all
  times = 0
  self.contents.clear
  puts "Escrevendo variáveis e textos..." if $mbs_debug_aux
@value.each {|val|
  self.contents.draw_text(5, i * 24 - 40, self.width, @value.size*24, val.to_s)
}
end

def return_dimensions
return [self.width, self.height]
end

def return_positions
return [self.x, self.y]
end

def dispose
super
puts "Fechando janela #{self}..." if $mbs_debug_aux
SceneManager.return if @pause
end

end

class Scene_MBS_Event_Window < Scene_Base
  
def start
  super
  create_background
end

def update
  super
    $game_map.update(true)
  end

def create_background
    @background_sprite = Sprite.new
    @background_sprite.bitmap = SceneManager.background_bitmap
    @background_sprite.color.set(16, 16, 16, 0)
  end
  def dispose_background
    @background_sprite.dispose
  end
  
  def terminate
    super
    dispose_background
  end
  
  end


Eu era meio noob na época em que fiz esses scripts (nem o .each eu sabia usar! Meol deols...) então se achar mais bugs pode ir falando e eu conserto...
~ Masked

Justo algo que eu ia pedir depois que realizasse aquele meu pedido. Um tanto a mais.
Acho que quando eu criar meu pack de sistemas por eventos particular, eu vou ter uma bela ajuda.
Obrigado por dividir com a gente.

16/03/2014 às 17:58 #14 Última edição: 16/03/2014 às 18:04 por katumblo
Obrigado por arrumar masked *-------*

( Quando eu lançar meu jogo ( Contra o tempo ) você vai ser obrigado a jogar tá? EOAHSUOEHHE C: )

Outra coisa, tem como colocar um " X " para essa janela fechar ? :x ou teria que ser por eventos ? Porque por evento comum não funciona direito, se eu colocar uma condição, ela só é exercida se logo após eu tocar no evento para ativar o evento comum, eu fazer o que a condição pede, se eu fizer o que a condição pede depois de ter aberto a janela, não funciona :C
Tudo vai dar certo (y(8.