Quedada del ChatBox
Conectarse

Recuperar mi contraseña

Estadísticas
Tenemos 2162 miembros registrados.
El último usuario registrado es chichox.

Nuestros miembros han publicado un total de 37849 mensajes en 4923 argumentos.
Últimos temas
» Relato de Seytan
por mrhawi Hoy a las 5:46 pm

» Pequeño tilemap de Pokemon
por Wecoc Hoy a las 5:39 pm

» Vehiculos por agua
por orochii Hoy a las 5:30 pm

» Denme su opinión sobre este sprite
por mrhawi Hoy a las 5:13 pm

» Saludos gente
por orochii Hoy a las 4:43 pm

» CONCURSO DE TROFEOS (Nº2)
por EdénTheGame Hoy a las 4:40 pm

» script Titulo animado -Modificacion-
por Felipe_9595 Hoy a las 4:27 pm

» Galeria de Dibujos
por Wecoc Hoy a las 3:32 pm

» D.R.E.A.M.S [RPGXP] [DEMO 2.0!]
por ZeroTwilight Hoy a las 3:05 pm

» Ganar dinero con el maker
por gerrtunk Hoy a las 12:57 pm

Afiliados
Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Topic de screens
----------------------------------------
Navega con Firefox
[DESCARGA]

[RPGXP] Scripts para XP

 :: RPG Maker :: Scripts

Ver el tema anterior Ver el tema siguiente Ir abajo

[RPGXP] Scripts para XP

Mensaje por Khaizen el Mar Jul 27, 2010 7:38 pm

Despues de un tiempo inactivo (por causas varias) he decido seguir posteando en el foro. Hoy traigo una serie de scripts para XP conocidos pero que me han parecido que no estan en el foro... asi que para todos vostros aquí estan.

TDS Continue


Basicamente, lo que hace es que cuando mueres, te muestra un menu con la opcion de mandarte al ultimo lugar donde salvastes el juego. Tambien tiene otras opciones como cargar otra partida, ir a la pantalla principal, o salir del juego. Para usarlo simplemente pon el siguiente script arriba de main:

Spoiler:

Código:

#==============================================================================
# ** TDS Continue [Scene_Gameover]
# Version: 1.0
#------------------------------------------------------------------------------
#  Allows for a player to continue at the last save point when he dies.
#==============================================================================
# Variable para los comandos en español
ESPAÑOL = true
#==============================================================================
# ** TDS Game_Temp
#------------------------------------------------------------------------------
#  This class handles temporary data that is not included with save data.
#  Refer to "$game_temp" for the instance of this class.
#==============================================================================
class Game_Temp
  attr_accessor :playing_filename                 
  alias tds_continue_gameover_game_temp_initialize initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    @playing_filename = 0
    tds_continue_gameover_game_temp_initialize
  end
end

#==============================================================================
# ** Scene_File
#------------------------------------------------------------------------------
#  This is a superclass for the save screen and load screen.
#==============================================================================

class Scene_File
  alias tds_continue_gameover_scene_file_update update
  def update
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Call method: on_decision (defined by the subclasses)
      on_decision(make_filename(@file_index))
      $game_temp.last_file_index = @file_index
      $game_temp.playing_filename = @file_index + 1           
      return
    end   
  tds_continue_gameover_scene_file_update       
  end
end


#==============================================================================
# ** TDS Window_Command
#------------------------------------------------------------------------------
#  This window deals with general command choices.
#  Gives more options for the command window.
#==============================================================================

class TDS_Window_Command < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    width    : window width
  #    commands : command text string array
  #
  #--------------------------------------------------------------------------
  def initialize(width, commands, column_max = 1, style = 0, inf_scroll = 1)
    # Compute window height from command quantity
    super(0, 0, width, (commands.size * 1.0 / column_max).ceil * 32 + 32)
    @inf_scroll = inf_scroll
    @item_max = commands.size
    @commands = commands
    @column_max = column_max
    @style = style
    self.contents = Bitmap.new(width - 32, (@item_max * 1.0 / @column_max).ceil * 32)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index : item number
  #    color : text color
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    rect = Rect.new(index%@column_max * (self.width / @column_max) + 4, 32 * (index/@column_max), self.width /

@column_max - 40, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[index], @style)
  end
  #--------------------------------------------------------------------------
  # * Disable Item
  #    index : item number
  #--------------------------------------------------------------------------
  def disable_item(index)
    draw_item(index, disabled_color)
  end
 
  def update_help
    @help_window.set_actor($game_party.actors[$scene.actor_index])
  end
end

#==============================================================================
# ** Scene_Gameover
#------------------------------------------------------------------------------
#  This class performs game over screen processing.
#==============================================================================

class Scene_Gameover
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Make game over graphic
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.gameover($data_system.gameover_name)
    # Creates command window
    if ESPAÑOL == true
    @command_window = TDS_Window_Command.new(192, ['Continuar',
    'Pantalla de título','Cargar Fila','Salir'],1,1)
    else
    @command_window = TDS_Window_Command.new(192, ['Continue', 'Title Screen',
    'Load file','Quit'],1,1)
    end 
    @command_window.back_opacity = 0   
    @command_window.opacity = 0
    @command_window.contents_opacity = 0
    @command_window.x = 320 - @command_window.width / 2
    @command_window.y = 40
    @command_window.visible = false
    @command_window.active = false
    # Stop BGM and BGS
    $game_system.bgm_play(nil)
    $game_system.bgs_play(nil)
    # Play game over ME
    $game_system.me_play($data_system.gameover_me)
    # Execute transition
    Graphics.transition(120)
    @intro_updating = true   
    @continue_enabled = false   
    # Main loop
    loop do
      # Update game screen
      Graphics.update
      # Update input information
      Input.update
      # Frame update
      update
      # Abort loop if screen is changed
      if $scene != self
        break
      end
    end
    # Prepare for transition
    Graphics.freeze
    # Dispose of game over graphic
    @sprite.bitmap.dispose
    @sprite.dispose
    @command_window.dispose
    # Prepare for transition
    Graphics.freeze
    # If battle test
    if $BTEST
      $scene = nil
    end
  end
  #--------------------------------------------------------------------------
  # * Updates the first fading effect
  #--------------------------------------------------------------------------
  def update_enter
    @command_window.opacity += 10
    @command_window.back_opacity += 10 if @command_window.back_opacity < 160
    @command_window.contents_opacity += 10 if @command_window.contents_opacity < 255 
    @command_window.visible = true       
    if @command_window.opacity >= 255
    @command_window.active = true
    @intro_updating = false
    return
    end
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    update_enter if @intro_updating == true
    # Update command window
    @command_window.update   
    # Gets the value of playing file to apply it later when the game is reloaded
    @game_value = $game_temp.playing_filename
    # Gets the filename # of the last playing variable
    @filename = "Save#{$game_temp.playing_filename}.rxdata"   
    # If file last playing file exist let's you continue otherwise it cancels the
    # continue command
    unless FileTest.exist?(@filename)
      # Disables first item in the command window
      @command_window.disable_item(0)   
      # Allows to continue if file exist
      @can_continue = false
    else
      @can_continue = true       
    end   
    # checks to see if save files 1 to 5 exist   
    for i in 0..5
      if FileTest.exist?("Save#{i+1}.rxdata")
        # Allows for continue command to be used
        @continue_enabled = true
      end     
    end
      # if continue disable
      if @continue_enabled == false
        # Disables load game command
        @command_window.disable_item(2)       
      end
     
    if @command_window.active == true && Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
      when 0  # Continue
        if @can_continue == true
        $game_system.se_play($data_system.decision_se)         
        # loads filename if filename from continue exist
        # stops ME audio
        Audio.me_stop
        # Load File
        load = Scene_Load.new       
        load.on_decision(@filename)
        # Make player face down
        $game_player.turn_down
        #Gives back the value of the game you were playing
        $game_temp.playing_filename = @game_value
        else
        $game_system.se_play($data_system.buzzer_se)
        end
        when 1  # To title
        Graphics.transition(40)               
        $game_system.se_play($data_system.decision_se)       
        $scene = Scene_Title.new
        when 2  # Load File
        if @continue_enabled == true   
        $game_system.se_play($data_system.decision_se)         
        $scene = Scene_Load.new
        else
        $game_system.se_play($data_system.buzzer_se)
        end
        when 3  # Shutdown
        $game_system.se_play($data_system.decision_se)       
        $scene = nil
      end
    end
  end   
end



Inventario delimitado

Autor: Synthesize

Este script te permitira tener solo una cierta cantidad de items en tu inventario, por ejemplo, si tienes 20 pociones, 30 manas y tu inventario esta lleno, no podrás tener mas objetos, por lo que si obtienes algo, ese algo no lo tendrás.

