- Base de datos de Scripts & Recursos a La carta [Pedidos V5] -

Estado
Cerrado para nuevas respuestas
Mensajes
134
Reacciones
0
Puntos
0
Bueno aqui otro script que encontre, es muy simple pero practico.

-Nombre Del Script: Barra de enemigos en batalla preterminada
-Version Del Script:¿¿??
-Rpg Maker: VX

-Introducion: Este simple script hace que en las batallas preterminadas, arriba aparezca una/s barras
indicando la vida del enemigo
-Caracteristicas: ninguna en especial, solo que se ve la vida del enemigo
-Demo: (Tan tonto somos) es broma, no creo que aga falta ^.^
-ScreenShot:
prueba1k.png

-Script:#======================================================================
# Barra de enemigos de Jens009
# Version 1.2a
# Log: Julio 29, 2008
# - Version 1.0: Show Enemy Hp Bars
# Agosto 5, 2008
# - Version 1.1: Enable On/Off feature Using a $game_system instance
# : Enable On/Off feature using an in-game switch
# Agosto 8, 2008
# - Version 1.2: Add New Options
# : Change Default Window Size
# : Add Enemy States
# Febrero 1, 2010
# - Version 1.2a: Translation to spannish
#
# Credits to:
# Jens009 (Traducción al inglés y modificación)
# Puppeto4 (Alias tutorial y x buggearme para crear el script)
# VR0 (Traducción al español)
# just kidding puppeto =p
# Author's Note:
# 9 Metodos que hicimos alias. Vea lineas 101-121
# hay 4 que no necesitamos, pero es requisito para la ventana de enemigos
# cuando no estan presentes cuando eliges objetos o tecnicas.
#
#
# Modificacion:
# Si quieres modificar las barras, vea las lineas 34-68. Verás que cuando vés
# draw_actor_hp, lo cambiamos a draw_enemy_hp para que veas que son
# barras de enemigos.
# Verás que puedes crear barras para que sea lo correcto
#
#-----------------------------------------------------------------------------
# CONFIG:
#
# I. Activar o apagar ventana de enemigos durante el juego:
#
# hay 2 especies de interruptores que puedes usar dependiendo
# de lo que te guste.
#
# Si quieres usar script mediante interruptor:
# -pon USE_GSWITCH en \"false\" (sin comillas)
# -usa llamar script, $game_system.enemy_window = true/false
# True = Ventana de enemigos activado, False = no habrá ventana
#
# Si quieres usar interruptor del juego:
# -pon USE_GSWITCH en "true" (sin comillas)
# -Decide que ID del interruptor del juego vas a usarlas
# en ENEMY_WINDOW_SWITCH
# -Usa ese interruptor para mostrar ventana de HP
# True = Ventana de enemigos activado, False = no habrá ventana
#
#
# X DEFECTO, USE_GSWITCH está en false.
# So you are using a script Switch
#
# II. ALWAYS_UPDATE
# True = Siempre actualiza en todo el juego
# pero produce tanto lag.
# False = Actualizala ventana solo al final del turno
#
# III. Spacing X and Y change
# SPACING_X = cambia el Nº del eje X de la ventana
# SPACING_Y = cambia el Nº del eje Y de la ventana
# IV. COLUMNS
# COLUMNS = Muestra la cantidad de columnas, MAX = 4
# V. SHOW_STATES
# true: muestra estados a enemigos.
#======================================================================
module JCONFIG
USE_GSWITCH = false # false: usa el interruptor $game_system.enemy_hp.
# true: usa interruptor dentro del juego
ENEMY_WINDOW_SWITCH = 1 # usa el ID del interruptor para activar la
# ventana de enemigos, cuando el interruptor es activado
ALWAYS_UPDATE = true # True = Siempre actualiza
# False = Actualiza al final del turno
SPACING_X = 90 # Eje X
SPACING_Y = 44 # Eje Y
COLUMNS = 4 # x defecto, usa 4 Columnas.
SHOW_STATES = true # true muestra estados
# false oculta estados
end

#======================================================================
# Empezamos a editar Game_System
#======================================================================
class Game_System
attr_accessor :enemy_hp # Muesta HP de enemigo en batalla

alias jens009_system_initialize_enemy_hp initialize
#=============================================
# Inicialización
#=============================================
def initialize
# inicializa ventana de enemigo si es "true"
@enemy_hp = true
# Llama metodos anteriores
jens009_system_initialize_enemy_hp
end

end # Termina edición del sistema de juego

class Window_Base
#====================================
# Define fuente de enemigos
#====================================
def draw_enemy_name(enemy, x, y)
self.contents.font.color = normal_color
self.contents.draw_text (x, y, 120, 32, enemy.name)
end
#==========================
# Define estados de enemigos
#========================
def draw_enemy_state(enemy, x, y)
count = 0
for state in enemy.states
draw_icon(state.icon_index, x 24 * count, y)
count += 1
break if (24 * count > width - 24)
end
end
#--------------------------------------------------------------------------
# * Draw Enemy HP
# actor : actor
# x : Marcación eje X
# y : Marcación eje Y
# width : largo
#--------------------------------------------------------------------------
def draw_enemy_hp(enemy, x, y, width = 120)
draw_enemy_hp_gauge(enemy, x, y, width)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 30, WLH, Vocab::hp_a)
last_font_size = self.contents.font.size
xr = x + width
if width < 120
self.contents.draw_text(xr - 44, y, 44, WLH, enemy.hp, 2)
else
self.contents.draw_text(xr - 99, y, 44, WLH, enemy.hp, 2)
self.contents.font.color = normal_color
self.contents.draw_text(xr - 55, y, 11, WLH, "/", 2)
self.contents.draw_text(xr - 44, y, 44, WLH, enemy.maxhp, 2)
end
end
#--------------------------------------------------------------------------
# * Marcador HP
# actor : actor
# x : Marcación eje X
# y : Marcación eje Y
# width : largo
#--------------------------------------------------------------------------
def draw_enemy_hp_gauge(enemy, x, y, width = 120)
gw = width * enemy.hp / enemy.maxhp
gc1 = hp_gauge_color1
gc2 = hp_gauge_color2
self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
end

end

#=============================================#
# Window_EnemyHP #
# Clase para marcar ventana de HP de enemigos #
#=============================================#
class Window_EnemyHP < Window_Selectable
def initialize
super ( 0, 0, 545, 300)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
@column_max = JCONFIG::COLUMNS
refresh
end

def refresh
self.contents.clear
for i in 0...$game_troop.members.size
enemy = $game_troop.members
x = i % @column_max * (JCONFIG::SPACING_X + @spacing)
if JCONFIG::SHOW_STATES
y = (i / @column_max * (JCONFIG::SPACING_Y + WLH) )
else
y = (i / @column_max * ((JCONFIG::SPACING_Y - 34) + WLH) )
end

#========================================
# Si usas Game_Switch
#=========================================
if JCONFIG::USE_GSWITCH and $game_switches[JCONFIGENEMY_WINDOW_SWITCH]
draw_enemy_hp(enemy, x, y+20, 90)
draw_enemy_name(enemy, x, y)
if JCONFIG::SHOW_STATES
draw_enemy_state(enemy, x, y +44)
end
end
#==========================================
# Si usas interruptor de scripts
#==========================================
if JCONFIG::USE_GSWITCH == false
if $game_system.enemy_hp == true # Start check if Window Flag is On
draw_enemy_hp(enemy, x, y+20, 90)
draw_enemy_name(enemy, x, y)
if JCONFIG::SHOW_STATES
draw_enemy_state(enemy, x, y +44)
end # END CHECK
end #End flag check
end # END game switche check
end
end #End Refresh
end #End of Window_EnemyHP Class


#====================================#
# Scene_Battle #
# Nuevos metodos que pusimos alias: #
#====================================#
class Scene_Battle

alias jens009_create_info_viewport create_info_viewport
alias jens009_dispose_info_viewport dispose_info_viewport
alias jens009_start_item_selection start_item_selection
alias jens009_start_skill_selection start_skill_selection
alias jens009_end_item_selection end_item_selection
alias jens009_end_skill_selection end_skill_selection
alias jens009_process_victory process_victory

alias jens009_update_info_viewport update_info_viewport

alias jens009_start_party_command_selection start_party_command_selection
alias jens009_execute_action execute_action
alias jens009_turn_end turn_end

# Crear infos
def create_info_viewport
jens009_create_info_viewport
@enemy_window = Window_EnemyHP.new
end
# proporcionar infos
def dispose_info_viewport
jens009_dispose_info_viewport
@enemy_window.dispose
end

#=============================================
# Siempre actualizar ventana
#============================================
def update_info_viewport
if JCONFIG::ALWAYS_UPDATE == true
@enemy_window.refresh
jens009_update_info_viewport
else
jens009_update_info_viewport
end
end

#=============================================
# Actualizar solo si el turno parte y termina
#============================================
def start_party_command_selection
if JCONFIG::ALWAYS_UPDATE == true
jens009_start_party_command_selection
else
@enemy_window.visible = true
@enemy_window.refresh
jens009_start_party_command_selection
end
end

def execute_action
if JCONFIG::ALWAYS_UPDATE == true
jens009_execute_action
else
@enemy_window.visible = false
jens009_execute_action
end
end

def turn_end
if JCONFIG::ALWAYS_UPDATE == true
jens009_turn_end
else
@enemy_window.refresh
jens009_turn_end
end
end
#============================================
# TERMINA VERIFICACIÓN DE MEJORA
#===========================================

#=====================================
# Quitar ventana durante selección (ITEM-PACK)
def start_item_selection
@enemy_window.visible = false
jens009_start_item_selection
end
# Quitar ventana durante selección (Tecs.)
def start_skill_selection
@enemy_window.visible = false
jens009_start_skill_selection
end
# Visible durante selección (ITEM-PACK)
def end_item_selection
jens009_end_item_selection
@enemy_window.visible = true
end
# Visible durante selección (Tecs.)
def end_skill_selection
jens009_end_skill_selection
@enemy_window.visible = true
end
# Actualizar al ganar
def process_victory
@enemy_window.refresh
jens009_process_victory
end

#=====================================#
# Termina edición de Scene_Battle #
#=====================================#

end

# NO ES APTO PARA RPGXP NI PARA XAS

Imagen 1
-Instrucciones: Solo pegar encima del main
-Compatiblidad: Creo que se corrompera con otro sistema de batalla, si no lo hace decidmelo para que lo haga
-Creditos:Ami (Por ponerlo aqui)
Jens009 (Traducción al inglés, modificación y autor del script)
VR0 (Traducción al español)[P.D: No tengo ni idea que m*** a traducido]
 
Mensajes
134
Reacciones
0
Puntos
0
Hola de nuevo creadores, aqui traigo otro script y como no...
Para rpg maker vx :icon_mrorange:

-Nombre Del Script: Imformacion en los menus
-Version Del Script:¿¿??
-Rpg Maker: VX (Como no)

-Introducion:Hoy les traigo un script para que salgan letras abajo
en la pantalla en los menus de: objetos, menu principal, etc...
-Caracteristicas:Lo puede configurar cualquier persona normal... (las configuraciones estan muy notables en el script entre las lineas 38 hasta la 95)...
-Demo: no tiene
-ScreenShot:
15hzh1y.png

(Aclaro no se quedan tiezas tienen un "efecto" se mueven en forma horizontal en la parte de abajo de la pantalla)...
-Script:=begin
Script Features:
Function and Use:

-Adds subtitles to various menu screens, explaining how to manuever in the menu
-Text size, font color, position, display, and speed can all be altered to your
liking. You can also specify a switch to turn the script off
This Script redifines the following:
Game_Temp, Scene_Title, Scene_Menu, Scene_Item, Scene_Skill, Scene_Equip,
Scene_Status, Scene_File, Scene_End, Scene_Shop, Scene_Name

Update History:
09/4/04: Fixed a bug in scene shop.
Changing this script may result in compatability errors, so do so at your
own risk...
=end
module DAI_MINI_HELP

# Switch to display/turn off script (ON = Hidden OFF = Display)
SWITCH = 0

# Color of the subtitle text(Color.new specified)
COLOR_1 = Color.new(255,255,255)

# Outline the text? (True or False)
FRAME = false

# Color of the outline if above is true
COLOR_2 = Color.new(60,30,120)

# Bold the text? (true / false)
BOLD = false

