Julho 31, 2014, 16:34:20 pm
Olá, Visitante!

   
   

Autor Tópico: Instalador automático de fontes  (Lida 242 vezes)

0 Membros e 1 Visitante estão vendo este tópico.

Raizen

  • *
  • Offline Masculino
  • Mensagens: 1935
    Ouro: 1332
  • Medalhas:
    Vencedores da Categoria - Makers Especialidades Vencedores das edições do Concurso Projeto Rickas!
    • Ver perfil
    • E-mail
Instalador automático de fontes
« Online: Fevereiro 24, 2013, 18:25:31 pm »
Ouro: 0
Instalador de fontes automático

Compativel com: RMVX, RMXP
Compatibilidade :bom
Facilidade de uso: fácil
Lag gerado: baixo
Condições de Uso
  Não especificado pelo autor

Para que serve o script

Ao iniciar o jogo pela primeira vez, o script automaticamente instala a fonte, MUITO útil na hora de distribuir o seu jogo.

Script.

Código: [Selecionar]
#==============================================================================
# ** Auto Instalar Fontes
#------------------------------------------------------------------------------
# Por Wachunga(2006-01-07)
# Editado,Adaptado e Revisado por Rafidelis ;D
# Versão 2.0
# 20/03/10
#------------------------------------------------------------------------------

module Rafidelis
  #==========================================================================
  # Modulo Auto Instalar Fonte
  #--------------------------------------------------------------------------
  # Nesse modulo é configurado o script de Auto Instalar Fontes do Jogo
  #==========================================================================
  module Auto_Instalar_Fontes
    # Adicionando Script ao Sistema
    Rafidelis.add_script("[Outros] - Wachunga: Instalar Fontes Automaticamentes - Edit","1.5")
    # Script Adicionado
   
    # Nome dos Arquivos de Fontes
    Nome_Dos_Arquivos = ['WillRobinson.ttf']
    # Nome das Fontes
    Nomes = ['Will Robinson']
    # Notificar as mensagens de erro e/ou sucesso?
    Notificar = true
    # Pasta, na pasta do jogo,com as fontes
    Pasta_Fonte = 'Fontes/'
    # Pasta do Sistema,aonde serão instalada as fontes.
    Pasta_Destino = ENV['SystemRoot'] + '/Fonts/'
   
    # Deletar a pasta com as fontes apos instala-las?
    Deletar_Pasta = false
   
    # Mensagem de Erro
    Mensagem_de_Erro = "    Erro ao instalar a fonte %s.
    A fonte não pode ser encontrada  na pasta %s.Por favor,entre em contato em:
    rafa_fidelis@hotmail.com ou baixe a fonte %s através de sites de download de fontes!."
 
    # Mensagem de Sucesso!
    Mensagem_de_Sucesso =
    "A Fonte %s  foi instalada com sucesso no seu computador.Na pasta %s.\nDivirta-se jogando!"
  end
end
#=============================================================================
# ** Instalar_Fontes                                                           
#=============================================================================
# Esta classe é responsavel por instalar as fontes do jogo no sistema.       
#=============================================================================
class Instalar_Fontes
  # Apis por Wachunga
  AFR = Win32API.new('gdi32', 'AddFontResource', ['P'], 'L')
  WPS = Win32API.new('kernel32', 'WriteProfileString', ['P'] * 3, 'L')
  SM = Win32API.new('user32', 'SendMessage', ['L'] * 4, 'L')
  WM_FONTCHANGE = 0x001D
  HWND_BROADCAST = 0xffff
  #===========================================================================
  # Inicialização do Objeto
  #===========================================================================
  def initialize
    success = []
    for i in 0...Auto_Instalar_Fontes::Nome_Dos_Arquivos.size
      f = Auto_Instalar_Fontes::Nome_Dos_Arquivos[i]
      # Se ja não estiver instalada a fonte
      if not FileTest.exist?(Auto_Instalar_Fontes::Pasta_Destino + f)
        # Verifica na pasta do jogo,se a fonte existe
        if FileTest.exists?(Auto_Instalar_Fontes::Pasta_Fonte + f)
          # Copia para o sistema
          File.rename(Auto_Instalar_Fontes::Pasta_Fonte + f, Auto_Instalar_Fontes::Pasta_Destino + f)
          AFR.call(Auto_Instalar_Fontes::Pasta_Destino + f)
          WPS.call('Auto_Instalar_Fontes', Auto_Instalar_Fontes::Nomes[i] + ' (TrueType)', f)
          SM.call(HWND_BROADCAST,WM_FONTCHANGE,0,0)
          if FileTest.exist?(Auto_Instalar_Fontes::Pasta_Destino + f)
            success.push(Auto_Instalar_Fontes::Nomes[i])
          end
          # Se a fonte não existir na pasta do Jogo
          else
            f = Auto_Instalar_Fontes::Nomes[i]
            message = sprintf(Auto_Instalar_Fontes::Mensagem_de_Erro,f,Auto_Instalar_Fontes::Pasta_Fonte,f)
            print message
            exit
          end
        end
      end
      if success != [] # Se uma fonte foi instalada
        if Auto_Instalar_Fontes::Notificar
          fonts = ''
          success.each do |f|
            fonts << f << ', '
          end
          message = sprintf(Auto_Instalar_Fontes::Mensagem_de_Sucesso,fonts[0..-3],Auto_Instalar_Fontes::Pasta_Destino)
          print message
          Dir.delete(Auto_Instalar_Fontes::Pasta_Fonte) if Auto_Instalar_Fontes::Deletar_Pasta
        end
        # Executar Game.exe novamente,para que as fontes sejam verificadas
        Thread.new { system('Game') }
        exit
     end
   end
end
Instalar_Fontes.new # Iniciando a Instalação

Imagens

Não necessário

Download

Não necessário

Créditos e Avisos
Wachunga
Rafidelis

 

SMF 2.0.2 | SMF © 2013, Simple Machines
© Centro RPG Maker - Alguns direitos reservados.
Layout por Uhtred