Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #===============================================================================
- # RAFAEL_SOL_MAKER's VX GENERAL SCRIPT EVALUATOR v1.0a
- # Baseado no 'Detailled Call Script Error Message' do ERZVX.
- #-------------------------------------------------------------------------------
- # Descrição: Faz com que todos os scripts rodando a partir do jogo, seja pelo
- # comando 'Executar Scripts' dos eventos, das rotas de movimentos,
- # ou até mesmo de condicionais passe por esse avaliador, que dá
- # informações mais detalhadas a respeito do erro. Nessa nova
- # revisão do script apenas os scripts gerados pelo jogo e alguns
- # scripts do editor (que possuam 'eval') serão afetados.
- #-------------------------------------------------------------------------------
- # Modo de usar: Configure no módulo o uso (ou não!) dessa função.
- #-------------------------------------------------------------------------------
- # Agradecimentos Especiais: ERZVX
- #-------------------------------------------------------------------------------
- #===============================================================================
- #===============================================================================
- # UPDATES
- #-------------------------------------------------------------------------------
- # VX GENERAL SCRIPT EVALUATOR -> v1.0a
- # * Agora somente os scripts de 'eval' que possuam um único argumento, como os
- # gerados pelo jogo passarão por esse tratamento de erros básico. Mesmo assim
- # é recomendável só usar depois de livrar os bugs do Editor de Scripts, já que
- # alguns poucos scripts ainda podem usar o comando internamente.
- # * Agora a linha com erro é exibida corretamente na mensagem, caso o script só
- # tenha uma única linha.
- # * Outras coisinhas mais...
- #-------------------------------------------------------------------------------
- #===============================================================================
- module PowerPackVX_General_Configs
- # Avaliar os scripts gerados pelo jogo?
- Use_Script_Evaluator = true
- end
- #===============================================================================
- class Game_Interpreter
- attr_reader :event_id
- end
- if PowerPackVX_General_Configs::Use_Script_Evaluator == true
- alias rsmaker_script_eval eval unless $@
- def eval(*args)
- n = *args.size; return rsmaker_script_eval(*args) if n > 1
- begin
- return rsmaker_script_eval(*args)
- rescue Exception
- exit if $!.class == SystemExit
- desc = $!.message.split(/['\n]/)[1].sub('`'){'\''}
- desc += "'" if $!.class == NameError
- line = $!.message.split(':')[1].to_i
- lines = *args[0].split(/\n/)
- if lines.is_a? (Array)
- errline = lines[(line - 1)]
- else
- errline = lines
- end
- print "Houve um erro durante a execução do script!\n",
- " Por favor entre em contato com o criador do jogo e informe o seguinte:\n",
- "----------------------------------------------------------------------\n",
- "----------------------------------------------------------------------\n",
- "ID do Mapa: #{$game_map.map_id}\n",
- "ID do Evento: #{$game_map.interpreter.event_id}\n",
- "----------------------------------------------------------------------\n",
- "----------------------------------------------------------------------\n",
- "Tipo do Erro: #{$!.class}\n",
- "Descrição: \"#{desc}\"\n",
- "----------------------------------------------------------------------\n",
- "----------------------------------------------------------------------\n",
- "Número da Linha com Erro: #{line}\n",
- "Linha com Erro: \"#{errline}\"\n",
- "----------------------------------------------------------------------\n",
- "----------------------------------------------------------------------\n"
- end
- return nil
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement