[RPG Maker XP / VX] HUD Dragón
Página 1 de 1. • Compartir •
[RPG Maker XP / VX] HUD Dragón
Nombre: HUD Dragón
Autor: Br_lemes
Versión: Desconocida
Autor: Br_lemes
Versión: Desconocida
Este script crea una HUD para un solo personaje que muestra los PV, PM, los puntos de Exp., el equipamiento y los objetos. Es totalmente personalizable (cambio de imagen o de opacidad) y compatible tanto para RMXP como para RMVX.
Script:
Script:
- Código:
=begin
Dragon HUD
Autor: Br_lemes
Traducción: D.A.C.
Se permite copiar, modificar o distribuir este script siempre y cuando este
mensaje se mantenga. No hay garantía, úsalo bajo tu propia responsabilidad.
=end
######################################################################
# CONFIGURACIONES - Modificar libremente, pero con cuidado.
######################################################################
$RMVX = $TEST != nil
$DHUD_DRAGON1 = true # mostrar dragón 1
$DHUD_DRAGON2 = true # mostrar dragón 2
# Lista con las ID de 4 (VX) o 6 (XP) objetos que se mostrarán
# Usar el número 0 para no mostrar nada.
$DHUD_ITEMS = [1, 4, 7, 9, 12, 13]
# Estado inicial del HUD
$DHUD_DEFAULT = true # true (verdadero) visible, false (falso) no visible.
$DHUD_SWITCH = 1 # interruptor que activa o desactiva el HUD.
$DHUD_OPACITY = 215 # Opacidad de las imágenes.
$DHUD_Y = $RMVX ? 382 : 446 # Coordenada 'Y' de referencia.
#--------------------------------------------------------------------------
# SOLO XP - Colores de la barra PV / PM / Exp.
# 0 = Rojo
# 1 = Azul
# 2 = Verde
# 3 = Rosa
# 4 = Azul claro
# 5 = Amarillo
# 6 = Blanco
#--------------------------------------------------------------------------
$DHUD_HP_COLOR = 0
$DHUD_SP_COLOR = 1
$DHUD_EXP_COLOR = 2
######################################################################
# FIN DE LA CONFIGURACIÓN - No modificar nada a partir de aquí a menos que tengas
# conocimientos de RGSS / RGSS2.
######################################################################
$dhud_eq_needrefresh = true
$dhud_it_needrefresh = true
class Game_Actor < Game_Battler
def now_exp
return @exp - @exp_list[@level]
end
def next_exp
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
end
if $RMVX
alias dhud_change_equip change_equip
def change_equip(equip_type, item, test = false)
dhud_change_equip(equip_type, item, test)
$dhud_eq_needrefresh = true
end
else
alias dhud_equip equip
def equip(equip_type, item)
dhud_equip(equip_type, item)
$dhud_eq_needrefresh = true
end
end
end
class Game_Party
alias dhud_gain_item gain_item
def gain_item(item, n, include_equip = false)
$RMVX ? dhud_gain_item(item, n, include_equip) : dhud_gain_item(item, n)
$dhud_it_needrefresh = true
end
end
class Scene_Map
alias dhud_main main
def main
if $RMVX then @windowskin = Cache.system("Window") end
@hud_checkex = -1
@hud_back = Sprite.new
@hud_back.z += 1
@hud_back.opacity = $DHUD_OPACITY
@hud_dragon1 = Sprite.new
@hud_dragon1.z += 2
@hud_dragon1.opacity = $DHUD_OPACITY
@hud_dragon2 = Sprite.new
@hud_dragon2.z += 2
@hud_dragon2.mirror = true
@hud_dragon2.opacity = $DHUD_OPACITY
@hud_dragon1.visible = $DHUD_DRAGON1
@hud_dragon2.visible = $DHUD_DRAGON2
if $RMVX
@hud_back.bitmap = Cache.system("backVX")
@hud_back.y = 416 - @hud_back.height
@hud_dragon1.bitmap = Cache.system("dragon")
@hud_dragon1.y = 416 - @hud_dragon1.height
@hud_dragon2.bitmap = Cache.system("dragon")
@hud_dragon2.x = 544 - @hud_dragon2.width
@hud_dragon2.y = 416 - @hud_dragon2.height
else
@hud_back.bitmap = RPG::Cache.windowskin("backXP")
@hud_back.y = 480 - @hud_back.bitmap.height
@hud_dragon1.bitmap = RPG::Cache.windowskin("dragon")
@hud_dragon1.y = 480 - @hud_dragon1.bitmap.height
@hud_dragon2.bitmap = RPG::Cache.windowskin("dragon")
@hud_dragon2.x = 640 - @hud_dragon2.bitmap.width
@hud_dragon2.y = 480 - @hud_dragon2.bitmap.height
end
@hud_hp = Sprite.new
@hud_hp.x = 70
@hud_hp.y = $DHUD_Y + 2
@hud_hp.z += 2
@hud_hp.bitmap = Bitmap.new(83, 4)
@hud_mp = Sprite.new
@hud_mp.x = 70
@hud_mp.y = $DHUD_Y + 10
@hud_mp.z += 2
@hud_mp.bitmap = Bitmap.new(83, 4)
@hud_ex = Sprite.new
@hud_ex.x = 70
@hud_ex.y = $DHUD_Y + 18
@hud_ex.z += 2
@hud_ex.bitmap = Bitmap.new(83, 4)
@hud_eq = Sprite.new
@hud_eq.x = 186
@hud_eq.y = $DHUD_Y
@hud_eq.z += 2
@hud_eq.bitmap = Bitmap.new(142, 24)
@hud_it = Sprite.new
@hud_it.x = 360
@hud_it.y = $DHUD_Y
@hud_it.z += 2
if $RMVX
@hud_it.bitmap = Bitmap.new(114, 24)
else
@hud_it.bitmap = Bitmap.new(172, 24)
end
@hud_it.bitmap.font.size = 14
$dhud_eq_needrefresh = true
$dhud_it_needrefresh = true
refresh
dhud_main
@hud_back.dispose
@hud_dragon1.dispose
@hud_dragon2.dispose
@hud_hp.dispose
@hud_mp.dispose
@hud_ex.dispose
@hud_eq.dispose
@hud_it.dispose
end
def refresh
hudswitch = (($DHUD_DEFAULT && !$game_switches[$DHUD_SWITCH]) or (!$DHUD_DEFAULT && $game_switches[$DHUD_SWITCH]))
@hud_back.visible = hudswitch
if hudswitch
@hud_dragon1.visible = $DHUD_DRAGON1
@hud_dragon2.visible = $DHUD_DRAGON2
else
@hud_dragon1.visible = false
@hud_dragon2.visible = false
end
@hud_hp.visible = hudswitch
@hud_mp.visible = hudswitch
@hud_ex.visible = hudswitch
@hud_eq.visible = hudswitch
@hud_it.visible = hudswitch
draw_hp
draw_mp
draw_ex
draw_eq if $dhud_eq_needrefresh
draw_it if $dhud_it_needrefresh
end
if $RMVX
def text_color(n)
x = 64 + (n % 8) * 8
y = 96 + (n / 8) * 8
return @windowskin.get_pixel(x, y)
end
else
def bar_color(bitmap, x, y, w, color)
case color
when 0
bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 96, 96, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 0, 0, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 0, 0, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 0, 0, 255))
when 1
bitmap.fill_rect(x, y + 0, w, 1, Color.new(96, 96, 255, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 0, 255, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 0, 192, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 0, 128, 255))
when 2
bitmap.fill_rect(x, y + 0, w, 1, Color.new(96, 255, 96, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 255, 0, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 192, 0, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 128, 0, 255))
when 3
bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 128, 255, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 0, 255, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 0, 192, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 0, 128, 255))
when 4
bitmap.fill_rect(x, y + 0, w, 1, Color.new(128, 255, 255, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 255, 255, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 192, 192, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 128, 128, 255))
when 5
bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 255, 128, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 255, 0, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 192, 0, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 128, 0, 255))
when 6
bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 255, 255, 255))
bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 255, 255, 255))
bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 192, 192, 255))
bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 128, 128, 255))
end
end
end
def draw_hp
if $RMVX
if @hud_checkhp == $game_party.members[0].hp then return end
@hud_mp.bitmap.clear
gw = 83 * $game_party.members[0].hp / $game_party.members[0].maxhp
@hud_hp.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(20), text_color(21))
@hud_checkhp = $game_party.members[0].hp
else
if @hud_checkhp == $game_party.actors[0].hp then return end
@hud_mp.bitmap.clear
gw = 83 * $game_party.actors[0].hp / $game_party.actors[0].maxhp
bar_color(@hud_hp.bitmap, 0, 0, gw, $DHUD_HP_COLOR)
@hud_checkhp = $game_party.actors[0].hp
end
end
def draw_mp
if $RMVX
if @hud_checkmp == $game_party.members[0].mp then return end
@hud_mp.bitmap.clear
gw = 83 * $game_party.members[0].mp / $game_party.members[0].maxmp
@hud_mp.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(22), text_color(23))
@hud_checkmp = $game_party.members[0].mp
else
if @hud_checkmp == $game_party.actors[0].sp then return end
@hud_mp.bitmap.clear
gw = 83 * $game_party.actors[0].sp / $game_party.actors[0].maxsp
bar_color(@hud_mp.bitmap, 0, 0, gw, $DHUD_SP_COLOR)
@hud_checkmp = $game_party.actors[0].sp
end
end
def draw_ex
if $RMVX
if @hud_checkex == $game_party.members[0].next_exp then return end
@hud_ex.bitmap.clear
ex = $game_party.members[0].next_exp != 0 ? ex = $game_party.members[0].now_exp : ex = 1
gw = 83 * ex / [$game_party.members[0].next_exp, 1].max
@hud_ex.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(30), text_color(31))
@hud_checkex = ex
else
if @hud_checkex == $game_party.actors[0].next_exp then return end
@hud_ex.bitmap.clear
ex = $game_party.actors[0].next_exp != 0 ? ex = $game_party.actors[0].now_exp : ex = 1
gw = 83 * ex / [$game_party.actors[0].next_exp, 1].max
bar_color(@hud_ex.bitmap, 0, 0, gw, $DHUD_EXP_COLOR)
@hud_checkex = ex
end
end
def draw_icon(contents, icon, x, y, enabled = true)
if $RMVX
bitmap = Cache.system("Iconset")
rect = Rect.new(icon % 16 * 24, icon / 16 * 24, 24, 24)
contents.blt(x, y, bitmap, rect, enabled ? 255 : 128)
else
bitmap = RPG::Cache.icon(icon)
contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24), enabled ? 255 : 128)
end
end
def draw_eq
@hud_eq.bitmap.clear
if $RMVX
actor = $game_party.members[0]
draw_icon(@hud_eq.bitmap, $data_weapons[actor.weapon_id].icon_index, 0, 0, true) if actor.weapon_id != 0
if actor.armor1_id != 0
if actor.two_swords_style
draw_icon(@hud_eq.bitmap, $data_weapons[actor.armor1_id].icon_index, 29, 0, true) if actor.armor1_id != 0
else
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor1_id].icon_index, 29, 0, true) if actor.armor1_id != 0
end
end
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor2_id].icon_index, 58, 0, true) if actor.armor2_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor3_id].icon_index, 87, 0, true) if actor.armor3_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor4_id].icon_index, 116, 0, true) if actor.armor4_id != 0
else
actor = $game_party.actors[0]
draw_icon(@hud_eq.bitmap, $data_weapons[actor.weapon_id].icon_name, 0, 0, true) if actor.weapon_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor1_id].icon_name, 29, 0, true) if actor.armor1_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor2_id].icon_name, 58, 0, true) if actor.armor2_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor3_id].icon_name, 87, 0, true) if actor.armor3_id != 0
draw_icon(@hud_eq.bitmap, $data_armors[actor.armor4_id].icon_name, 116, 0, true) if actor.armor4_id != 0
end
$dhud_eq_needrefresh = false
end
def draw_it
@hud_it.bitmap.clear
x = 0
n = $RMVX ? 3 : 5
for i in 0..n
if $DHUD_ITEMS[i] != 0
item = $data_items[$DHUD_ITEMS[i]]
if $RMVX
if item and $game_party.item_number(item) != 0
draw_icon(@hud_it.bitmap, item.icon_index, x, 0, true)
@hud_it.bitmap.draw_text(x + 16, 10, 12, 14, $game_party.item_number(item))
end
else
if item and $game_party.item_number($DHUD_ITEMS[i]) != 0
draw_icon(@hud_it.bitmap, item.icon_name, x, 0, true)
@hud_it.bitmap.draw_text(x + 16, 10, 12, 14, $game_party.item_number($DHUD_ITEMS[i]).to_s)
end
end
end
x += 29
end
$dhud_it_needrefresh = false
end
alias dhud_update update
def update
dhud_update
refresh
@hud_back.update
@hud_dragon1.update
@hud_dragon2.update
@hud_hp.update
@hud_mp.update
@hud_ex.update
@hud_eq.update
@hud_it.update
end
end
Imágenes:
- Spoiler:
- RPG Maker XP
[Tienes que estar registrado y conectado para ver esa imagen]
RPG Maker VX
[Tienes que estar registrado y conectado para ver esa imagen]
Instrucciones:
- Copiar el script encima de 'Main'.
- Activar el interruptor número 1.
- Modificar el apartado:######################################################################
# CONFIGURACIONES - Modificar libremente, pero con cuidado.
###################################################################### - Añadir las siguientes imágenes en su lugar respectivo:
RPG Maker XP - Carpeta Windowskin.- Spoiler:
- [Tienes que estar registrado y conectado para ver esa imagen]
[Tienes que estar registrado y conectado para ver esa imagen]
RPG Maker VX - Carpeta System.- Spoiler:
- [Tienes que estar registrado y conectado para ver esa imagen]
[Tienes que estar registrado y conectado para ver esa imagen]

[Tienes que estar registrado y conectado para ver esa imagen]
Si quieres verlo, haz [Tienes que estar registrado y conectado para ver este vínculo].
Si quieres verlo, haz [Tienes que estar registrado y conectado para ver este vínculo].

D.A.C.- Súper Moderador

- Makedas: 704
Re: [RPG Maker XP / VX] HUD Dragón
Muy buen aporte D.A.C
me servirá ahora que eh vuelto al XP (el 2003 fallaba cada rato e_e).
Me pregunto quien te dará makedas si tu eres el que las da xD, bueh espero que el administrador te de 30 por que es un script que nunca había visto.
Saludos ;D
me servirá ahora que eh vuelto al XP (el 2003 fallaba cada rato e_e).Me pregunto quien te dará makedas si tu eres el que las da xD, bueh espero que el administrador te de 30 por que es un script que nunca había visto.
Saludos ;D
~Doku- Baneado

Página 1 de 1.
Permiso de este foro:
No puedes responder a temas en este foro.




por 