# Italicize the text? (true / false)
ITALIC = false

# Scroll Type
#(0: No scrolling 1: Always scroll 2: Scroll only if the characters do not fit)
TYPE = 1

# Scroll speed (Distance measured in one frame)
SPEED = 1

# Font size (If changed from the default of 16, you must adjust the Y-coordinates
FONT_SIZE = 22

# X coordinates on screen (Type 0 and 2 if it does not scroll)
X = 534

# Y coordinates on screen. This can be set to the bottom of the screen,
# if you choose to do so
Y = 382

# Subtitle Displayed on the Title Screen
TITLE = "En el menu principal..."
# Subtitle Displayed on the Menu Screen
MENU = "Up/Down:Move the cursor C:Confirm B:Cancel"
# Subtitle Displayed on the Item Screen
ITEM = "Up/Down/Left/Right:Move the cursor C:Confirm B:Cancel"
# Subtitle Displayed on the Skills Screen
SKILL = "Up/Down/Left/Right:Move the cursor L/R:Switch Characters C:Confirm B:Cancel"
# Subtitle Displayed on the Equipment Screen
EQUIP = "Up/Down:Move the cursor L/R:Switch Characters C:Confirm B:Cancel"
# Subtitle Displayed on the Status Screen
STATUS = "L/R:Switch Characters B:Return to Menu Screen"
# Subtitle Displayed on the Save Screen
FILE = "Up/Down:Select a save file C:Save in selected file B:Return to menu"
# Subtitle Displayed on the End Screen
SC_END = "Up/Down/Left/Right:Move the cursor C:Confirm B:Cancel"
# Subtitle Displayed on the Shop Screen
SHOP = "Up/Down/Left/Right:Move the cursor C:Confirm B:Cancel"
# Subtitle Displayed on the Player Naming Screen
NAME = "Up/Down/Left/Right:Move the cursor C:Confirm B:Cancel"


def create_mini_help_window(text)
@_dummy_window = Window_Mini_Help_dummy.new(1000)
@_dummy_window.visible = false
@_dummy_window.contents.font.size = DAI_MINI_HELP::FONT_SIZE
width = @_dummy_window.contents.text_size(text).width
@_dummy_window.dispose
@mini_help_window = Window_Mini_Help.new(width)
case DAI_MINI_HELP::TYPE
when 0
@mini_help_window.x = DAI_MINI_HELP::X
when 1
@mini_help_window.x = 534
when 2
if @mini_help_window.width > 544
@mini_help_window.x = 534
else
@mini_help_window.x = DAI_MINI_HELP::X
end
else
@mini_help_window.x = DAI_MINI_HELP::X
end
@mini_help_window.set_text(text)
@mini_help_window.visible = false if $game_switches[DAI_MINI_HELP::SWITCH]
end

def correction_mini_help_window
x = $game_temp.next_or_prev_actor
unless $game_temp.next_or_prev_actor == 0
@mini_help_window.x = x - 1
$game_temp.next_or_prev_actor = 0
end
end

def next_or_prev_actor_temp
if DAI_MINI_HELP::TYPE == 1 or DAI_MINI_HELP::TYPE == 2 && @mini_help_window.width >= 544
$game_temp.next_or_prev_actor = @mini_help_window.x
end
end

def dai_mini_help_update_m
return if DAI_MINI_HELP::TYPE == 0
if DAI_MINI_HELP::TYPE == 1 or DAI_MINI_HELP::TYPE == 2 &&
@mini_help_window.width >= 544
if @mini_help_window.x > 0 - @mini_help_window.width
@mini_help_window.x -= DAI_MINI_HELP::SPEED
else
@mini_help_window.x = 544
end
end
end
end

class Game_Temp

attr_accessor :next_or_prev_actor

alias dai_mini_help_initialize initialize
def initialize
dai_mini_help_initialize
@next_or_prev_actor = 0
end
end

class Window_Mini_Help < Window_Base

def initialize(width)
super(DAI_MINI_HELP::X, DAI_MINI_HELP::Y, width, WLH + 32)
self.opacity = 0
end

def set_text(text, align = 0)
if text != @text or align != @align
self.contents.clear
self.contents.font.size = DAI_MINI_HELP::FONT_SIZE
if DAI_MINI_HELP::FRAME
self.contents.draw_text_mini_help(4, 0, self.width - 40, 18, text, align)
else
self.contents.font.color = DAI_MINI_HELP::COLOR_1
self.contents.font.italic = true if DAI_MINI_HELP::ITALIC
self.contents.font.bold = true if DAI_MINI_HELP::BOLD
self.contents.draw_text(4, 0, self.width - 40, 18, text, align)
end
@text = text
@align = align
end
end
end

class Window_Mini_Help_dummy < Window_Base

def initialize(width)
super(DAI_MINI_HELP::X, DAI_MINI_HELP::Y, width, WLH + 32)
end
end

class Scene_Title < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::TITLE)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Menu < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::MENU)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Item < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::ITEM)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Skill < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::SKILL)
correction_mini_help_window
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_next_actor next_actor
def next_actor
next_or_prev_actor_temp
dai_mini_help_next_actor
end

alias dai_mini_help_prev_actor prev_actor
def prev_actor
next_or_prev_actor_temp
dai_mini_help_prev_actor
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Equip < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::EQUIP)
correction_mini_help_window
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_next_actor next_actor
def next_actor
next_or_prev_actor_temp
dai_mini_help_next_actor
end

alias dai_mini_help_prev_actor prev_actor
def prev_actor
next_or_prev_actor_temp
dai_mini_help_prev_actor
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Status < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::STATUS)
correction_mini_help_window
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_next_actor next_actor
def next_actor
next_or_prev_actor_temp
dai_mini_help_next_actor
end

alias dai_mini_help_prev_actor prev_actor
def prev_actor
next_or_prev_actor_temp
dai_mini_help_prev_actor
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_File < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::FILE)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_End < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::SC_END)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Shop < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::SHOP)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Scene_Name < Scene_Base
include DAI_MINI_HELP

alias dai_mini_help_start start
def start
dai_mini_help_start
create_mini_help_window(DAI_MINI_HELP::NAME)
end

alias dai_mini_help_terminate terminate
def terminate
dai_mini_help_terminate
@mini_help_window.dispose
end

alias dai_mini_help_update update
def update
dai_mini_help_update
dai_mini_help_update_m
end
end

class Bitmap
def draw_text_mini_help(x, y, width, height, text, align=0)
c = DAI_MINI_HELP::COLOR_1
font.color = DAI_MINI_HELP::COLOR_2
font.italic = true if DAI_MINI_HELP::ITALIC
font.bold = true if DAI_MINI_HELP::BOLD
draw_text(x, y-1, width, height, text, align)
draw_text(x, y+1, width, height, text, align)
draw_text(x+1, y, width, height, text, align)
draw_text(x+1, y, width, height, text, align)
font.color = c
draw_text(x, y, width, height, text, align)
end
end
-Instrucciones: Pegar encima del main y yasta
-Compatiblidad:Toda, excepto los menus que se puede corromper(Si no lo hacen, Enviame un MP)
-Creditos:Ami
RGSS2 DAIpage... (Pagina Japonesa)
Traducido al ingles: SuperMega...
 
OP

Miwel~

EMD Legend
Mensajes
2.453
Reacciones
70
Puntos
842
amigo esos dos scipts son de falcao y no puedes decir que te den credito a ti amenso que u ses falcao que no creo
pon lo a el ya que lo que estas haciendo es robo y creo que falcao se mato haciendo esto scipts para que tu le robes el credito capullo
Shaoran64 te agradezco tus constantes aportes, pero si vas a postear un script, por lo menos investiga quien es el creador, o si no deja un “?”...
Y hombre de oro, se que él hizo mal, pero tampoco es para insultar…

aproto para no hacer spam
Edita tu post y mete el script en un spoiler y luego en un code, es para mantener el orden :D
Lo siento, al segundo se lo puse (Mira en los creditos que sale) y el otro lo encontre en una paguina de autor desconocido y no vi lo de falcao, ahora mismo lo pongo.
Gracias por decirmelo y perdon.:hurted:
Pues eso lo arregla todo, tranquilo, cualquiera puede cometer un error xD

Ya mismo agrego sus scripts, traten de no hacer mucho multipost, háganlo solo si es muy necesario o si van a agregar otro script seguido de otro ya posteado por ustedes.

Gracias por aportar.
Saludos!!!
 
Última edición:
Mensajes
134
Reacciones
0
Puntos
0
Hola denuevo, traigo otro script muy interesante ^^

-Nombre Del Script: Sombra en personajes y eventos
-Version Del Script:¿¿??
-Rpg Maker: VX

-Introducion:Simplemente lo que dice el nombre, aparece una pequeña sombra debajo del personaje
principal (Y en los eventos si kieres)
-Caracteristicas:Si quieren que la sombra salga debajo de algun evento solo coloquen esto en el nombre del evento: (sin comillas) "S%"
-Demo:no ahy
-ScreenShot:
2m660s7.png

-Script:#======================================================================
# ■ VX Character Shadows by Minto
#-------------------------------------------------------------------------- ----
# English Translation By: Rory [http://www.rpgcrisis.net]
#-------------------------------------------------------------------------- ----
# This script makes a shadow under characters and chosen events.
#==========================================================================
# Use the "S%" tag in an Event name to give it a shadow.
#==========================================================================
# Sprite_Shadow_Module
#-------------------------------------------------------------------------- ----
module Sprite_Shadow_Module
def dispose
unless @character_shadow.nil? then
@character_shadow.bitmap.dispose
@character_shadow.dispose
end
super
end
#--------------------------------------------------------------------------
# Settings
#--------------------------------------------------------------------------
def character_shadow_set
@character_shadow = Sprite.new(self.viewport)
# Shadow Image Path
@character_shadow.bitmap = Cache.picture("Shadow")
# Shadow Opacity/Transparency
@character_shadow.opacity = (self.character.opacity / 2)
# Shadow Size/Position
@shadow_size = @character_shadow.bitmap.width
@character_shadow.zoom_x = ((@cw * 100) / @shadow_size) / 100.0
@character_shadow.zoom_y = @character_shadow.zoom_x
ox_rate = ((32 * 100) / @cw) / 100.0
oy_rate = ((48 * 100) / @ch) / 100.0
@character_shadow.ox = self.ox * ox_rate
@character_shadow.oy = ((self.oy * oy_rate) / 2) - 4
@last_character_name = @character_name.dup
# ‰e‚ð�X�V
update_character_shadow
end
#--------------------------------------------------------------------------
#--------------------------------------------------------------------------
def update_character_shadow
if @character_shadow == nil then
return
end
if @character.jumping? then
@character_shadow.visible = false
return
end
if @last_character_name_shadow != @character_name
@last_character_name_shadow = @character_name
@shadow_size = @character_shadow.bitmap.width
@character_shadow.zoom_x = ((@cw * 100) / @shadow_size) / 100.0
@character_shadow.zoom_y = @character_shadow.zoom_x
@zoom_ox = @character_shadow.zoom_x
@zoom_oy = @character_shadow.zoom_y
ox_rate = ((32 * 100) / @cw) / 100.0
oy_rate = ((48 * 100) / @ch) / 100.0
@character_shadow.ox = self.ox * ox_rate
@character_shadow.oy = ((self.oy * oy_rate) / 2) - 4
end
@character_shadow.x = self.x
@character_shadow.y = self.y
@character_shadow.zoom_x = @zoom_ox * self.zoom_x
@character_shadow.zoom_y = @zoom_oy * self.zoom_y
@character_shadow.visible = (self.visible and @character_name != "")
@character_shadow.opacity = (self.character.opacity / 2)
end
end
#==========================================================================
# Game_Event
#-------------------------------------------------------------------------- ----
class Game_Event < Game_Character
attr_reader :event
end
#==========================================================================
# Sprite_Character
#-------------------------------------------------------------------------- ----
class Sprite_Character < Sprite_Base
include(Sprite_Shadow_Module)
alias :MINTO_Character_Shadow_initialize :initialize
def initialize(viewport, character = nil)
MINTO_Character_Shadow_initialize(viewport, character)
case @character
when Game_Player then
character_shadow_set
when Game_Event then
# Event Shadow Tag
if @character.event.name.include?("S%") == true then
character_shadow_set
end
end
end
#--------------------------------------------------------------------------
#--------------------------------------------------------------------------
alias :update_MINTO_Character_Shadow :update
def update
update_MINTO_Character_Shadow
update_character_shadow
end
end
-Instrucciones:Colocar el scrip arriba del main y añadir esta imagen en GraphicsPictures: (con el nombre de "shadow" sin comillas)
Aqui la foto:
mwyxpe.png

-Compatiblidad:Toda, pero no creo que salga usando el scrip de seguir personajes, en los k te siguen.
-Creditos:Ami
Traducido por: Rory
Script by Minto.
(Segun el script).
 
Mensajes
271
Reacciones
0
Puntos
0
Ubicación
Los Mares
Aca dejo un script

Nombre: Dinamic bestiary
Version: 1.5
Maker: VX

Introduccion:Un bestiario que muestra a los monstruos su hp, mp, atc,def y todo la exp losteosros el dinero y todo, el %
muy bueno XD
Caracteristicas: No tiene opcion en el menu hay una se selecciona una tecla para abrirlo y se puede activar y dessactivar por interupor
Demo:Como no escribio bien el script aca ta la demo apreten Z cuanto esten seleccionando un montruo y calculara su fuerza XD
Screen:
Es de mi proyecto XD y ni la descripcion cambie (se cambia en el script
4746524dibujo.png


Script:
#====================================================================#
# #*****************# Dinamic bestiary V 1 Falcao script #
# #*** By Falcao ***# Permite mostrar un albun de cada #
# #*****************# mostruo que derrotas V 1.5 #
# RMVX #
# makerpalace.onlinegoo.com Date: 10/29/2009 #
#====================================================================#

#---------------------------------------------------------------------
# * Instructions
#
# Solo copiar y pegar el script encima de main luego llamarlo con
# tecla 'A' puesta por defecto. Editar el modulo de abajo a su gusto
#
# Place the script above main, then call it with key 'A' by deafault
# Edit the module below as you prefer.
#
# License: Puede ser usado en juegos comerciales o no comerciales
# This script can be used in comercial or non-comercial games
#---------------------------------------------------------------------

module Falcao

# Descripcion Para cada enemigo / Enemy desciption
# A = Id del enemigo / Enemy ID
# B = Description
Description = {

1=> 'Monstruo horribe y pegajoso',
2=> 'Se mata facilmente con un ataque normal, es devil al elemento agua',
3=> 'Habita en el bosque shulton, devil al elemento fuego',
4=> 'Ponsoñosa araña que habita dentro de cuevas, si pica tomar antidoto',
5=> 'Rata escurridiza, suele dejar buena experiencia',
21=> 'Habita alrededor del castillo tridan, devil a luz',

}

# Tecla que llama el script / Key to call script
# Puesdes elejir entre las siguientes / choose between the followings keys
# Z, A, S, D, Q, W, ALT
TeclaBestiary = 'M'

# Interruptor que desabilita llamar el script con la tecla especificada
# Disable script call by input key
KeyDisable_Switch = 10

# Tocar musica / play music (true o false)
PlayMusic = true

# Declaracion de arrays / Arrays declaration
$derrotados = []
$enemy_counter = []
EnemyLevel = []

# Vocabulario / Vocabulary
FalVocab = ['-No hay datos-', # No datos / No data
'Tesoro', # Tesoro 1 / Treasure 1
'Tesoro2', # tesoro 2 / Treasure 2
'Ninguno', # Sin tesoro / No treasure
'????', # Enemigo no derrotado / Enemy no defeated
'Bestiary', # Titulo / Title
'Derrotado', # Derrotado / defeated
'Clase', # Clase de enemigo / enemy class
'Poder', # Energia maxima / Power
'Veces', # Veces derrotado / times defeated
'Progreso'] # Progreso / Progress

# Clases de enemigos / enemy classes
# Calculos basados en parametros / Values based on parameters(Def, atk, etc.)
EnemyLevel[1] = "Devil"
EnemyLevel[2] = "Normal"
EnemyLevel[3] = "Fuerte"
EnemyLevel[4] = "Poderoso"
EnemyLevel[5] = "Bestial"

#-----------------------------------------------------------------------------
# Cuando un enemigo es derrotado es automaticamente agregado al invetario pero
# puedes administrarlos manualmente con los siguientes comandos

# When you defeat an enemy automaticly is added, but you can add or remove
# enemies manualy with the following comands

# Falcao.add_enemy(X) Agrega enemigo X, en ves de X poner ID de enemigo
# Add enemy X, instead X put enemy ID
#
# Falcao.remove_enemy(X) remueve enemigo X, En ves de X poner ID de enemigo
# Remove Enemy X, Instead X put enemy ID
#
# Falcao.fill_bestiary Agrega todos los monstruos al bestiario
# Fill bestiary
#
# Para llamar el script manualmente llamarlo directamente asi
# To call the script manually call it
#
# $scene = Scene_Monsters.new
#
# * Creditos:
#
# Script creado por Falcao, puede ser publicado en cualquier foro siempre
# y cuando los creditos sean mencionados
#-----------------------------------------------------------------------------

def self.fill_bestiary
for enemy in $data_enemies
next if enemy == nil
unless $derrotados.include?(enemy.id)
$derrotados.push(enemy.id)
$enemy_counter.push(enemy.id)
end
end
end

def self.add_enemy(id)
unless $derrotados.include?(id)
$derrotados.push(id)
$enemy_counter.push(id)
end
end

def self.remove_enemy(id)
if $derrotados.include?(id)
$derrotados.delete(id)
$enemy_counter.push(id)
end
end
end

#--------------------------------------------------------------------------
# * Crear informacion general y parametros enemigos
#--------------------------------------------------------------------------
class Moster_Info < Window_Base
include Falcao
def initialize(x, y)
super(x, y, 385, 380)
self.opacity = 0
end

def refresh(enemy_id)
self.contents.clear
@enemigo = $data_enemies[enemy_id]
if $derrotados.include?(@enemigo.id)
contents.font.size = 20
draw_enemy_hp(0, 205)
draw_enemy_mp(0, 230)
enemy_parametros
draw_drop_item1
draw_drop_item2
else
contents.font.size = 30
contents.draw_text(100, 100, 500, 92, FalVocab[0])
end
end

def enemy_parametros
y1 = 0; y2 = 0; y3 = 0; y4 = 0
terms = $data_system.terms
param1={1=>@enemigo.maxhp,2=>@enemigo.maxmp,3=>@enemigo.spi,4=>@enemigo.exp}
name1 = {1=> terms.hp, 2=> terms.mp, 3=> terms.spi, 4=> "Exp"}
param2={1=>@enemigo.atk,2=>@enemigo.def,3=>@enemigo.agi,4=> @enemigo.gold}
name2 = {1=> terms.atk, 2=> terms.def, 3=> terms.agi, 4=> terms.gold}
param1.sort.each do |keys, values|
y1 += 25
contents.draw_text(100, y1 + 134, 92, 92, values)
end
param2.sort.each do |keys, values|
y2 += 25
contents.draw_text(300, y2 + 134, 92, 92, values)
end
name1.sort.each do |keys, values|
y3 += 25
contents.draw_text(0, y3 + 134, 102, 92, values)
end
name2.sort.each do |keys, values|
y4 += 25
contents.draw_text(200, y4 + 134, 102, 92, values)
end
end

def draw_drop_item1
item = @enemigo.drop_item1
contents.draw_text(35, 260, 92, 92, FalVocab[1])
if item.kind == 0
contents.draw_text(0, 284, 92, 92, FalVocab[3])
return
end
case item.kind
when 1; drop_item = $data_items[item.item_id]
when 2; drop_item = $data_weapons[item.item_id]
when 3; drop_item = $data_armors[item.armor_id]
end
draw_icon(drop_item.icon_index,94, 318)
contents.draw_text(0, 284, 92, 92, drop_item.name)
end

def draw_drop_item2
item = @enemigo.drop_item2
contents.draw_text(226, 260, 92, 92, FalVocab[2])
if item.kind == 0
contents.draw_text(200, 284, 92, 92, FalVocab[3])
return
end
case item.kind
when 1; drop_item = $data_items[item.item_id]
when 2; drop_item = $data_weapons[item.item_id]
when 3; drop_item = $data_armors[item.armor_id]
end
draw_icon(drop_item.icon_index,300, 318)
contents.draw_text(200, 284, 92, 92, drop_item.name)
end

def draw_enemy_hp(x, y)
self.contents.fill_rect(x, y, 102, 10, Color.new(0,0,0))
self.contents.fill_rect(x+1, y+1, 100*@enemigo.maxhp/@enemigo.maxhp, 4,
Color.new(205,255,205))
self.contents.fill_rect(x+1, y+5, 100*@enemigo.maxhp/@enemigo.maxhp, 4,
Color.new(10,220,45))
end

def draw_enemy_mp(x, y)
if @enemigo.maxmp != 0
self.contents.fill_rect(x, y, 102, 10, Color.new(0,0,0))
self.contents.fill_rect(x+1, y+1, 100*@enemigo.maxmp/@enemigo.maxmp, 4,
Color.new(180,225,245))
self.contents.fill_rect(x+1, y+5, 100*@enemigo.maxmp/@enemigo.maxmp, 4,
Color.new(20,160,225))
else
self.contents.fill_rect(x, y, 102, 10, Color.new(0,0,0))
end
end
end

#--------------------------------------------------------------------------
# * Objeto creador de las descripciones y el progreso en porcentaje
#--------------------------------------------------------------------------
class Moster_Description < Window_Base
include Falcao
def initialize(x, y, ancho = 544, alto = 56)
super(x, y, ancho, alto)
@tiempo = 0
@scroll = 0
end

def set_texto(texto)
self.contents.clear
self.contents.draw_text(0, -4, 92, 32, texto)
for i in 0...$derrotados.size
number = i + 1
end
texto2 = "#{FalVocab[10]} #{number * 100/$all_mosnters}%" rescue texto2 =
"#{FalVocab[10]} 0 %"
self.contents.draw_text(0, 24, self.width, 32, texto2)
end

def refresh(enemy_id)
self.contents.clear
@enemigo = $data_enemies[enemy_id]
if $derrotados.include?(@enemigo.id)
draw_descriptions
else
self.contents.draw_text(-130, -4, 600, 32 , FalVocab[0],1)
end
end

def draw_descriptions
if Description.has_key?(@enemigo.id)
Description.each do |id, value|
if id == @enemigo.id
cx = contents.text_size(value).width
scroll_text(value)
self.contents.draw_text(@scroll, -4, cx + 10, 32 , value)
end
end
else
text = [" ",
" ",
"Description no available ",
"Falcao script Bestiary V 1.5 "
]
scroll_text(text,false)
cx = contents.text_size(text).width
self.contents.draw_text(@scroll, -4, cx + 10, 32, text )
end
end

def scroll_text(texto, result_ok=true)
cx = contents.text_size(texto).width
if cx > 350
@tiempo += 1
if @tiempo > 60
@scroll -= 1 if @result == nil
if @scroll == -cx
@result = true
end
end
end
if @result
result_ok ? @scroll += 10 : @scroll = 0
if @scroll >= 0
@scroll = 0; @tiempo = 0
@result = nil
end
end
if Input.press?(Input::UP) or Input.press?(Input::DOWN)
@scroll = 0; @tiempo = 0; @result = nil
end
end
end

#--------------------------------------------------------------------------
# * Objeto que dibuja el indice de los enemigos con su nombre
#--------------------------------------------------------------------------
class Monster_indice < Window_Selectable
def initialize(y)
super(0, y, 160, 334)
@column_max = 1
refresh
self.index = 0
end

def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 1...$data_enemies.size
@data.push($data_enemies)
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 32, row_max * 26)
for i in 0...@item_max
draw_item(i)
$all_mosnters = i + 1
end
end
end

def draw_item(index)
enemy = @data[index]
self.contents.font.color = normal_color
x, y = 4, index * 24
rect = Rect.new(x, y, self.width / @column_max - 32, 32)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
opacity = self.contents.font.color == normal_color ? 255 : 128
if $derrotados.include?(index+1)
contents.draw_text(x, y, 212, 24, enemy.name)
else
contents.draw_text(x, y, 212, 24, Falcao::FalVocab[4])
end
end
end

#--------------------------------------------------------------------------
# * Objeto que dibuja el Power y el conteo de mostruos derrotados
#--------------------------------------------------------------------------
class Adicional_Data < Window_Base
include Falcao
attr_accessor :number
attr_accessor :counter
def initialize
super(0, 0, 160, 334)
@number = 0.0
@counter = 0.0
@color = [Color.new(180,225,245), Color.new(20,160,225)]
end

def refresh(enemy_id)
self.contents.clear
@enemigo = $data_enemies[enemy_id]
if $derrotados.include?(@enemigo.id)
draw_enemy_counter
draw_enemy_power(0,186)
contents.font.color = Color.new(255, 140, 0)
contents.draw_text(30, 0, 212, 24, @enemigo.name)
else
contents.font.color = normal_color
self.contents.draw_text(2, 50, 600, 32 , FalVocab[0])
end
end

def draw_enemy_counter
i = 0
for c in $enemy_counter
if c == @enemigo.id
i += 1
number = i
end
end
contents.font.color = normal_color
contents.draw_text(0, 40, 212, 24, FalVocab[6])
contents.draw_text(80, 70, 212, 24, number.to_s)
contents.draw_text(0, 70, 212, 24, FalVocab[9])
end

def get_power(enemy)
add = 0
number1 = enemy.spi + enemy.agi
number2 = enemy.atk + enemy.def
case enemy.maxhp
when 1...400
add = 60
when 400...1000
add = 100
when 1000...10000
add = 140
when 10000...999999
add = 200
end
@number = number1 + number2 + add
@counter = @number
@number = 1
end

def draw_enemy_power(x,y)
case @counter
when 1...150
value = 150; add = 1; level = EnemyLevel[1]
@color = [Color.new(180,225,245), Color.new(20,160,225)]
when 150...350
value = 350; add = 3; level = EnemyLevel[2]
@color = [Color.new(255, 120, 0), Color.new(255, 80, 50)]
when 350...600
value = 600; add = 6; level = EnemyLevel[3]
@color = [Color.new(205,255,205), Color.new(10,220,45)]
when 600...1000
value = 1000; add = 10; level = EnemyLevel[4]
@color = [Color.new(255,255,100), Color.new(255,200,0) ]
when 1000...4196
value = 3996; add = 20; level = EnemyLevel[5]
@color = [Color.new(255,255,100), Color.new(255,200,0) ]
end
@number = @counter if @number >= @counter
@number += add if @number < @counter
contents.font.color = Color.new(255, 140, 0)
contents.draw_text(30, 120, 212, 24, FalVocab[7])
contents.font.color = normal_color
contents.draw_text(0, 150, 212, 24, level)
self.contents.fill_rect(x, y, 128, 14, Color.new(0,0,0))
self.contents.fill_rect(x+1, y+1, 126*@number/value, 6, @color[0])
self.contents.fill_rect(x+1, y+7, 126*@number/value, 6, @color[1])
contents.draw_text(0, 210, 212, 24, FalVocab[8])
contents.draw_text(80, 210, 212, 24, @number.to_s)
end
end

#--------------------------------------------------------------------------
# * Clase que agrega los enemigos al bestiario automaticamente
#--------------------------------------------------------------------------
class Game_Enemy < Game_Battler
alias falcao_collapse perform_collapse
def perform_collapse
falcao_collapse
unless $derrotados.include?(enemy.id)
$derrotados.push(enemy.id)
end
if $game_temp.in_battle and dead?
$enemy_counter.push(enemy.id)
end
end
end

#--------------------------------------------------------------------------
# * Clase que define la fuente del bestiario
#--------------------------------------------------------------------------
class Font
alias falcaoBest_font initialize
def initialize
falcaoBest_font
if $scene.is_a?(Scene_Monsters)
self.name = "Kristen ITC"
self.size = 20
end
end
end

#--------------------------------------------------------------------------
# * Aqui se crea la scene que organiza todo en conjunto
#--------------------------------------------------------------------------
class Scene_Monsters < Scene_Base
def start
super
@spriteset = Spriteset_Bestiary.new
@mostruos_index = Monster_indice.new(84)
@info_mosters = Moster_Info.new(160,56)
@help = Moster_Description.new(160,0, 386)
@title = Moster_Description.new(0,0, 160, 84)
@title.set_texto(Falcao::FalVocab[5])
@info_mosters.refresh(@mostruos_index.index + 1)
@help.refresh(@mostruos_index.index + 1)
@extra_data = Adicional_Data.new
@extra_data.y = 84
@extra_data.visible = false
@moster_graphic = Sprite.new
@moster_graphic.bitmap = Cache.battler("",0)
@moster_graphic.z = 99
@moster_graphic.y = 65
@time = 0
if Falcao::playMusic
$game_temp.map_bgm = RPG::BGM.last
$game_temp.map_bgs = RPG::BGS.last
$game_system.battle_bgm.play
end
create_enemy_graphics
end
def terminate
super
@mostruos_index.dispose
@info_mosters.dispose
@help.dispose
@spriteset.dispose
@title.dispose
@moster_graphic.dispose
end
def update
super
@spriteset.update
@mostruos_index.update
@help.refresh(@mostruos_index.index + 1)
animate_graphic
if Input.press?(Input::DOWN) or Input.press?(Input::UP)
@info_mosters.refresh(@mostruos_index.index + 1)
create_enemy_graphics
if @extra_data.visible
@extra_data.get_power($data_enemies[@mostruos_index.index + 1])
end
end
if Input.trigger?(Input::C) and @extra_data.visible == false
Sound.play_decision
@extra_data.get_power($data_enemies[@mostruos_index.index + 1])
@extra_data.refresh(@mostruos_index.index + 1)
@extra_data.visible = true
@mostruos_index.y = 600
end
if @extra_data.visible
if @extra_data.number < @extra_data.counter
@extra_data.refresh(@mostruos_index.index + 1)
end
end
if Input.trigger?(Input::B)
if @extra_data.visible
Sound.play_cancel
@extra_data.visible = false
@mostruos_index.y = 84
else
Sound.play_cancel
if Falcao::playMusic
$game_temp.map_bgm.play
$game_temp.map_bgs.play
end
$scene = Scene_Map.new
end
end
end

def create_enemy_graphics
enemy = $data_enemies[@mostruos_index.index + 1]
if $derrotados.include?(enemy.id)
@moster_graphic.bitmap = Cache.battler(enemy.battler_name,
enemy.battler_hue)
cw = @moster_graphic.width
@moster_graphic.x = 360 - cw / 2
@moster_graphic.visible = true
else
@moster_graphic.visible = false
end
end

def animate_graphic
if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
@moster_graphic.zoom_x = 1
@moster_graphic.zoom_y = 1
@time = 0
end
h = 240; @time += 1
if @time < 40
if @moster_graphic.height <= h
@moster_graphic.zoom_x += 0.002
@moster_graphic.zoom_y += 0.002
elsif @moster_graphic.height > h
@moster_graphic.zoom_x += 0.001
@moster_graphic.zoom_y += 0.001
end
elsif @time > 40
if @moster_graphic.height <= h
@moster_graphic.zoom_x -= 0.002
@moster_graphic.zoom_y -= 0.002
elsif @moster_graphic.height > h
@moster_graphic.zoom_x -= 0.001
@moster_graphic.zoom_y -= 0.001
end
if @time == 80
@moster_graphic.zoom_x = 1
@moster_graphic.zoom_y = 1
@time = 0
end
end
end
end

#--------------------------------------------------------------------------
# * Objeto que define la tecla para acceder al bestiario
#--------------------------------------------------------------------------
class Scene_Map
alias falcao_bestiary_update update
def update
falcao_bestiary_update
update_finput
end
def update_finput
return if $game_switches[Falcao::KeyDisable_Switch]
case Falcao::TeclaBestiary
when 'Z'; key = Input::C #C
when 'A'; key = Input::X #X
when 'S'; key = Input::Y #Y
when 'M'; key = Input::Z #Z
when 'Q'; key = Input::L #L
when 'W'; key = Input::R #R
when 'ALT'; key = Input::ALT #alt
end
if Input.trigger?(key)
$scene = Scene_Monsters.new
end
end
end

#--------------------------------------------------------------------------
# * Guardar variables de enemigos derrotados
#--------------------------------------------------------------------------
class Scene_File < Scene_Base
alias falcaosave_data write_save_data
def write_save_data(file)
falcaosave_data(file)
Marshal.dump($derrotados, file)
Marshal.dump($enemy_counter, file)
end
end

#--------------------------------------------------------------------------
# * Cargar variables de enemigos derrotados
#--------------------------------------------------------------------------
class Scene_File < Scene_Base
alias falcaoload_data read_save_data
def read_save_data(file)
falcaoload_data(file)
$derrotados = Marshal.load(file)
$enemy_counter = Marshal.load(file)
end
end

#--------------------------------------------------------------------------
# * Objeto que crea el fondo animado usando el mapa
#--------------------------------------------------------------------------
class Spriteset_Bestiary
def initialize
create_battleback
update
end
def create_battleback
@viewport1 = Viewport.new(0, 0, 544, 416)
source = $game_temp.background_bitmap
bitmap = Bitmap.new(640, 480)
bitmap.stretch_blt(bitmap.rect, source, source.rect)
bitmap.radial_blur(90, 12)
@battleback_sprite = Sprite.new(@viewport1)
@battleback_sprite.bitmap = bitmap
@battleback_sprite.ox = 320
@battleback_sprite.oy = 240
@battleback_sprite.x = 272
@battleback_sprite.y = 176
@battleback_sprite.wave_amp = 8
@battleback_sprite.wave_length = 240
@battleback_sprite.wave_speed = 120
end
def dispose
@battleback_sprite.bitmap.dispose
@battleback_sprite.dispose
@viewport1.dispose
end
def update
@battleback_sprite.update
@viewport1.update
end
end


Instruciones:
Solo pega arriba de main y listo
Compatibidad: con todo al menos eso creo lo he usado con varios y funciona igual
Creditos: Falcao
 
Última edición:
Mensajes
1.415
Reacciones
0
Puntos
0
Ubicación
zaragoza
HUD estilo Kingdom Hearts

introduccion:
un lindo hud estilo kingdom hearts

screenshots:
kingdom0.png



#--------------------------------------------------------------------
# A list of colors that you may use to configure the font and gauge
# colors in the config section. Simply replace the last part of each
# statement, i.e., the part in the brackets <> below:
#
# Colors::
#--------------------------------------------------------------------
# Continue below for the configuration section
#--------------------------------------------------------------------
module Colors

AliceBlue = Color.new(240,248,255)
AntiquaWhite = Color.new(250,235,215)
Aqua = Color.new(0,255,255)
Aquamarine = Color.new(127,255,212)
Azure = Color.new(240,255,255)
Beige = Color.new(245,245,220)
Bisque = Color.new(255,228,196)
Black = Color.new(0,0,0)
BlanchedAlmond = Color.new(255,255,205)
Blue = Color.new(0,0,255)
BlueViolet = Color.new(138,43,226)
Brown = Color.new(165,42,42)
BurlyWood = Color.new(222,184,135)
CadetBlue = Color.new(95,158,160)
Chartreuse = Color.new(127,255,0)
Chocolate = Color.new(210,105,30)
Coral = Color.new(255,127,80)
CornFlowerBlue = Color.new(100,149,237)
Cornsilk = Color.new(255,248,220)
Crimson = Color.new(220,20,60)
Cyan = Color.new(0,255,255)
DarkBlue = Color.new(0,0,139)
DarkCyan = Color.new(0,139,139)
DarkGoldenrod = Color.new(184,134,11)
DarkGray = Color.new(169,169,169)
DarkGreen = Color.new(0,100,0)
DarkKhaki= Color.new(189,183,107)
DarkMagenta = Color.new(139,0,139)
DarkOliveGreen = Color.new(85,107,47)
DarkOrange = Color.new(255,140,0)
DarkRed = Color.new(139,0,0)
DarkSalmon = Color.new(233,150,122)
DarkSeaGreen = Color.new(143,188,143)
DarkSlateBlue = Color.new(72,61,139)
DarkSlateGray = Color.new(40,79,79)
DarkTurquoise = Color.new(0,206,209)
DarkViolet = Color.new(148,0,211)
DeepPink = Color.new(255,20,147)
DeepSkyBlue = Color.new(0,191,255)
DimGray = Color.new(105,105,105)
DodgerBlue = Color.new(30,144,255)
FireBrick = Color.new(178,34,34)
FloralWhite = Color.new(255,255,240)
ForestGreen = Color.new(34,139,34)
Fuschia = Color.new(255,0,255)
Gainsboro = Color.new(220,220,220)
GhostWhite = Color.new(248,248,255)
Gold = Color.new(255,215,0)
Goldenrod = Color.new(218,165,32)
Gray = Color.new(128,128,128)
Green = Color.new(0,128,0)
GreenYellow = Color.new(173,255,47)
Honeydew = Color.new(240,255,240)
HotPink = Color.new(255,105,180)
IndianRed = Color.new(205,92,92)
Indigo = Color.new(75,0,130)
Ivory = Color.new(255,240,240)
Khaki = Color.new(240,230,140)
Lavender = Color.new(230,230,250)
LavenderBlush = Color.new(255,240,245)
LawnGreen = Color.new(124,252,0)
LemonChiffon = Color.new(255,250,205)
LightBlue = Color.new(173,216,230)
LightCoral = Color.new(240,128,128)
LightCyan = Color.new(224,255,255)
LightGoldenrodYellow = Color.new(250,250,210)
LightGreen = Color.new(144,238,144)
LightGray = Color.new(211,211,211)
LightPink = Color.new(255,182,193)
LightSalmon = Color.new(255,160,122)
LightSeaGreen = Color.new(32,178,170)
LightSkyBlue = Color.new(135,206,250)
LightSlateGray = Color.new(119,136,153)
LightSteelBlue = Color.new(176,196,222)
LightYellow = Color.new(255,255,224)
Lime = Color.new(0,255,0)
LimeGreen = Color.new(50,205,50)
Linen = Color.new(250,240,230)
Magenta = Color.new(255,0,255)
Maroon = Color.new(128,0,0)
MediumAquamarine = Color.new(102,205,170)
MediumBlue = Color.new(0,0,205)
MediumOrchid = Color.new(186,85,211)
MediumPurple = Color.new(147,112,219)
MediumSeaGreen = Color.new(60,179,113)
MediumSlateBlue = Color.new(123,104,238)
MediumSpringGreen = Color.new(0,250,154)
MediumTurquoise = Color.new(72,209,204)
MediumVioletRed = Color.new(199,21,112)
MidnightBlue = Color.new(25,25,112)
MintCream = Color.new(245,255,250)
MistyRose = Color.new(255,228,225)
Moccasin = Color.new(255,228,181)
NavajoWhite = Color.new(255,222,173)
Navy = Color.new(0,0,128)
OldLace = Color.new(253,245,230)
Olive = Color.new(128,128,0)
OliveDrab = Color.new(107,142,45)
Orange = Color.new(255,165,0)
OrangeRed = Color.new(255,69,0)
Orchid = Color.new(218,112,214)
PaleGoldenRod = Color.new(238,232,170)
PaleGreen = Color.new(152,251,152)
PaleTurquoise = Color.new(175,238,238)
PaleVioletRed = Color.new(219,112,147)
PapayaWhip = Color.new(255,239,213)
PeachPuff = Color.new(255,218,155)
Peru = Color.new(205,133,63)
Pink = Color.new(255,192,203)
Plum = Color.new(221,160,221)
PowderBlue = Color.new(176,224,230)
Purple = Color.new(128,0,128)
Red = Color.new(255,0,0)
RosyBrown = Color.new(188,143,143)
RoyalBlue = Color.new(65,105,225)
SaddleBrown = Color.new(139,69,19)
Salmon = Color.new(250,128,114)
SandyBrown = Color.new(244,164,96)
SeaGreen = Color.new(46,139,87)
Seashell = Color.new(255,245,238)
Sienna = Color.new(160,82,45)
Silver = Color.new(192,192,192)
SkyBlue = Color.new(135,206,235)
SlateBlue = Color.new(106,90,205)
SlateGray = Color.new(112,128,144)
Snow = Color.new(255,250,250)
SpringGreen = Color.new(0,255,127)
SteelBlue = Color.new(70,130,180)
Tan = Color.new(210,180,140)
Teal = Color.new(0,128,128)
Thistle = Color.new(216,191,216)
Tomato = Color.new(253,99,71)
Turquoise = Color.new(64,244,208)
Violet = Color.new(238,130,238)
Wheat = Color.new(245,222,179)
White = Color.new(255,255,255)
WhiteSmoke = Color.new(245,245,245)
Yellow = Color.new(255,255,0)
YellowGreen = Color.new(154,205,50)

GaugeGreen = Color.new(202,241,126)
GaugeBlue = Color.new(137,222,254)

end

#--------------------------------------------------------------------
# do not touch this
class Point
attr_reader
attr_reader :y
def initialize(x, y)
@x, @y = x, y
end
def to_a
[@x, @y]
end
end
# or this
class ScrollDirection
Left = 0
Right = 1
end
#--------------------------------------------------------------------

#--------------------------------------------------------------------
# * Configuration Section
#--------------------------------------------------------------------
# * Aside from these settings, you can also force the HUD to hide
# by using the "script..." event command with this text:
#
# $scene.hide_hud
#--------------------------------------------------------------------
module HudConfig

# The actor id of the main character in your game.
# This will be the character in the main hud window.
PLAYER_ID = 1

# Name of the player (main character) hud graphic
PLAYER_HUD_IMAGE_NAME = 'player_hud'
# Use the gren and blue mp/hp gauges?
# You may use your own graphics, but they must
# adhere to the same format as the originals, i.e.,
#
# hud_bar_hp_000.png
#
# Where the '000' part is a multiple of five, from 0-100.
PLAYER_USE_CUSTOM_GAUGE = true

# The physical location of the hud sprite.
# All of the other graphic locations are relative to this one.
PLAYER_HUD_LOC = Point.new(0, 0)
# The relative location of the hud image to the hud sprite.
PLAYER_HUD_IMAGE_LOCATION = Point.new(0, 0)

# The starting location of each peice of the HP gauge.
PLAYER_HP_GAUGE_LOCATION = Point.new(0, 0)
# the starting location of each peice of the MP gauge.
PLAYER_MP_GAUGE_LOCATION = Point.new(0, 0)

# The location of the face graphic.
FACE_LOCATION = Point.new(35, 0)

# Show all party members? (THESE FEATURES ARE NOT YET IMPLEMENTED)
USE_MEMBER_WINDOW = true
MEMBER_HUD_IMAGE_NAME = 'member_hud'
MEMBER_USE_CUSTOM_GAUGE = false

# Allow the player to hide the HUD by pressing a button?
ALLOW_HUD_HIDE = true
# The button which will trigger a hud move.
HIDE_HUD_INPUT = Input::X
# The speed at which to move the hud.
HUD_HIDE_SPEED = 7
# replace "Left" with "Right" below to change the scroll direction
HUD_SCROLL_DIRECTION = ScrollDirection::Left

# Global values which are convenient for setting
# multiple values to the same thing.
GLOBAL_FONT_NAME = ['Magneto', 'Consolas', 'Verdana', 'Ariel', 'Courier New']
GLOBAL_PLAYER_FONT_SIZE = 22
GLOBAL_MEMBER_FONT_SIZE = 22

# The rest of the settings deal with setting the
# location and style of the text displayed in the HDU
PLAYER_NAME_FONT = GLOBAL_FONT_NAME
PLAYER_NAME_COLOR = Colors::Silver
PLAYER_NAME_USE_ITALICS = false
PLAYER_NAME_USE_BOLD = false
PLAYER_NAME_USE_SHADOW = true
PLAYER_NAME_FONT_SIZE = 20
PLAYER_NAME_LOCATION = Point.new(125,0)
PLAYER_NAME_WIDTH = 90
PLAYER_NAME_HEIGHT = 22

MEMBER_NAME_FONT = GLOBAL_FONT_NAME
MEMBER_NAME_COLOR = Colors::White
MEMBER_NAME_FONT_SIZE = GLOBAL_MEMBER_FONT_SIZE
MEMBER_NAME_LOCATION = Point.new(0,0)

USE_HP_TEXT_DISPLAY = true
PLAYER_HP_FONT = ['Consolas', 'Verdana', 'Ariel', 'Courier New']
PLAYER_FULL_HP_COLOR = Colors::GaugeGreen
PLAYER_HP_FONT_USE_ITALICS = false
PLAYER_HP_FONT_USE_BOLD = true
PLAYER_HP_FONT_USE_SHADOW = true
PLAYER_HP_FONT_SIZE = 14
PLAYER_HP_LOCATION = Point.new(130,66)
PLAYER_HP_WIDTH = 76
PLAYER_HP_HEIGHT = 11

MEMBER_HP_FONT = GLOBAL_FONT_NAME
MEMBER_HP_FONT_SIZE = GLOBAL_MEMBER_FONT_SIZE
MEMBER_HP_LOCATION = Point.new(0,0)

USE_MP_TEXT_DISPLAY = USE_HP_TEXT_DISPLAY
PLAYER_MP_FONT = PLAYER_HP_FONT
PLAYER_FULL_MP_COLOR = Colors::GaugeBlue
PLAYER_MP_FONT_USE_ITALICS = PLAYER_HP_FONT_USE_ITALICS
PLAYER_MP_FONT_USE_BOLD = PLAYER_HP_FONT_USE_BOLD
PLAYER_MP_FONT_USE_SHADOW = PLAYER_HP_FONT_USE_SHADOW
PLAYER_MP_FONT_SIZE = PLAYER_HP_FONT_SIZE
PLAYER_MP_LOCATION = Point.new(PLAYER_HP_LOCATION.x, PLAYER_HP_LOCATION.y PLAYER_HP_HEIGHT 1)
PLAYER_MP_WIDTH = PLAYER_HP_WIDTH
PLAYER_MP_HEIGHT = PLAYER_HP_HEIGHT

MEMBER_MP_FONT = GLOBAL_FONT_NAME
MEMBER_MP_FONT_SIZE = GLOBAL_MEMBER_FONT_SIZE
MEMBER_MP_LOCATION = Point.new(0,0)

PLAYER_LEVEL_FONT = GLOBAL_FONT_NAME
PLAYER_LEVEL_COLOR = Colors::Gold
PLAYER_LEVEL_USE_ITALICS = false
PLAYER_LEVEL_USE_BOLD = false
PLAYER_LEVEL_USE_SHADOW = true
PLAYER_LEVEL_FONT_SIZE = 18
PLAYER_LEVEL_LOCATION = Point.new(136,24)
PLAYER_LEVEL_WIDTH = 36
PLAYER_LEVEL_HEIGHT = 35

MEMBER_LEVEL_FONT = GLOBAL_FONT_NAME
MEMBER_LEVEL_COLOR = PLAYER_LEVEL_COLOR
MEMBER_LEVEL_FONT_SIZE = 10
MEMBER_LEVEL_LOCATION = Point.new(0,0)

#-------
# don't change the values below unless you know what you are doing.

# The text format used for gauage images.
HEALTH_GAUGE_FORMAT = 'hud_bar_%s_%.3d'

# the name of the image file used as a mask for the face graphic
PLAYER_FACE_MASK_NAME = 'player_face_mask'

end

class EventHandler

def initialize
@client_map = {}
end

def add_listener(id, func)
(@client_map[id.hash] ||= []) << func
end

def remove_listener(id)
return @client_map.delete(id.hash)
end

def alert_listeners(*args)
@client_map.each_value { |v| v.each { |func| func.call(*args) } }
end

def dispose
@client_map = nil
end

end

class Game_Actor < Game_Battler

attr_accessor :hp_changed
attr_accessor :mp_changed
attr_accessor :maxhp_changed
attr_accessor :maxmp_changed

alias :pre_confhud_ga_init :initialize unless $@
def initialize(*args)
@hp_changed = EventHandler.new
@mp_changed = EventHandler.new
@maxhp_changed = EventHandler.new
@maxmp_changed = EventHandler.new
pre_confhud_ga_init(*args)
end

def on_hp_changed(*args)
@hp_changed.alert_listeners(*args)
end

def on_mp_changed(*args)
@mp_changed.alert_listeners(*args)
end

def on_maxhp_changed(*args)
@maxhp_changed.alert_listeners(*args)
end

def on_maxmp_changed(*args)
@maxmp_changed.alert_listeners(*args)
end

alias :pre_confhud_ga_hpequ :hp= unless $@
def hp=(*args)
temp = @hp
pre_confhud_ga_hpequ(*args)
on_hp_changed(@hp) unless temp == @hp
end

alias :pre_confhud_ga_maxhpequ :maxhp= unless $@
def maxhp=(*args)
temp = self.maxhp
pre_confhud_ga_maxhpequ(*args)
cur_max = self.maxhp
on_maxhp_changed(cur_max) unless temp == cur_max
end

alias :pre_confhud_ga_mpequ :mp= unless $@
def mp=(*args)
temp = @mp
pre_confhud_ga_mpequ(*args)
on_mp_changed(@mp) unless temp == @mp
end

alias :pre_confhud_ga_maxmpequ :maxmp= unless $@
def maxmp=(*args)
temp = self.maxmp
pre_confhud_ga_maxmpequ(*args)
cur_max = self.maxmp
on_maxmp_changed(cur_max) unless temp == cur_max
end

alias :pre_confhud_ga_recover_all :recover_all unless $@
def recover_all(*args)
temp_hp, temp_mp = @hp, @mp
pre_confhud_ga_recover_all(*args)
on_hp_changed if temp_hp != @hp
on_mp_changed if temp_mp != @mp
end

end

class Window_Base < Window

alias :pre_confhud_wb_hp_color :hp_color unless $@
def hp_color(actor, for_hud=false)
return HudConfig::pLAYER_FULL_HP_COLOR if for_hud && actor.hp == actor.maxhp
return pre_confhud_wb_hp_color(actor)
end

alias :pre_confhud_wb_mp_color :mp_color unless $@
def mp_color(actor, for_hud=false)
return HudConfig::pLAYER_FULL_MP_COLOR if for_hud && actor.mp == actor.maxmp
return pre_confhud_wb_mp_color(actor)
end

end

class MainHud < Sprite_Base
include HudConfig

WLH = Window_Base::WLH

attr_accessor :actor

def initialize(location, viewport=nil, actor=nil)
super(viewport)
self.bitmap = Bitmap.new(Graphics.width, Graphics.height)
self.x, self.y = location.x, location.y
self.actor = actor
end

def image_rect
ret = hud_image.rect
ret.x, ret.y = *PLAYER_HUD_LOC.to_a
return ret
end

def create_dummy_window
win = Window_Base.new(0, 0, 64, 64)
win.visible = false
return win
end

def hp_color
return (@window ||= create_dummy_window).hp_color(@actor, true)
end

def mp_color
return (@window ||= create_dummy_window).mp_color(@actor, true)
end

def hud_image
return Cache.picture(PLAYER_HUD_IMAGE_NAME)
end

def hud_location
return PLAYER_HUD_IMAGE_LOCATION
end

def hp_gauge_location
return PLAYER_HP_GAUGE_LOCATION
end

def mp_gauge_location
return PLAYER_MP_GAUGE_LOCATION
end

def name_draw_rect
return Rect.new(
PLAYER_NAME_LOCATION.x,
PLAYER_NAME_LOCATION.y,
PLAYER_NAME_WIDTH,
PLAYER_NAME_HEIGHT
)
end

def level_draw_rect
return Rect.new(
PLAYER_LEVEL_LOCATION.x,
PLAYER_LEVEL_LOCATION.y,
PLAYER_LEVEL_WIDTH,
PLAYER_LEVEL_HEIGHT
)
end

def hp_draw_rect
return Rect.new(
PLAYER_HP_LOCATION.x,
PLAYER_HP_LOCATION.y,
PLAYER_HP_WIDTH,
PLAYER_HP_HEIGHT
)
end

def mp_draw_rect
return Rect.new(
PLAYER_MP_LOCATION.x,
PLAYER_MP_LOCATION.y,
PLAYER_MP_WIDTH,
PLAYER_MP_HEIGHT
)
end

def name_font
font = Font.new(PLAYER_NAME_FONT, PLAYER_NAME_FONT_SIZE)
font.color = PLAYER_NAME_COLOR
font.italic = PLAYER_NAME_USE_ITALICS
font.bold = PLAYER_NAME_USE_BOLD
font.shadow = PLAYER_NAME_USE_SHADOW
return font
end

def hp_font
font = Font.new(PLAYER_HP_FONT, PLAYER_HP_FONT_SIZE)
font.color = hp_color
font.italic = PLAYER_HP_FONT_USE_ITALICS
font.bold = PLAYER_HP_FONT_USE_BOLD
font.shadow = PLAYER_HP_FONT_USE_SHADOW
return font
end

def mp_font
font = Font.new(PLAYER_MP_FONT, PLAYER_MP_FONT_SIZE)
font.color = mp_color
font.italic = PLAYER_MP_FONT_USE_ITALICS
font.bold = PLAYER_MP_FONT_USE_BOLD
font.shadow = PLAYER_MP_FONT_USE_SHADOW
return font
end

def level_font
font = Font.new(PLAYER_LEVEL_FONT, PLAYER_LEVEL_FONT_SIZE)
font.color = PLAYER_LEVEL_COLOR
font.italic = PLAYER_LEVEL_USE_ITALICS
font.bold = PLAYER_LEVEL_USE_BOLD
font.shadow = PLAYER_LEVEL_USE_SHADOW
return font
end

def player_face_mask_image
return Cache.picture(PLAYER_FACE_MASK_NAME)
end

def create_player_face_image(size=96)
face = Cache.face(@actor.face_name)
rect = Rect.new(0, 0, 0, 0)
rect.x = @actor.face_index % 4 * 96 (96 - size) / 2
rect.y = @actor.face_index / 4 * 96 (96 - size) / 2
rect.width = size
rect.height = size
mask = player_face_mask_image
@face_image = Bitmap.new(rect.width, rect.height)
@face_image.blt(0, 0, face, rect)
for y in 0...rect.height
for x in 0...rect.width
mask_color = mask.get_pixel(x, y)
@face_image.set_pixel(x, y, mask_color) if mask_color.alpha == 0
end
end
end

def actor=(value)
return if @actor == value || value.nil?
remove_listeners(@actor)
add_listeners(value)
@actor = value
create_player_face_image
refresh
end

def add_listeners(actor)
return if actor.nil?
actor.hp_changed.add_listener(self, lambda { refresh })
actor.maxhp_changed.add_listener(self, lambda { refresh })
actor.mp_changed.add_listener(self, lambda { refresh })
actor.maxmp_changed.add_listener(self, lambda { refresh })
end

def remove_listeners(actor)
return if actor.nil?
actor.hp_changed.remove_listener(self)
actor.maxhp_changed.remove_listener(self)
actor.mp_changed.remove_listener(self)
actor.maxmp_changed.remove_listener(self)
end

def draw_hud
draw_custom_mp_gauge
draw_custom_hp_gauge
image = hud_image
location = hud_location
self.bitmap.blt(location.x, location.y, image, image.rect)
end

def round_to_multiple_of(multiple_of, num)
leftover = num % multiple_of
return num if leftover.zero?
if leftover > multiple_of / 2
sym = :
else
sym = :-
end
ret = num
loop do
ret = ret.send sym, 1
break if ret % multiple_of == 0
end
return ret
end

def check_health_bounds(num, multiple)
# dont allow the gauge to read 100 or 0 unless
# the current health actually is 100 or 0.
next_lower = 100 - multiple
if num > next_lower && num < 100
return next_lower
elsif num < multiple && num > 0
return multiple
else
return num
end
end

def draw_gauge(location, stat_name, current, max)
percent_health = (current / max.to_f) * 100
multiple = 5
percent_health = check_health_bounds(percent_health, multiple)
percent_health = round_to_multiple_of(multiple, percent_health.round)
file_name = HEALTH_GAUGE_FORMAT % [stat_name, percent_health]
image = Cache.picture(file_name)
self.bitmap.blt(location.x, location.y, image, image.rect)
end

def draw_custom_hp_gauge
draw_gauge(hp_gauge_location, 'hp', @actor.hp, @actor.maxhp)
end

def draw_custom_mp_gauge
draw_gauge(mp_gauge_location, 'mp', @actor.mp, @actor.maxmp)
end

def draw_face
self.bitmap.blt(FACE_LOCATION.x, FACE_LOCATION.y, @face_image, @face_image.rect)
end

def draw_name
name = @actor.name
rect = name_draw_rect
font = name_font
temp_font = self.bitmap.font
self.bitmap.font = font
self.bitmap.draw_text(rect, name)
self.bitmap.font = temp_font
end

def draw_level
level = @actor.level
rect = level_draw_rect
font = level_font
temp_font = self.bitmap.font
self.bitmap.font = font
self.bitmap.draw_text(rect, level, 1)
self.bitmap.font = temp_font
end

def use_custom_gauges?
return PLAYER_USE_CUSTOM_GAUGE
end

def health_text(prefix, cur, max)
return "#{prefix}: #{cur}/#{max}"
end

def draw_health(rect, font, prefix, cur, max)
self.bitmap.font = font
xr = rect.x rect.width
health_width = (rect.width * 0.33).round
spacer_width = (health_width / 2.1).round
temp_font = self.bitmap.font
prefixf = prefix ':'
# fuck this pile of shit, move along, this will just hurt your head
self.bitmap.draw_text(rect.x, rect.y, self.bitmap.text_size(prefixf).width, rect.height, prefixf)
self.bitmap.draw_text(xr - spacer_width - health_width * 2 (health_width * 0.15).round, rect.y, health_width, rect.height, cur, 2)
self.bitmap.draw_text(xr - spacer_width - health_width, rect.y, spacer_width, rect.height, "/", 2)
self.bitmap.draw_text(xr - health_width, rect.y, health_width, rect.height, max, 2)
self.bitmap.font = temp_font
end

def draw_hp
draw_health(hp_draw_rect, hp_font, Vocab.hp_a, @actor.hp, @actor.maxhp)
end

def draw_mp
draw_health(mp_draw_rect, mp_font, Vocab.mp_a, @actor.mp, @actor.maxmp)
end

def refresh
self.bitmap.clear
draw_face
draw_hud
return if actor.nil?
draw_name
draw_level
draw_hp if USE_HP_TEXT_DISPLAY
draw_mp if USE_MP_TEXT_DISPLAY
end

def dispose
unless @window.nil?
@window.dispose
@window = nil
end
super
end

end

class SubHud < MainHud



end

class Scene_Map < Scene_Base
include HudConfig

attr_reader :player_hud

# used to keep track of the hud location between
# setups and teardowns, i.e., if you enter the menu or battle.
@@last_hud_ox = 0

alias :pre_confhud_sm_start :start unless $@
def start
pre_confhud_sm_start
initialize_hud
end

def initialize_hud
@hud_viewport = Viewport.new(0, 0, 544, 416)
@hud_viewport.z = 9999
@hud_viewport.ox = @@last_hud_ox
@@target_hud_location ||= @hud_viewport.ox
@player_hud = MainHud.new(PLAYER_HUD_LOC, @hud_viewport, $game_actors[PLAYER_ID])
end

alias :pre_confhud_sm_update :update unless $@
def update
pre_confhud_sm_update
update_hud
update_hud_input
update_hud_transition
end

alias :pre_confhud_sm_update_basic :update_basic unless $@
def update_basic(*args)
pre_confhud_sm_update_basic
update_hud
end

def hide_hud
trigger_scroll(true)
end

def trigger_scroll(force_hide=false)
@@hud_moving = true
if @hud_viewport.ox.zero?
hud_rect = @player_hud.image_rect
left = HUD_SCROLL_DIRECTION == ScrollDirection::Left
offset = left ? hud_rect.width hud_rect.x : -(Graphics.width - hud_rect.x)
@@target_hud_location = @hud_viewport.ox offset
elsif !force_hide
@@target_hud_location = 0
end
end

def update_hud
@hud_viewport.update
end

def update_hud_input
trigger_scroll if ALLOW_HUD_HIDE && Input.trigger?(HIDE_HUD_INPUT)
end

def update_hud_transition
@@hud_moving = @hud_viewport.ox != @@target_hud_location
return unless @@hud_moving
incr = @hud_viewport.ox < @@target_hud_location ? HUD_HIDE_SPEED : -HUD_HIDE_SPEED
@hud_viewport.ox = [incr, (@hud_viewport.ox - @@target_hud_location).abs].min
end

alias :pre_confhud_sm_terminate :terminate unless $@
def terminate
pre_confhud_sm_terminate
@player_hud.dispose
@@last_hud_ox = @hud_viewport.ox
end

end


DESCARGAR IMAGENES PARA HUD
PESA MENOS DE 1 MB

