Ajuda com o Script de Mostrar Nome encima de NPC e Pers (Dando ERRO)

    Compartilhe

    Equinho
    Iniciante
    Iniciante

    Mensagens : 38
    Créditos : 4

    Ajuda com o Script de Mostrar Nome encima de NPC e Pers (Dando ERRO)

    Mensagem por Equinho em Qua Dez 03, 2014 10:15 pm

    Galera Eu Tenho um Script Que Faz com Que Apareça o Nome do Personagem e dos NPC encima deles com o Comentario "nome" ele funcionava perfeitamente mas criei um mapa e fiz um npc la e fiz mais de 15 eventos e todos eu coloquei o comentario "nome" dai quando eu fui abrir o game ele deu esse erro!






    Por Favor me Ajuda Alguem Preciso Muito Desse Script! 
    o Game é Offline!
    o Erro se repete numa dungeon minha onde tem muitos eventos tambem!


    Esse é o Script!


    Spoiler:
    #===================================================================
    # Nome dos Eventos 1.1
    # Autor: Madajuv
    #-------------------------------------------------------------------
    # O script gera efeitos visuais, ele mostra o nome do personagem
    # e/ou dos eventos do mapa em cima, ou em baixo dos mesmos.
    # Pode-se ativar ou não que a distância entre o personagem e os
    # eventos alteram a opacidade do nome do evento.
    # Para fazer aparecer o nomes de um evento, crie um comentário
    # no seu evento e nesse comentário você deve escrever:
    #
    # nome
    #
    # Letras maiúsculas, ou minúsculas, ou misto, tanto faz.
    #
    #-------------------------------------------------------------------
    # Log
    #-------------------------------------------------------------------
    # Versão 1.0
    # - O script por si só
    # Versão 1.1
    # - Correção do bug de mostrar nome de eventos/personagem
    # "invisível" ou apagado (no caso dos eventos).
    #
    # Outras configurações, são editadas abaixo.
    #===================================================================
    # Edite Aqui:
    #-------------------------------------------------------------------
    module Mada
      # O nome aparece no topo do char ou abaixo dele?
      # true para topo, false para abaixo dele
      NDE_Topo = true
      # Distância entre o gráfico do char e o nome
      NDE_Dist = 12
      # Tamanho da fonte do nome
      NDE_Tam_Fonte = 14
      # Cor das letras do nome, em RGB
      NDE_Cor = [255, 255, 255]
      # Desenhar uma borda para o nome?
      # true para sim, false para não
      NDE_Borda = true
      # Cor da borda, em RGB
      NDE_Borda_Cor = [0, 0, 0]
      # O nome é escrito em negrito?
      # true para sim, false para não
      NDE_Negrito = true
      # O nome é escrito em itálico?
      # true para sim, false para não
      NDE_Italico = false
      # Aparece o nome do personagem?
      # true para sim, false para não
      NDE_Personagem = true
      # Ativar efeito de opacidade de acordo com a distância?
      # true para sim, false para não
      NDE_Opa_Dist = true
      # Valor que define o quão rápido o nome dos eventos some:
      # Interfere somente se você usar o efeito distância-opacidade
      NDE_Opa_fator = 2
    end
    #-------------------------------------------------------------------
    # Fim da Edição
    #===================================================================
    class Game_Event < Game_Character
    attr_reader :erased
    def name; return @event.name; end; end


    class Nome < Sprite
      def initialize(viewport, character = nil)
        super(viewport); @character = character;
        self.bitmap = Bitmap.new(120, 24)
        nome = @character.is_a?(Game_Player) ? $game_actors[1].name : @character.name
        self.bitmap.font.size = Mada::NDE_Tam_Fonte
        self.bitmap.font.bold = Mada::NDE_Negrito
        self.bitmap.font.italic = Mada::NDE_Italico
        if Mada::NDE_Borda
          self.bitmap.font.color = Color.new(Mada::NDE_Borda_Cor[0], Mada::NDE_Borda_Cor[1], Mada::NDE_Borda_Cor[2])      
          self.bitmap.draw_text(-1, -1, 120, 24, nome, 1)
          self.bitmap.draw_text(1, -1, 120, 24, nome, 1)
          self.bitmap.draw_text(-1, 1, 120, 24, nome, 1)
          self.bitmap.draw_text(1, 1, 120, 24, nome, 1)
        end
        self.bitmap.font.color = Color.new(Mada::NDE_Cor[0], Mada::NDE_Cor[1], Mada::NDE_Cor[2])
        self.bitmap.draw_text(0, 0, 120, 24, nome, 1)
        self.ox = 60; self.oy = 12
        @top = Mada::NDE_Topo
        @bit1 = "RPG::Cache.tile($game_map.tileset_name, @t_id, 0)"
        @bit2 = "RPG::Cache.character(@ch_n, 0)"
        self.opacity = 255
        update
      end
      def update
        super
        if @t_id != @character.tile_id || @ch_n != @character.character_name
          @t_id = @character.tile_id; @ch_n = @character.character_name
          bit = @t_id >= 384 ? eval(@bit1) : eval(@bit2)
          @desv_y = bit.height/4
        end
        self.x = @character.screen_x
        self.y = @top ? top_soma : bai_soma
        self.opacity = 255 - Mada::NDE_Opa_fator*dista if Mada::NDE_Opa_Dist
        apa
      end
      def top_soma; return @character.screen_y - (@desv_y + Mada::NDE_Dist); end;
      def bai_soma; return @character.screen_y + Mada::NDE_Dist; end;
      def dista; return (@character.x - $game_player.x)**2 + (@character.y - $game_player.y)**2; end;
      def apa
        if @character.character_name == '' || @character.opacity == 0
          dispose
          return
        end
      end
    end


    class Spriteset_Map
      alias mad_nde_sm_i initialize
      def initialize
        mad_nde_sm_i
        @cn = []
        for i in $game_map.events.keys 
          for j in $game_map.events[i].list
            if j.code == 108 || j.code == 408
              if j.parameters[0].downcase.include?("nome")
                @cn.push(Nome.new(@viewport2, $game_map.events[i])) 
                break
              end
            end
          end
        end
        @cn.push(Nome.new(@viewport2, $game_player)) if Mada::NDE_Personagem
      end
      alias mad_nde_sm_d dispose
      def dispose
        @cn.each { |nome| nome.dispose }
        mad_nde_sm_d
      end
      alias mad_nde_sm_u update
      def update
        unless @cn.nil?
          for i in 0...@cn.size
            @cn[i].update
            if @cn[i].disposed?
              @cn[i] = nil
            end
          end
          @cn.compact!
        end
        mad_nde_sm_u
      end
    end


    _________________



     

      Data/hora atual: Dom Dez 11, 2016 10:49 am