¡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 [XP] Libro de Objetos & Bestiario el Dom Jul 10, 2011 3:44 pm

Razor

avatar
Hola U. Maker el día de hoy vengo a disponibilizar un script con funcionalidades que todo buen rpg debe tener, se trata de:

Libro de Objetos & Bestiario
Características:
Este script crea un libro Bestiario y artículos en cual les sera posible ver la información de los monstruos y objetos. Es también un "sistema de tesoros" por asi decirlo, al explorar el script sabrán a lo que me refiero.

Imagenes:
Spoiler:


-----

-----

-----

-----

Instrucciones:
Personalización de Script. Al igual que también cuenta con el sistema de tesoros, que el elemento a ser considerado como un tesoro, que debe tener un atributo llamado tesoro. (Personalizable en Script)

Script:
Código:
################################################################################
################################################################################
########################### Cold Module ########################################
################################################################################
################################################################################
#===============================================================================
# By Cold Strong
#===============================================================================
# Cold Module
#-------------------------------------------------------------------------------
# This script count some functions used by my scripts
# Obs: It is some imcomplete...
#===============================================================================

class Customs_Data
 
  attr_accessor  :actors       
  attr_accessor  :classes     
  attr_accessor  :skills       
  attr_accessor  :items       
  attr_accessor  :weapons     
  attr_accessor  :armors       
  attr_accessor  :enemies     
  attr_accessor  :troops       
  attr_accessor  :states     
  attr_accessor  :animations   
  attr_accessor  :tilesets     
  attr_accessor  :common_events
  attr_accessor  :system
  attr_accessor  :map_infos
  attr_accessor  :maps
 
  def initialize
    @actors        = load_data("Data/Actors.rxdata")
    @classes      = load_data("Data/Classes.rxdata")
    @skills        = load_data("Data/Skills.rxdata")
    @items        = load_data("Data/Items.rxdata")
    @weapons      = load_data("Data/Weapons.rxdata")
    @armors        = load_data("Data/Armors.rxdata")
    @enemies      = load_data("Data/Enemies.rxdata")
    @troops        = load_data("Data/Troops.rxdata")
    @states        = load_data("Data/States.rxdata")
    @animations    = load_data("Data/Animations.rxdata")
    @tilesets      = load_data("Data/Tilesets.rxdata")
    @common_events = load_data("Data/CommonEvents.rxdata")
    @system        = load_data("Data/System.rxdata")
    @maps = {}
    for i in 1..999
      number = sprintf("%03d", i)
      if FileTest.exist?("Data/Map#{number}.rxdata")
        @maps[i] = load_data("Data/Map#{number}.rxdata")
      else
        break
      end
    end
    @map_infos    = load_data("Data/MapInfos.rxdata")
  end
 
  def [](str)
    return @customs_data[str]
  end
 
end

module Cold
 
  $data = Customs_Data.new
 
end

class Window_Base < Window
 
 
  #--------------------------------------------------------------------------
  # - Desenhar Gráfico
  #
  #    t    : Texto a ser feita as linhas
  #    width : Largura máxima da linha
  #   
  #    - Ele retorna uma array, em que cada elemento é uma string
  #      com a largura desejada.
  #--------------------------------------------------------------------------
 
  def lines(t, width)
    text = t.clone
    x = self.contents.text_size(text).width / width
    x += 1 if self.contents.text_size(text).width % width > 0
    texts = []
    for i in 0...x
      texts.push("")
    end
    for i in 0...texts.size
      words = text.split(" ")
      return_text = ""
      for w in 0...words.size
        word = words[w]
        x = "!@$%¨&*()"
        return_text += word + x + " "
        return_text2 = return_text.gsub(x,"")
        t_width = self.contents.text_size(return_text2).width
        if t_width > width
          texts[i] = return_text.gsub(" "+word+x, "")
          text.gsub!(texts[i], "")
          break
        elsif w == words.size - 1
          texts[i] = return_text.gsub(x+" ", "")
          text.gsub!(texts[i], "")
          break
        else
          return_text.gsub!(word+x, word)
        end
      end
    end
    return texts
  end
 
  def draw_text_in_lines(x, y_initial, width, height, text)
    lines = lines(text, width)
    y = y_initial
    for text_line in lines
      self.contents.draw_text(x, y, width, height, text_line)
      y += height
    end
  end
   
end

¿Como lo uso?

Para llamar el Menú de Objetos, poner lo siguiente en el comando de evento "llamar script":
$scene = Scene_ItemsBook.new

Para llamar el Menú de Bestiario, poner lo siguiente en el comando de evento "llamar script":
$scene = Bestiary.new

Observación: El script viene en ingles, pronto lo traducire, pero ahorita no me queda tiempo... Es necesaria una imagen en el directorio Graphics/Pictures para que sea el fondo de los menús. Para definir el nombre que debera tener la imagen vayan a la linea 42 del script.

Creditos: Cold Strong

Salud0z~





Todos mis aportes por Mediafire tienen contraseña, esa es: www.universomaker.net
Esto es para evitar plagio, asegúrense de copiar y pegar la contraseña.

#2 Re: [XP] Libro de Objetos & Bestiario el Dom Jun 10, 2012 8:08 pm

Ledai

avatar
Perdon si el tema ya es antiguo...(no entiendo de script así que lo pregunto anque sea tonto =P) En el bestiario, ¿Puede hacerse para que en vez del Battler se vea el chara del mostruito...? El sprites y no el dibujo del bicho....




Entérate de todas las novedades

#3 Re: [XP] Libro de Objetos & Bestiario el Lun Jun 11, 2012 2:23 am

orochii

avatar
Pues sí se puede, habría que cambiar ésta parte...
Código:
def draw_battler(x, y)
    enemy = $data.enemies[@enemy.id]
    bitmap = RPG::Cache.battler(enemy.battler_name, enemy.battler_hue)
    @view = Viewport.new(0, 0, 640, 480)
    @view.z = self.z - 10
    @view.visible = self.visible
    @sprite = Sprite.new(@view)
    @sprite.bitmap =  bitmap
    w = bitmap.width
    h = bitmap.height
    @sprite.x = x + (256 - w)/2 + self.x + 16
    @sprite.y = y + (256 - h)/2 + self.y + 16
  end
Por ésto.
Código:
def draw_battler(x, y)
    enemy = $data.enemies[@enemy.id]
    bitmap = RPG::Cache.character(enemy.battler_name, enemy.battler_hue)
    bitmap.width /= 4
    bitmap.height /= 4
    @view = Viewport.new(0, 0, 640, 480)
    @view.z = self.z - 10
    @view.visible = self.visible
    @sprite = Sprite.new(@view)
    @sprite.bitmap =  bitmap
    w = bitmap.width
    h = bitmap.height
    @sprite.x = x + (256 - w)/2 + self.x + 16
    @sprite.y = y + (256 - h)/2 + self.y + 16
  end
Por cierto, ¿en el post no falta el script en sí? Pueden conseguirlo de éste enlace. No intenten descargar la demo porque ya caducó el host del archivo D:. Descarguen el archivo adjunto (al puro final del post), en TXT, y lo importan manualmente a su juego.

Espero ayude y sirva xD, salut,
Orochii Zouveleki

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.