http://www.megaupload.com/?d=8NUSD0X8
http://www.mediafire.com/?yhy3f2maymm
http://www.gigasize.com/get.php?d=ywvbqgrofsf

DEMO
http://www.megaupload.com/?d=79D4RSHH
 
Mensajes
233
Reacciones
0
Puntos
0
Ubicación
vivo en mi casa :)
este tema es solo para scripts o tambien pueden pedir mas recursus?? esque no encuentro el tema donde se asian los pedidos, bueno en fin, si alguien me puede ayudar con un charset de gabumon, "el digimon de max" le daria muchas gracias xD
 
Mensajes
134
Reacciones
0
Puntos
0
Hola scripteros!!!!
Aqui dejo este script, es el primer HUD que pongo, espero k os guste!!!!:icon_cheesygrin:


-Nombre Del Script:Corazones 4/4 estilo zelda
-Version Del Script: 0.1
-Rpg Maker: VX

-Introducion:Este script simula en la eskina de la pantalla los corazones estilo zelda
-Caracteristicas:Cada punto de vida el un cuarto de corazon, osea que 4 más son un corazon
-Demo: Aqui (Resubido por mi)
-ScreenShot:
screenshot01h.png
screenshot02m.png

-Script:# ================================================= ============================
#Zelda OmegaX Sistema de Salud.
# Autor: Omegas7
#Editor: TigreX
#Versión #: 0,1.
# ================================================= ============================
#Descripción
# Simula un sistema de Zelda Corazones: Un HUD que representará a su HP con
# Gráficos corazón. Cada corazón es un valor de 4 HP (4 fragmentos).
# ================================================= ============================
# Notas:
# Sólo asegúrese de que la vida del jugador es un múltiplo de 4 de tener esta
# Funciona correctamente!
# =============================================================================

module OmegaX
module ZeldaHealth
HeartsPerRow = 10
HeartGraphic = 'Heart'
HeartBack = 'HeartBack'

SWITCH = 1
end
end

class ZeldaHealth
include OmegaX::ZeldaHealth
def initialize
@member = $game_party.members[0]
@id = 0
if @member != nil
@id = @member.id
@hp = $game_party.members[0].hp
@maxhp = $game_party.members[0].maxhp
end
@backs = []
@hearts = []
@switch = $game_switches[SWITCH]
draw_sprites if @id != 0
refresh if @id != 0
end
def clear
for i in [email protected]
@hearts.finish
@hearts = nil
@backs.finish
@backs = nil
end
@hearts.compact!
@backs.compact!
end
def draw_sprites
row = 0
requirement_for_row = HeartsPerRow
x = 0
for i in 0...((@maxhp/4.0).ceil)
if i < requirement_for_row
@backs.push(ZeldaHeartBack.new(x,row))
@hearts.push(ZeldaHeart.new(x,row))
x += 1
else
row += 1
x = 0
requirement_for_row += (HeartsPerRow)
@backs.push(ZeldaHeartBack.new(x,row))
@hearts.push(ZeldaHeart.new(x,row))
x = 1
end
@hearts[@hearts.size - 1].visible(@switch)
@backs[@hearts.size - 1].visible(@switch)
end
end
def refresh
hp = @hp
done = false
if hp > 0
for heart in [email protected]
for switch in 0...@hearts[heart].switches.size
if @hearts[heart].switches[switch] == false && hp > 0
@hearts[heart].switches[switch] = true
hp -= 1
done = true if hp <= 0
end
end
end
end
for i in [email protected]
@hearts.update
end
end
def update
if $game_party.members[0] == nil
if @id != 0
@id = 0
finish
end
else
if @id != $game_party.members[0].id
@id = -1
end
end
if @id != 0
if @hp != $game_party.members[0].hp ||
@maxhp != $game_party.members[0].maxhp ||
@switch != $game_switches[SWITCH] ||
@id != $game_party.members[0].id
@id = $game_party.members[0].id
@switch = $game_switches[SWITCH]
@hp = $game_party.members[0].hp
@maxhp = $game_party.members[0].maxhp
clear
draw_sprites
refresh
end
end
end
def finish
for i in [email protected]
@hearts.finish
@backs.finish
end
end
end

class ZeldaHeartBack
include OmegaX::ZeldaHealth
def initialize(index,row)
@sprite = Sprite_Base.new
@sprite.bitmap = Cache.system(HeartBack)
@sprite.x = index * @sprite.width
@sprite.y = row * @sprite.height
@sprite.z = 100
end
def visible(value)
@sprite.visible = value
end
def finish
@sprite.dispose
end
end

class ZeldaHeart
include OmegaX::ZeldaHealth
attr_accessor :switches
def initialize(index,row)
bitmap = Cache.system(HeartGraphic)
@switches = [false,false,false,false]
@current = [false,false,false,false]
@parts = []
@sprite = Sprite_Base.new
@sprite.bitmap = Bitmap.new(bitmap.width,bitmap.height)
@sprite.x = index * bitmap.width
@sprite.y = row * bitmap.height
@sprite.z = 101
for i in 0...4
@parts.push(Bitmap.new(bitmap.width/2,bitmap.height/2))
case i
when 0
@parts.blt(0,0,bitmap,Rect.new(0,0,bitmap.width/2,bitmap.height/2))
when 1
@parts.blt(0,0,bitmap,Rect.new(bitmap.width/2,0,bitmap.width/2,bitmap.height/2))
when 2
@parts.blt(0,0,bitmap,Rect.new(0,bitmap.height/2,bitmap.width/2,bitmap.height/2))
when 3
@parts.blt(0,0,bitmap,Rect.new(bitmap.width/2,bitmap.height/2,bitmap.width/2,bitmap.height/2))
end
end
end
def update
if @current != @switches
refresh
end
end
def refresh
@sprite.bitmap.clear
@current = @switches
for i in [email protected]
if @current
case i
when 0
@sprite.bitmap.blt(0,0,@parts,Rect.new(0,0,@parts.width,@parts.height))
when 1
@sprite.bitmap.blt(@parts.width,0,@parts,Rect.new(0,0,@parts.width,@parts.height))
when 2
@sprite.bitmap.blt(0,@parts.height,@parts,Rect.new(0,0,@parts.width,@parts.height))
when 3
@sprite.bitmap.blt(@parts.width,@parts.height,@parts,Rect.new(0,0,@parts.width,@parts.height))
end
end
end
end
def visible(value)
@sprite.visible = value
end
def finish
@sprite.dispose
end
end



class Scene_Map
alias omegax_zelda_health_initialize initialize
alias omegax_zelda_health_update update
alias omegax_zelda_health_terminate terminate
def initialize
omegax_zelda_health_initialize
@zeldahealth = ZeldaHealth.new
end
def update
omegax_zelda_health_update
@zeldahealth.update
end
def terminate
omegax_zelda_health_terminate
@zeldahealth.finish
end
end



-Instrucciones: Pegar encima del main y añadir estas imagenes con los nombres siguientes:
-Imagenes:Estan en la demo, en Grapics> System
-Compatiblidad:Toda
-Creditos: A mi
Autor: Omegas7
Editor: TigreX

===============================================================================================

Para no Hacer munltipos haqui pongo otro innovador scrip de falcao

-Nombre Del Script: Nada
-Version Del Script: 1.0 (Tiere varios errores, pero esta xulo)
-Rpg Maker: VX

-Introducion: Pues simplemente permite nadar en los autotitles de agua ^^
-Caracteristicas:- El chara del personaje es modificada por el script para simular la natacion
- Un interruptor permite activar o desactivar el script.
-Demo: Aqui
-ScreenShot:
Nadando-1.png

-Script:
#========================================================================#
# #*****************# Nadar VX 1.0 Falcao script, permite #
# #*** By Falcao ***# que el personaje nade en pleno mapa #
# #*****************# en en todos los autotiles de agua. #
# RMXP #
# makerpalace.onlinegoo.com Date: Febrero 17 del 2010 #
#========================================================================#

#------------------------------------------------------------------------
# * Intrucciones
#
# Solo copiar y pegar el script encima de main. Editar el module de abajo
# a su gusto.
#
# Donde el personaje va nadar? nadara en todos los autotiles de agua.
# a menos que se declare lo contrario en el interruptor.
#
# Licensia: Puede ser usado en juegos no comerciales. Para usarlo en
# Juegos comerciales favor de contactarme.
#------------------------------------------------------------------------


module Falcao

# Interruptor que desabilita el script, on/off
Nadar_Switch = 99

# Sonido al entrar al agua, deve estar en la carpeta SE
ChapuzonSe = "Dive"

end


class Game_Map
def nadar_area?(x, y)
return passable?(x, y, 0x04)
end
end

class Game_Character
attr_accessor :through
attr_accessor :step_anime
attr_accessor :move_speed
end

#-------------------------------------------------------------------------
# * Nueva clase 'Nadar'
#-------------------------------------------------------------------------
class Nadar
include Falcao
def initialize
@player = $game_player
@chapuzon = true
end

def update
if area?
if @chapuzon
@last_speed = @player.move_speed
nadar_set(true, true, 3, true)
@chapuzon = false
end
elsif !@chapuzon
nadar_set(false, false, @last_speed, false)
@chapuzon = true
@player.move_forward
end
end

def nadar_set(tvalue, avalue, svalue, nadando=false)
@player.through = tvalue
@player.step_anime = avalue
@player.move_speed = svalue
if nadando
@player.move_forward
Audio.se_play("Audio/Se/" + ChapuzonSe) rescue
print "Sonido '#{ChapuzonSe}' no encontrado. Falcao script Nadar error"
end
end

def area?
case @player.direction
when 2; push_x = 0; push_y = 1
when 4; push_x = -1; push_y = 0
when 6; push_x = 1; push_y = 0
when 8; push_x = 0; push_y = -1
else; push_x = 0; push_y = 0
end
return false if $game_switches[Nadar_Switch]
return false if @player.in_vehicle?
for vehicle in $game_map.vehicles
if vehicle.x == @player.x + push_x and vehicle.y == @player.y + push_y
return false
end
end
return true if $game_map.nadar_area?(@player.x + push_x,
@player.y + push_y)
return false
end
end

#-------------------------------------------------------------------------
# * Scene_Title, create_game_objects aliased
#-------------------------------------------------------------------------
class Scene_Title
alias falcao_create_game_objects create_game_objects
def create_game_objects
falcao_create_game_objects
$falnadar = Nadar.new
end
end

#-------------------------------------------------------------------------
# * Scene_Map, update aliased
#-------------------------------------------------------------------------
class Scene_Map < Scene_Base
alias falcaonadar_update update
def update
$falnadar.update
falcaonadar_update
end
end

#-------------------------------------------------------------------------
# * Scene_File. write_save_data y read_save_data aliased
#-------------------------------------------------------------------------
class Scene_File < Scene_Base
alias falcao13_write_save_data write_save_data
def write_save_data(file)
falcao13_write_save_data(file)
Marshal.dump($falnadar, file)
end
alias falcao13_read_save_data read_save_data
def read_save_data(file)
falcao13_read_save_data(file)
$falnadar = Marshal.load(file)
end
end

#-------------------------------------------------------------------------
# * Sprite_Character, metodo update_src_rect reescrito
#-------------------------------------------------------------------------
class Sprite_Character < Sprite_Base
def update_src_rect
if @tile_id == 0
index = @character.character_index
pattern = @character.pattern < 3 ? @character.pattern : 1
sx = (index % 4 * 3 + pattern) * @cw
sy = (index / 4 * 4 + (@character.direction - 2) / 2) * @ch
if @character.is_a?(Game_Player) and $falnadar.area?
self.src_rect.set(sx, sy, @cw, @ch - 10)
else
self.src_rect.set(sx, sy, @cw, @ch)
end
end
end
end

