¡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 [RPG Maker VX] Sprite Zoom v 1.0 el Lun Sep 26, 2011 12:05 am

MidnightMoon

avatar
Bueno este es un pedido que me solicitaron, ocupa las clases de Zoom del script de Zoom char de Falcao; si se molesta por esto favor de notificarme y lo retiro.

Caracteristicas:

  • Permite aplicar zoom a los charas.
  • Definir tamaño por default de todos los charas para un mapa en especifico, y de la misma manera se pueden definir estos personalizados; ambos desde el modulo (Si se configura un tamaño por default de un mapa y abajo un tamaño personalizado pondra todos los charas en el default y los personalizados en el personalizado).
  • Permite llamar el zoom desde eventos; pero no si se pone en inicio automatico, en este caso lo ignorara.
  • Se puede redimencionar el Player, los Events y los Vehicules.

Script:
Código:

#======================================================================#
#  Zoom Sprite V 1.0
#  ****** By Midnight Moon                                ******      #
# Descripcion: Script extendido del script Zoom Char de falcao, en cual
#  se permite hacer mas chico o mas grande el tamaño de los charas.
#  Se ha añadido que se pueda configurar tamaño default de los eventos
#  de un mapa.
#  El script de falcao se citara a continuacion.
#======================================================================#
#==================================================================#
#  #*****************#        Zoom char V 1.0 , Falcao script      #
#  #*** By Falcao ***#        Permite cambiar el tamao del chara  #
#  #*****************#        al antojo del usuario                #
#        RMXP                                                      #
# makerpalace.onlinegoo.com                                        #
#==================================================================#
module ConfigZoomSprite
#==================================================================#
  DataIMap = {
    2 => [0.5, 0.5],
    3 => [2, 2]
  }
 
  # Tamaños por default de los eventos
  DataIPlayer = [1, 1]
  DataIVehicule = {
    0 => [1, 1],
    1 => [1, 1],
    2 => [1, 1]
  }
  DataIEvent = [1, 1]
 
  # ID de mapa con tamaño personalizado por default
  DataIConfig = {
    4 => {
      "Player" => [0.8, 0.8],
      "Event" => {
        1 => [3, 3]
      },
      "Vehicule" => {
        1 => [5, 5]
      }
    }
  }
 
#==================================================================#
end
#-------------------------------------------------------------------
# * Commands
#
# $game_player.zoom(x,y)      hace Zoom en el personaje
# Example.  $game_player.zoom(2,2) incrementa el doble
#
# $game_map.events[Event ID].zoom(x,y)  hace zoom en el chara del evento
# Example  $game_map.events[1].zoom(2,2)  el evento incrementa el doble
#
# $game_map.vehicles[Vehicule ID].zoom(x,y)  hace zoom en el Vehiculp
# Example  $game_map.vehicles[0].zoom(2,2)  el evento incrementa el doble
#
# Note: zoom soporta decimales
# El zoom por defecto es de "(1,1)"
#--------------------------------------------------------------------
 
class Game_Character
  include ConfigZoomSprite
 
  attr_accessor :zoom_x
  attr_accessor :zoom_y
  alias falcaozoom_ini initialize
  def initialize
    falcaozoom_ini
    @zoom_x = DataIPlayer[0]
    @zoom_y = DataIPlayer[1]
  end
  def zoom(x,y)
    self.zoom_x = x
    self.zoom_y = y
  end
end

class Game_Vehicule
  attr_accessor :zoom_x
  attr_accessor :zoom_y
  alias falcaozoom_ini initialize
  def initialize(type)
    falcaozoom_ini(type)
    @zoom_x = DataIVehicule[type][0]
    @zoom_y = DataIVehicule[type][1]
  end
  def zoom(x,y)
    self.zoom_x = x
    self.zoom_y = y
  end
end

class Sprite_Character < Sprite_Base
  alias character_zoom_update update
  def update
    character_zoom_update
    if @zoom_x != @character.zoom_x or
      @zoom_y != @character.zoom_y
      @zoom_x = @character.zoom_x
      @zoom_y = @character.zoom_y     
      self.zoom_x = @character.zoom_x
      self.zoom_y = @character.zoom_y
    end
  end
end

#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
#  This class performs map screen processing.
#==============================================================================
class Scene_Map
  include ConfigZoomSprite
 
  alias midnightmoon_transfer_player update_transfer_player
  def update_transfer_player
    midnightmoon_transfer_player
    unless DataIMap[$game_map.map_id].nil?
      $game_map.events.each do |x, y|
        $game_map.events[x].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1]) if y.character_name != ""
      end
      $game_map.vehicles[0].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_map.vehicles[1].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_map.vehicles[2].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_player.zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
    else
      $game_map.events.each do |x, y|
        $game_map.events[x].zoom(DataIEvent[0], DataIEvent[1]) if y.character_name != ""
      end
      $game_map.vehicles[0].zoom(DataIVehicule[0][0], DataIVehicule[0][1])
      $game_map.vehicles[1].zoom(DataIVehicule[1][0], DataIVehicule[1][1])
      $game_map.vehicles[2].zoom(DataIVehicule[2][0], DataIVehicule[2][1])
      $game_player.zoom(DataIPlayer[0], DataIPlayer[1])
    end
   
    unless DataIConfig[$game_map.map_id].nil?
      DataIConfig[$game_map.map_id]["Event"].each do |x, y|
        unless $game_map.events[x].nil?
          $game_map.events[x].zoom(y[0], y[1]) if $game_map.events[x].character_name != ""
        end
      end
      DataIConfig[$game_map.map_id]["Vehicule"].each do |x, y|
        unless $game_map.vehicles[x].nil?
          $game_map.vehicles[x].zoom(y[0], y[1])
        end
      end
      $game_player.zoom(DataIConfig[$game_map.map_id]["Player"][0], DataIConfig[$game_map.map_id]["Player"][1]) unless DataIConfig[$game_map.map_id]["Player"].nil?
    end
  end
end

#==============================================================================
# ** Scene_Title
#------------------------------------------------------------------------------
#  This class performs title screen processing.
#==============================================================================
class Scene_Title
  include ConfigZoomSprite
 
  alias midnightmoon_zoomsprite_command command_new_game
  def command_new_game
    midnightmoon_zoomsprite_command
    unless DataIMap[$game_map.map_id].nil?
      $game_map.events.each do |x, y|
        $game_map.events[x].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1]) if y.character_name != ""
      end
      $game_map.vehicles[0].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_map.vehicles[1].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_map.vehicles[2].zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
      $game_player.zoom(DataIMap[$game_map.map_id][0], DataIMap[$game_map.map_id][1])
    else
      $game_map.events.each do |x, y|
        $game_map.events[x].zoom(DataIEvent[0], DataIEvent[1]) if y.character_name != ""
      end
      $game_map.vehicles[0].zoom(DataIVehicule[0][0], DataIVehicule[0][1])
      $game_map.vehicles[1].zoom(DataIVehicule[1][0], DataIVehicule[1][1])
      $game_map.vehicles[2].zoom(DataIVehicule[2][0], DataIVehicule[2][1])
      $game_player.zoom(DataIPlayer[0], DataIPlayer[1])
    end
    $game_map.interpreter.update
  end
end

Imagenes:
Imagenes RMVX:




Descarga de Demo:


Nos estamos leyendo

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.