¡Bienvenido a Universo Maker!
¿Es esta la primera vez que visitas el foro? Si es así te recomendamos que te registres para tener completo acceso a todas las áreas y secciones del foro, así también podrás participar activamente en la comunidad. Si ya tienes una cuenta, conectate cuanto antes.
Iniciar Sesión Registrarme

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo Mensaje [Página 1 de 1.]

#1 Script Memory Font Loader. el Mar Nov 24, 2015 8:51 pm

Reputación del mensaje :100% (2 votos)

LuRen

avatar

MEMORY FONT LOADER
RPG Maker XP
Un script para cargar fuentes en nuestros juegos, sin que despues tengan que ser instaladas por los jugadores.
Sobre el Script:
Este script permite definir una carpeta donde tendremos nuestras fuentes. Entonces las carga desde ahí, sin la necesidad de que sean instaladas. Funciona con fuentes de extensión *.ttf y *.otf

Esta es la publicación original.
Imágenes:
Spoiler:


Instrucciones:
♦️ Paso 1: Ve al editor de script y luego haz click derecho sobre Main. Elige "Insertar".
 ♦️ Paso 2: En ese nuevo espacio pega el script.
 ♦️ Paso 3: Ahora crea una carpeta con el nombre de "Fonts". Aquí pondremos nuestras fuentes.
 ♦️ Paso 4: Ahora ve a "Main" y pon el nombre de la fuente que quieres usar por defecto. Aquí yo usaré la fuente "Slant".

♦️ Otras cosas: En la publicación original mencionaban que hay que asegurarse de escribir bien el nombre de la fuente, o no la reconocerá. A veces el nombre de la fuente y el nombre del archivo no son el mismo. Configuraciones e instrucciones adicionales dentro del script. Eso es todo.  
Código:

Código:
#=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
# Memory Font Loader
# Author: ForeverZer0
# Version: 1.1
# Date: 12.17.2014
#=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
#                             VERSION HISTORY
#=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
# v.1.0   1.8.2014
#   - Original Release
# v.1.1   12.17.2014
#   - Improved compatibility on different systems by adding "AddFontResource"
#     as backup call if "AddFontResourceEx" fails
#=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
#
# Introduction:
#
#   Small script that allows for loading and using fonts into memory at run-time
#   without the need for installing them on the operating system. The advantage
#   of this script over others, such as Wachunga's font-install script, is that
#   it does not require a administrator privileges to use the fonts, nor a
#   restart of the game after running.
#
# Features:
#
#   - Automatically load all fonts found in user-defined folder
#   - Supports TrueType (*.ttf) and OpenType(*.otf) fonts
#   - Does not require Administrator privileges
#   - Does not require a game restart
#
# Instructions:
#  
#   - Place script anywhere above main
#   - Some optional configuration below with explanation
#   - Use the script call "Font.add(PATH_TO_FILE)" to add a font.
#   - If using auto-load, create a folder for the fonts ("Fonts" by default),
#     and place all font files within it. Loading will be done automatically.
#
# Compatibility:
#
#   - No known compatibility issues with any other script.
#
# Credits/Thanks:
#
#   - ForeverZer0, for the script
#   - Duds, for pointing out the "AddFontResource" fix
#
#=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=

#===============================================================================
# ** Font
#-------------------------------------------------------------------------------
# The font class. Font is a property of the Bitmap class.
#===============================================================================
class Font
 
  #-----------------------------------------------------------------------------
  #                            CONFIGURATION
  #-----------------------------------------------------------------------------
 
  # This value (true/false) indicates if all fonts in the specified fonts folder
  # will be automatically loaded when the game is started.
  AUTO_LOAD = true
  
  # Set this to the name of the folder, relative to the game directory, where
  # the font files are contained. This folder will be searched for font files
  # when using the auto-load feature
  FONT_FOLDER = 'Fonts'
 
  #-----------------------------------------------------------------------------
  #                           END CONFIGURATION
  #-----------------------------------------------------------------------------
 
  #-----------------------------------------------------------------------------
  # * Constants
  #-----------------------------------------------------------------------------
  WM_FONTCHANGE = 0x001D
  HWND_BROADCAST = 0xFFFF
  AddFontResource = Win32API.new('gdi32', 'AddFontResource', ['P'], 'L')
  AddFontResourceEx = Win32API.new('gdi32', 'AddFontResourceEx', 'PLL', 'L')
  SendMessage = Win32API.new('user32', 'SendMessage', 'LLLL', 'L')
  SendNotifyMessage = Win32API.new('user32', 'SendNotifyMessage', 'LLLL', 'L')
  #-----------------------------------------------------------------------------
  # * Class Variables
  #-----------------------------------------------------------------------------
  @@memory_fonts = []
  #-----------------------------------------------------------------------------
  # * Load font(s) into memory
  #     filename  : Full path to font file. Accepts multiple filenames.
  #-----------------------------------------------------------------------------
  def self.add(*filenames)
    filenames.each {|f|
      next if @@memory_fonts.include?(f)
      if AddFontResourceEx.call(f, 16, 0) > 0 || AddFontResource.call(f) > 0
        @@memory_fonts.push(f)
      end
    }
    SendNotifyMessage.call(HWND_BROADCAST, WM_FONTCHANGE, 0, 0)
    SendMessage.call(HWND_BROADCAST, WM_FONTCHANGE, 0, 0)
  end
  #-----------------------------------------------------------------------------
  # * Automatically seach and load all font files found in the font folder.
  #-----------------------------------------------------------------------------
  def self.auto_load
    dir = FONT_FOLDER == '' ? Dir.pwd : File.join(Dir.pwd, FONT_FOLDER)
    return unless File.directory?(dir)
    files = Dir.glob(File.join(dir, '*.{ttf,otf}'))
    self.add(*files)
  end
end

# Load fonts if using auto-load
if Font::AUTO_LOAD
  Font.auto_load
end
   
Créditos:
Créditos a ForeverZer0 por crear el script, y a Duds por una pequeña corrección del mismo.

Saludos. Opalo Hola



Última edición por Ginrei el Vie Nov 27, 2015 1:58 am, editado 2 veces

#2 Re: Script Memory Font Loader. el Mar Nov 24, 2015 9:59 pm

Ledai

avatar
Oh!!! la verdad es que si funciona sí que quería usarlo en el proyecto, pero lo estoy dejando por el momento para cuando tenga más pedazo de juego terminado... Ahora no puedo probarlo, así que  si alguien confirma que funciona le doy otro  Ópalo Reputación XDD




Entérate de todas las novedades

#3 Re: Script Memory Font Loader. el Miér Nov 25, 2015 12:33 am

Natalie

avatar
Ah guay guay!! Muy útil el script! Tenía la duda de como tendría que llamarse la carpeta y leyendo he visto que debe llamarse "Fonts"  (por si alguien duda como yo xD)

¡ Ópalo Reputación  por el aporte!

#4 Re: Script Memory Font Loader. el Miér Nov 25, 2015 4:06 pm

Matimike

avatar
Es útil, aunque dudo usarlo para mi actual juego, pero es un buen aporte Ópalo Reputación !!!

#5 Re: Script Memory Font Loader. el Vie Nov 27, 2015 1:55 am

Reputación del mensaje :100% (1 voto)

LuRen

avatar
He probado personalmente el script, y he actualizado el post principal con algunas instrucciones adicionales y una captura de pantalla. Funciona bien Ópalo Aplaudiendo.

Opalo Hola

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.