-Instrucciones: Pegar encima del main y activar el interuptor (Si no sabes como hacerlo, abran la demo con el RM
-Compatiblidad: Toda, no creo k se corrompera -.-
-Creditos:Falcao
Ami
 
Última edición:
Mensajes
134
Reacciones
0
Puntos
0
Haqui otro script (Nota: Cada dia pongo un monton de script, ya mismo estan todos los de la web xD)
Este esta muy practico.

-Nombre Del Script:cambiar WindonwSkin durante el juego
-Version Del Script:¿¿¿???
-Rpg Maker: VX

-Introducion: Usted puede cambiar el Windonw Skin cuando quiera, en tiempo real
-Caracteristicas: Es totalmente personalizable, muy practico.
-Demo: No tiene
-ScreenShot:
skincgange.jpg

-Script:
=begin
   ★ ★ Windowskinnable

Para cambiar el WinSkin durante el juego.

ver2.02

Características: No se puede cambiar el título de la ventana de la pantalla de

Instrucciones: Comando de eventos llamar script como
Escena $ = Scene_Select_Window.new
Para el inicio del evento.

Última actualización: 2009/4/21
4 / 21: La organización.
: Cambio en la apariencia de la ventana
3 / 3: Cambio en el comportamiento
2 / 28: Hemos cambiado las especificaciones de color de la secuencia de comandos.
: 5 será capaz de cambiar la piel de una o más ventanas,
: Se ha cambiado a utilizar.
: Añadir un elemento de bonificación.
1 / 7: Nueva

Créditos:
Sitio http://kaisouryouiki.web.fc2.com/
Traductor ZunnerX
=end

#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
# Detalles # ★ ★
# Los números pueden ser almacenados en la ubicación especificada en el número de las variables
# definidas
# Se puede cambiar la piel en el juego.
#
# "0" es el valor predeterminado de la piel
# Si tiene el archivo en una carpeta en system como el "Windows" se tomará por omisión
#
# Ponga todas las pieles en GRAPHICS/SYSTEM Como
# Windos_x Windows_x 1 Windows_x 2 etc ...
# Para el que no entienda ...
# Windows_1 Windows_2 Windows_3 .....
#
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#===================================
# Local Setting
#===================================
module Rokan
module Change_Window
# Número de variables utilizadas para cambiar WinSkin
WINDOW_V = 10

#***********************************************************************
# Bono #
# Si utiliza un "cambio de pieles de escena ventana, se puede modificar
# a continuación.
#***********************************************************************
# Número de WinSkin posibles
WINDOW_MAX = 3
# Selecciona el texto a mostrar en Windows Scene
WINDOW_NAVI = "Por favor seleccione una WindowsSkin"

# WinSkin nombre que se muestra (no el nombre de archivo)
Numer # => [ "winskin nombre"],
Modelo # añadiendo WinSkin
Ejemplos # ★ ★
# = (Window_name
# 0 => [ "winskin InstanceName que se mostrará en la ventana"], - 0 obtendrá el archivo de copia
de Windows en la carpeta del sistema
# 1 => [ "abc"], 1 -> Ir Windows_1 obtener el archivo de la carpeta del sistema
# }
WINDOW_NAME ={
0 => ["Standard"], # no se olvide de poner punto y coma al final de la línea
1 => ["Ex1"],
2 => ["Ex2"], # Nota 0.1.2 (3 opciones) WINDOW_MAX = 3
}
end
end
#===================================
# Longe (???)
#===================================

$rsi = {} if $rsi == nil
$rsi["Windows Skinnable"] = true

class Window_Base < Window
#--------------------------------------------------------------------------
# inicialización de objetos Reset
#--------------------------------------------------------------------------
def initialize(x, y, width, height)
super()
change_window_type
self.x = x
self.y = y
self.width = width
self.height = height
self.z = 100
self.back_opacity = 200
self.openness = 255
create_contents
@opening = false
@closing = false
end
#--------------------------------------------------------------------------
# ● Poner el Skin
#--------------------------------------------------------------------------
def change_window_type
$window_index = $game_variables[Rokan::Change_Window::WINDOW_V]
$window_index == 0 ? self.windowskin = Cache.system("Window") :
self.windowskin = Cache.system("Window_#{$window_index}")
end
end

class Window_Type_Select < Window_Base
#--------------------------------------------------------------------------
# ● tareas> objetos
#--------------------------------------------------------------------------
def initialize
super(0, 0, 350, 100)
self.x = 544 / 2 - width / 2 ; self.y = 416 / 2 - height / 2
refresh
end
#--------------------------------------------------------------------------
# ● Actualizar
#--------------------------------------------------------------------------
def refresh
self.contents.clear
comment = Rokan::Change_Window::WINDOW_NAVI
name = Rokan::Change_Window::WINDOW_NAME[$window_index]
self.contents.font.color = system_color
self.contents.draw_text(0, 5, width - 32, WLH, comment, 1)
self.contents.font.color = normal_color
self.contents.font.size = 23
self.contents.font.italic = true
self.contents.draw_text(0, WLH + 10, width - 32, WLH,"- #{name[0]} -", 1)
self.contents.font.italic = false
self.contents.font.bold = true
self.contents.draw_text(0, WLH + 10, width - 32, WLH,"<<", 0)
self.contents.draw_text(0, WLH + 10, width - 32, WLH,">>", 2)
self.contents.font.size = 20
self.contents.font.bold = false
end
end

class Scene_Select_Window < Scene_Base
#--------------------------------------------------------------------------
# ● Iniciar el tratamiento
#--------------------------------------------------------------------------
def start
super
create_menu_background
@max = Rokan::Change_Window::WINDOW_MAX - 1
create_window
end
#--------------------------------------------------------------------------
# ● Terminación #
#--------------------------------------------------------------------------
def terminate
super
dispose_menu_background
@type_window.dispose
end
#--------------------------------------------------------------------------
# ● Creación de ventana
#--------------------------------------------------------------------------
def create_window
@type_window = Window_Type_Select.new
end
#--------------------------------------------------------------------------
# ● Frame
#--------------------------------------------------------------------------
def update
super
update_menu_background
if Input.trigger?(Input::B)
Sound.play_cancel
$scene = Scene_Map.new
elsif Input.trigger?(Input::RIGHT)
Sound.play_decision
$window_index == @max ? $window_index = 0 : $window_index += 1
$game_variables[Rokan::Change_Window::WINDOW_V] = $window_index
@type_window.dispose
create_window
elsif Input.trigger?(Input::LEFT)
Sound.play_decision
$window_index == 0 ? $window_index = @max : $window_index -= 1
$game_variables[Rokan::Change_Window::WINDOW_V] = $window_index
@type_window.dispose
create_window
end
end
end
-Instrucciones: Pegar encima del main, para llamarlo coloquen en llamar script:
$scene = Scene_Select_Window.new
-Compatiblidad:Toda, excepto un menu que vi, en vez de guardar partida en el menu, puedes cambiar el color de ka windonw skin
-Creditos:ROKAN
Ami
ZunnerX
 

Lynck.

EMD Superstar
Mensajes
3.548
Reacciones
1.810
Puntos
1.330
este tema es solo para scripts o tambien pueden pedir mas recursus?? esque no encuentro el tema donde se asian los pedidos, bueno en fin, si alguien me puede ayudar con un charset de gabumon, "el digimon de max" le daria muchas gracias xD

Se fucionó el tema de Script y recursos a la carta, puedes pedir y aportár Script, y tambien pedir recursos.

Sobre el pedido...Te diré que no encontré, ya que no hay una version de Advance o parecido en la que te puedas mover ,hacia arriba, abajo, izquierda, o derecha con el... En conclución, no parece que haya... Aunque, encontré un Sprite, de los pocos que hay...
Nosé si te sirva, pero te lo dejo...



Lo unico que faltaria, para que funcionara en Charaset, seria pasarlo a una plantilla, por si no la tienes , aquí está.



Para que quede, algo así :



Y por si acaso, te dejo otros charaset xD...



Y uno de Agumon ..xD...(Agumon, Gabumon, Agumon, Gabumon , Me estoy volviendo loco xDDD...D= ...)




Bueno, espero que te sirvan D:

T.L
 
Mensajes
88
Reacciones
0
Puntos
0
Hola quisiera que me pasaran un scrip que de menu inicio
tipo kingdom hearts que he visto varios juego de kh
con ese script pero yo no lo encuentro :S
Tambien me gustaria que me pasaran imagenes del
menu de kh para modificar el mog hunter :)
 
Última edición:

Lynck.

EMD Superstar
Mensajes
3.548
Reacciones
1.810
Puntos
1.330
Nececito recursos de Zelda porfavor para VX plis

Bueno...Cómo al parecér no encontraste nada en el Tema de recursos...Te paso algunos.

Charasets de Zelda

Si te sirven estos, tambien...Son varios recursos de Zelda...Te los pongo por si no los viste en el Tema de Recursos
Click Aquí

Por si quieres de otro estilo : Más charasets

Si quieres crear tus charasets, puedes usar esta plantilla :

Si te descargas el Pack de recursos que te di mas arriba, verás que unos no caben en el Rpg Maker VX, por ser de Rpg Maker XP...
Puedes solucionarlo , copiando y pegando a esa plantilla , Te puedes guiar de este :

Puedes ver a que direccion miran en cada linea, no es complicado , lo puedes hacer con Photoshop, o con Paint.

Si necesitas algo más , postea Aquí mismo.
Si tienes dudas , con el Rpg Maker VX , postea aquí : [URL="http://www.emudesc.net/foros/rpg-maker/234976-dudas-rpg-maker-postearla-unica-y-exclusivamente-no-abrir-temas-dudas-v8.html"]Dudas Rpg Maker
 
Mensajes
316
Reacciones
0
Puntos
0
hola estoy pidiendo recursos pero para pokemon en rgss1 (RPG MAKER XP)
si me pudieran pasar por que trato de hacer un buen juego
 
Mensajes
31
Reacciones
0
Puntos
0
Necesito Scripts de... A PODER SER DE VX
-Lucha con cartas + tutorial como ponerlo y como hago las cartas
-Como cambiar el titulo.
-Imagenes antes del titulo + explicación.
-y si existe poner mas tiles a parte de ABCDE
 

Lynck.

EMD Superstar
Mensajes
3.548
Reacciones
1.810
Puntos
1.330
Mensajes
271
Reacciones
0
Puntos
0
Ubicación
Los Mares
alguien me pdria pasar una animacion de un rifle disparando como el de luminos arc y charas de luminos arc y chras de summon night twin age el de DS y para VX gracias de antemano
 
Mensajes
1.415
Reacciones
0
Puntos
0
Ubicación
zaragoza
-|- D.R.I.A.C.S. v1.1 -|-

DRIACS stands for: D&D-style Restricted Inventory and Advanced Chest System.​

intrduccion:modifica la ventaan de la tienda y la del menu para hacerla mas completa
rpg maker:vx

Version 1.1
  • Gold can now be added to chests - when the chest is opened a pop-up window appears informing the player how much gold they have found (with a customisable message, of course)
  • Chests are now created with an Item Table. A simple but powerful syntax allows the user to easily create complex, random combinations of items, such as for chests tailored to a player's level.
  • Chests can now be initialised 'remotely' with the remote_open_chest command. This means modifications can be made to the chest before the player has opened it for the first time.
-- Screenshots --

Note that these shots are not representative of the full customisability of the system.

The modified item scene

sceneitem1.png
.....
sceneitem2.png


The modified shop scene

sceneshop1.png
.....
sceneshop2.png


sceneshop3.png
.....
sceneshop4.png


The brand new 'Spoils' scene


scenespoils1.png
.....
scenespoils2.png


scenespoils3.png
.....
scenespoils4y.png


scenespoils5.png
.....
scenespoils6.png



-- Script --

Click aqui para descargar el scipt

la contraseña es DRIACS.

parches por si sale algun error
c1.0.4.271009
c1.0.3.171009
c1.0.2.041009
c1.0.1.031009

-- Creditos--


- Oceano
- makryu
- MASH MX
- Aero_drake (rpgrevolution.com)
 

Lynck.

EMD Superstar
Mensajes
3.548
Reacciones
1.810
Puntos
1.330
Necesito Scripts de... A PODER SER DE VX
-Lucha con cartas + tutorial como ponerlo y como hago las cartas
Primero que nada, lee las reglas para pedir...Solo puedes hacer dos pedidos...Igual, te los respondo...
Pues, encontre uno, muy raro, nosé si te sirva, las instrucciones están en Demo...Etc.

Nombre del Script : Batallas con Cartas

Version del Script : ¿?

Rpg Maker : VX

Imagenes :
No hay, no encontre D: ...

Demo : Descarga 4Shared

Instrucciones :
meter los scripts delante de main
las imagenes en pictures
y hay eventos que te dice como activar el script

Creditos :
Se desconoce...

En la Demo viene mas explicadas las cosas.
 
Última edición:
Estado
Cerrado para nuevas respuestas
Arriba Pie