Spoiler:

Código:

#============================================================================
#                    *Syn's Item Limits*
#----------------------------------------------------------------------------
# Written by Synthesize
# Version 1.00
# August 13, 2007
# Tested with SDK 2.1
#============================================================================
=begin
-=What is it?=-
  The purpose of this script is to allow Item Limitation, or in other words
limit the number of items the party can carry at one time. By default,
the party can carry 99 of every single item in the database. With this script
the party can only carry 50 items (Default value) and every item in the database
affects this number. As an example, say you have 25 potions and 25 High Potions,
now your inventory is full and the party cannot collect more items. That is, unless
you go out and buy a bigger bag.
Bag sizes are stored in an Array and called on by a flag. So virtually,
you can have as many items as you want, but you need a bigger bag to accomplish that.

-=Future Additions=-
- Make Custom Item Scene which displays Total Space and etc
- Most likely add more features

=end
#----------------------------------------------------------------------------
# Compatiability
#----------------------------------------------------------------------------
# Tested with SDK 2.1
# Tested with DerVVulfman's Grouping and Details
# Aliases the following:
#  Game_Party::gain_item
#  Game_Party::gain_weapon
#  Game_Party::gain_armor
#  Game_Party::initialize
#  Scene_Equip::Main
#---------------------------------------------------------------------------
# Begin Customization Section
#---------------------------------------------------------------------------
module ItemLimits
  # Item Limit Options #
  Max_item_storage = {1 => 75, 2 => 100, 3 => 125}  # Format {flag_id => new_size}
  # This defiens the default value of the amount of items to be stored.
  Max_item_storage.default = 50 
end
#---------------------------------------------------------------------------
# End Customization Section
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Begin Game Party Aliased Methods
#---------------------------------------------------------------------------
class Game_Party
  attr_accessor :storage_flag 
  attr_accessor :item_storage
  attr_accessor :item_count     
  #---------------------------------------------------------------------------
  # Aliased Methods
  #  Game_Party::gain_item
  #  Game_Party::gain_weapon
  #  Game_Party::gain_armor
  #  Game_Party::initialize
  #---------------------------------------------------------------------------
  alias syn_gain_item gain_item
  alias syn_gain_weapon gain_weapon
  alias syn_gain_armor gain_armor
  alias syn_init initialize
  #---------------------------------------------------------------------------
  # Initialize
  # Add additional variables
  #---------------------------------------------------------------------------
  def initialize
  @item_count = 0
  syn_init
  end
  #---------------------------------------------------------------------------
  # Gain_Item
  #  item_id = Target Item ID
  #  n = amount of item_id which is being added
  #---------------------------------------------------------------------------
  def gain_item(item_id,n)
  syn_gain_item(item_id,n)
  syn_item_limits(item_id, n,0)
  end
  #---------------------------------------------------------------------------
  # Gain_Weapon
  #  item_id = Target Item ID
  #  n = amount of item_id which is being added
  #---------------------------------------------------------------------------
  def gain_weapon(weapon_id,n)
  syn_gain_weapon(weapon_id,n)
  syn_item_limits(weapon_id, n,1)
  end
  #---------------------------------------------------------------------------
  # Gain_Armor
  #  item_id = Target Item ID
  #  n = amount of item_id which is being added
  #---------------------------------------------------------------------------
  def gain_armor(weapon_id,n)
  syn_gain_armor(weapon_id,n)
  syn_item_limits(weapon_id, n,2)
  end
  #---------------------------------------------------------------------------
  # Syn Item Limits
  #  item_id = Target Item ID
  #  n = The amount of items to add
  #  value = Type of Item being checked
  #---------------------------------------------------------------------------
  def syn_item_limits(item_id, n, value)
  @item_storage = ItemLimits::Max_item_storage[@storage_flag]
  item_difference = @item_count + n
  leftover = item_difference - @item_storage
  case value
  # Item
  when 0
    if item_difference > @item_storage
      @item_count = item_difference
      gain_item(item_id,-leftover)
    else
      @item_count = item_difference
    end
  # Weapon
  when 1
    if item_difference > @item_storage
      @item_count = item_difference
      gain_weapon(item_id,-leftover)
    else
      @item_count = item_difference
    end
    # Armor
  when 2
    if item_difference > @item_storage
      @item_count = item_difference
      gain_armor(item_id,-leftover)
    else
      @item_count = item_difference
    end
  end
  end
