Últimos temas
» Iconos sueltos 2.0!!
por Greninja555 Hoy a las 12:30 pm

» Concurso de screens (Agosto '19) [Votaciones]
por Frägarach Hoy a las 10:46 am

» Inherited Sins [Juego Completo] [Definitive Edition]
por kermexrpg Hoy a las 4:48 am

» Chronicles from the Past
por fran0090 Hoy a las 3:58 am

» KMonstersTerrain XP
por kyonides Ayer a las 4:28 am

» Zaza no konpasu (La Brújula de Zaza) [VXACE]
por Pocari Lun Ago 19, 2019 9:07 pm

» ¿Retirar un estado al huir? (VX ACE)
por MCarlos15 Dom Ago 18, 2019 6:12 pm

» Tutorial puzzles
por Pocari Sáb Ago 17, 2019 3:18 pm

» ACTUALIZACIÓN Y FINALIZACIÓN DE "UN NUEVO MUNDO"
por RENDER201 Sáb Ago 17, 2019 5:47 am

» [XP,VX,ACE] Largos Script Calls
por kyonides Sáb Ago 17, 2019 5:01 am

» Script Restauracion de Estadisticas al subir de nivel
por kyonides Sáb Ago 17, 2019 4:18 am

» [RMVXA] Resurrected
por brrt Sáb Ago 17, 2019 3:39 am


[VX] Barra HP en Enemigos

Ir abajo

[VX] Barra HP en Enemigos Empty [VX] Barra HP en Enemigos

Mensaje por KRiZaLiD el Vie Mar 29, 2019 1:10 am

Al fin pude encontrar un script de barra de HP compatible con mi sistema de batalla (http://www.rmakercom.net/t136-vx-sistema-de-batalla-ffmq).

Nombre del Script: Enemy HP Gauge
Autor: STR15_
Imagen: 
               [VX] Barra HP en Enemigos AL0Ua6c

Código:
 #================================================= =============================
 # ★ RGSS2
 # STR15_ - Enemy HP Gauge v1.1 08/08/10
 # Soporte: http://strcatyou.u-abel.net/
 #
 # ・ Muestra el indicador de HP de los personajes enemigos.
 # ・ Puedes ocultar el indicador de HP para cada personaje enemigo ingresando
 #  la cadena de caracteres que se encuentra debajo, en el cuadro de notas de
 #  la base de datos de los personajes enemigos.
 #
 #------------------------------------------------- -----------------------------
 #
 # Historial de Actualizaciones
 #
 # ◇ 1.0 → 1.1 
 # El indicador se puede mostrar cuando el cursor se mueve al objetivo sólo
 # cuando se usa en combinación con STR11_XP (es un sistema de batalla),
 # por lo que se libera el error de actualizar el tiempo de actualización
 # del indicador a v0.9.
 # STR11_XP (https://peachround.com/rgss2/str11/)
 #
 # ◇ 0.9 → 1.0
 # Se corrigió el error de que los indicadores no aparecen incluso si los
 # enemigos refactorizados con indicadores invisibles se convierten en
 # enemigos con la visualización de indicadores. La especificación de tiempo
 # de actualización de los indicadores ha vuelto a v0.8 (quizás ^^;).
 #
 # ◇ 0.8 → 0.9
 # Operación de reducción de peso. Cambio de especificación del tiempo de
 # actualización del medidor.
 #
 #================================================= =============================

 #================================================= =============================
 # ■ Sprite_Battler
 #================================================= =============================
class Sprite_Battler < Sprite_Base

  # Escribir en el cuadro "Notas" del enemigo para no mostrar la barra.
  GAUGE_M = "<nobar>"
 
  # Ajustar el color de fondo [Color del borde, Color en marco]
  GAUGE_BC = [Color.new(0,0,0), Color.new(32,48,64)]
 
  # Gradiente de color del indicador [izquierda, derecha]
  GAUGE_GC = [Color.new(64,128,96), Color.new(96,192,160)]
 
  # Ajustes de Posición de la barra
  GAUGE_W = 96  # Ancho del calibre
  GAUGE_H = 6    # Altura del indicador
  GAUGE_S = 8    # Velocidad del indicador 2 o más entero
  GAUGE_T = 860  # Tiempo de visualización del medidor 510 o más
  GAUGE_O = 16  # Valor de reducción de opacidad del medidor
  #
  GAUGE_V = false # Pantalla de indicador cuando el cursor está sobre el objetivo.
                  # Por favor, no lo habilites si no se introduce la batalla
                  # de estilo XP.
  #--------------------------------------------------------------------------
  # Criar
  #--------------------------------------------------------------------------
  def create_enhpgauge
    g_width = GAUGE_W
    g_height = GAUGE_H
    f_color = GAUGE_BC
    g_color = GAUGE_GC
    bitmap = Bitmap.new(g_width, g_height * 2)
    bitmap.fill_rect(0, 0, g_width, g_height, f_color[0])
    bitmap.fill_rect(1, 1, g_width - 2, g_height - 2, f_color[1])
    bitmap.gradient_fill_rect(1, g_height + 1, g_width - 2, g_height - 2,
                              g_color[0], g_color[1])
    @hp_gauge = [Sprite.new, Sprite.new]
    for i in 0..1
      sprite = @hp_gauge[i]
      sprite.viewport = self.viewport
      sprite.bitmap = bitmap
      sprite.src_rect.set(0, 0, g_width, g_height)
      sprite.src_rect.y = g_height if i == 1
      sprite.x = @battler.screen_x
      sprite.y = @battler.screen_y - 8
      sprite.ox = g_width / 2
      sprite.oy = g_height / 2
      sprite.z = 200
      sprite.z += 20 if i == 1
      sprite.opacity = 0
    end
    @enid = @battler.enemy_id
    @hp = @battler.hp
    @gauge_width = GAUGE_W + 1
    @gauge_opacity = 0
  end
  #--------------------------------------------------------------------------
  # Atualizar a barra
  #--------------------------------------------------------------------------
  def enhpgauge_update
    if @enid != @battler.enemy_id
      @enid = @battler.enemy_id
      @gauge_visible = true
      @gauge_visible = false if $data_enemies[@enid].note.include?(GAUGE_M)
      for i in @hp_gauge do i.visible = @gauge_visible end
      end
    return unless @gauge_visible
    if @hp != @battler.hp
      g_width = (@battler.hp / (@battler.maxhp * 1.0))
      @gauge_width = ((GAUGE_W * g_width) + 1).truncate
      @gauge_opacity = GAUGE_T
      @hp = @battler.hp
    end
    g_width = @hp_gauge[1].src_rect.width
    speed = GAUGE_S
    rect = @hp_gauge[1].src_rect
    rect.width = (@gauge_width + (g_width * (speed - 1))) / speed
    if rect.width != @gauge_width
      if rect.width > @gauge_width
        rect.width -= 1
      else
        rect.width += 1
      end
    end
    rect.width = 2 if rect.width <= 1 and @hp > 0
    if GAUGE_V and @battler.cursor_flash
      @gauge_opacity += GAUGE_O * 2 if @gauge_opacity <= GAUGE_T / 2
    else
      @gauge_opacity -= GAUGE_O if @gauge_opacity > 0
    end
    # “§–¾“x“K—p
    for i in @hp_gauge do i.opacity = @gauge_opacity end
  end
  #--------------------------------------------------------------------------
  # Iniciar Objeto (alias)
  #--------------------------------------------------------------------------
  alias initialize_str15 initialize
  def initialize(viewport, battler = nil)
    initialize_str15(viewport, battler)
    if @battler.is_a?(Game_Enemy)
      create_enhpgauge
      @gauge_visible = true
      @gauge_visible = false if $data_enemies[@enid].note.include?(GAUGE_M)
      for i in @hp_gauge do i.visible = @gauge_visible end
    end
  end
  #--------------------------------------------------------------------------
  # Liberação (alias)
  #--------------------------------------------------------------------------
  alias dispose_str15 dispose
  def dispose
    dispose_str15
    if @battler.is_a?(Game_Enemy)
      @hp_gauge[0].bitmap.dispose
      @hp_gauge[0].dispose
      @hp_gauge[1].dispose
    end
  end
  #--------------------------------------------------------------------------
  # Atualizar Frame (alias)
  #--------------------------------------------------------------------------
  alias update_str15 update
  def update
    update_str15
    enhpgauge_update if @battler.is_a?(Game_Enemy)
  end
end

No olviden los créditos a STR15.

Que lo disfruten, saludos
KriZ

_________________
Mi Proyecto:
[VX] Barra HP en Enemigos VqJJJp

[VX] Barra HP en Enemigos AnrEWG[VX] Barra HP en Enemigos UqGVnKv

KRiZaLiD apoya:
[VX] Barra HP en Enemigos 3gqmui[VX] Barra HP en Enemigos GJ7qjn[VX] Barra HP en Enemigos ZhwnH1[VX] Barra HP en Enemigos NT6Pp7[VX] Barra HP en Enemigos WXmSrO[VX] Barra HP en Enemigos CKEALv
KRiZaLiD
KRiZaLiD
Moderador
Moderador

Masculino
Chile
RPG Maker : Vx
Mensajes : 854
Monedas : 4329
Reputación : 110
Edad : 34
Localización : Florida (pueblo fantasma), Chile

Volver arriba Ir abajo

[VX] Barra HP en Enemigos Empty Re: [VX] Barra HP en Enemigos

Mensaje por Muzgar el Vie Mar 29, 2019 5:58 pm

Genial Kriz!

Como siempre muchas gracias por todos estos aportes. Seguro que a más de uno le son de utilidad. Yo mismo lo habría usado si siguiese usando el VX.

Gracias por toda la ayuda

_________________
[VX] Barra HP en Enemigos 8jqSjBi
[VX] Barra HP en Enemigos A4IkPGg
Apoya wild wars poniendo esta barra en tu firma
[VX] Barra HP en Enemigos 6Q3Q0PD

Muzgar apoya a...
Spoiler:
[VX] Barra HP en Enemigos PZdiBZY
[VX] Barra HP en Enemigos 2d82ir5
Muzgar
Muzgar
Admin
Admin

Rmakercom
RPG Maker : Ace
Mensajes : 1406
Monedas : 1347
Reputación : 181

Volver arriba Ir abajo

Volver arriba

- Temas similares

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