end
  #---------------------------------------------------------------------------
  # End Game_Party modification
  #--------------------------------------------------------------------------
  # Begin Scene_Equip Alias
  #--------------------------------------------------------------------------
class Scene_Equip
  alias syn_equip_main main
  def main
  # Adds dummy pockets. Prevents items from erasing when unequipping.
  $game_party.item_storage += 4
  syn_equip_main
  $game_party.item_storage -= 4
  end
end
#-----------------------------------------------------------------------------
#=============================================================================
# Special Thanks: Northern49 for the General Idea
# Tested with SDK 2.1
# May be incompatible with scripts that modify the mentioned aliased classes
#-----------------------------------------------------------------------------
#                      *Syn's Item Limits*
#=========================================================================



Con el script tambien pueden agrandar el tamaño de su inventario. Para esto deben llamar a script con la siguiente clave:

Código:

$game_party.storage_flag = 1


El 1 representa el numero de la actualizacion de la bolsa, mas o menos por el principio del script pueden cambiar el limite "default del inventario" y tambien el numero de objetos totales por cada actualizacion. Busquen este codigo:

Código:

# Item Limit Options #
Max_item_storage = {1 => 75, 2 => 100, 3 => 125} # Format {flag_id => new_size} # entre las llavesillas se #encuentran el numero de objetos por actualizacion, cambien el nimero que esta despues de la > (flecha)
# This defiens the default value of the amount of items to be stored.
Max_item_storage.default = 50 #<--- limite default del inventario
end


Sombra en textos

Autor: Ultimate Jesus

Este script te permite poner sombras en los textos.

Spoiler:

Código:

##############################################################
###################### SHADOW TEXT #############################
##############################################################
# Autor - Ultimate Jesus
##############################################################
# Adiciona sombras em seu texto.
##############################################################
class Bitmap

ShadowIndent = 2 # Intensidade da sombra
ShadowColour = Color.new(0, 0, 0, 200)# Cor da sombra


unless @ja_ta_feito == 1
alias draw_text_plain draw_text
@ja_ta_feito = 1
end

def draw_text(arg1 = 0, arg2 = 0, arg3 = 0, arg4 = 0, arg5 = 0, arg6 = 0)
if arg1.is_a?(Rect)
x = arg1.x
y = arg1.y
width = arg1.width
height = arg1.height
string = arg2
align = arg3
else
x = arg1
y = arg2
width = arg3
height = arg4
string = arg5
align = arg6
end
colour = self.font.color.dup
self.font.color = ShadowColour
draw_text_plain(x + ShadowIndent, y + ShadowIndent, width, height, string, align)
self.font.color = colour
draw_text_plain(x, y, width, height, string, align)
end
end



Sombras dinamicas


Permite agregar sombras dinamicas a los personajes.

Para instalarlo, debes sustituiren su proyecto Sprite_Character por Sprite_Character*, copiar los scripts Sprite_Shadow*, Sprite_Sun* y pegarlos en tu proyecto en el mismo orden que aparecen en la demo.

Para agregar luz a un evento, debes usar la opcion "poner anotacion", crear una anotacion de nombre: "s" (sin comillas), ahora cuando el heroe se acerque al objeto que emite luz (en este caso, el diamante), este tendra una sombra muy realista que aumentara y disminuira segun la distancia a la que estes del objeto...
Para agregar sombra a un evento debes usar la opcion "poner anotacion", crear una anotacion de nombre: "o" (sin comillas).

Para agregar un sol comun (una luz que no aumentara ni disminuira cuando te acerques al evento que lo emite) "poner anotacion", crear una anotacion de nombre: "sun" (sin comillas), ahora el heroe tendra una sombra fija que no aumentara ni dismuinuira, como susede con la luz de el sol....

Descargar DEMO aqui (Megaupload)
Descargar DEMO aqui (Rapidshare)

PD: En caso de que se indique lo contrario, todos los scripts iran sobre MAIN.

Saludos, Khaizen.

Khaizen
Principiante
Principiante

0/3

Créditos 1455


Volver arriba Ir abajo

Re: [RPGXP] Scripts para XP

Mensaje por rubibetico el Mar Jul 27, 2010 7:44 pm

Muy Buenos el de la sombra en texto y la sombra dinamica ;D

rubibetico
Novato
Novato

0/3

Créditos 69


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Scripts

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