RPG Maker Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
Naxus
Naxus
Veterano
Veterano
Masculino Mensagens : 500
Reputação : 68

Barra de HP para Inimigos Empty Barra de HP para Inimigos

Sex Out 08, 2010 2:04 am
Reputação da mensagem: 100% (4 votos)


Barra de HP para Inimigos
por Star

Introdução
Um script que faz os monstros mostrarem uma barra de hp quando atacados.

Características

  • Inimigos mostram uma barra de HP, Ela aparece quando eles levam um hit.

Screenshots
Barra de HP para Inimigos 25116d1246399830t-barras-de-hp-dos-

Como usar
Cole acima do main, existem valores configuráveis no script

Script
Código:
 #================================================= =============================
 # ★ RGSS2
 #enemy # STR15_ HP Gauge v1.1 08/08/10
 # Suporte: http://strcatyou.u-abel.net/
 #
 # Inimigos mostram uma barra de HP.
 # Ela aparece quando eles levam um hit.
 #
 #------------------------------------------------- -----------------------------
 #
 # O que tem de novo?
 # ◇ 1.0 → 1.1 
 # O cursor.
 # Agora nós podemos ver a barra.
 # Barra atualizada porque o tempo de resposta não estava correto.
 # ◇ 0.9 → 1.0
 # Agora consertada a parte que não podia se ver a barra.
 # ◇ 0.8 → 0.9
 # Trabalho mais leve.
 # Melhorado o tempo de resposta.
 #
 #================================================= =============================

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

  # Adicione ao campo "notas" do imigo para não mostrar a barra
  GAUGE_M = "<nobar>"

  GAUGE_BC = [Color.new(0,0,0), Color.new(32,48,64)]

  GAUGE_GC = [Color.new(64,128,96), Color.new(96,192,160)]
  # Ajustes de Posição da barra
  GAUGE_W = 96
  GAUGE_H = 6 
  GAUGE_S = 8
  GAUGE_T = 640
  GAUGE_O = 16
  #
  GAUGE_V = false
  #--------------------------------------------------------------------------
  # 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

Créditos e Agradecimentos

  • Feito por Star
dienifer
dienifer
Membro
Membro
Feminino Mensagens : 393
Reputação : 41

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sex Out 08, 2010 2:23 am
muito bom script naxus obrigado por disponilizar + rep
SteveTheCreeper
SteveTheCreeper
Membro
Membro
Masculino Mensagens : 476
Reputação : 24

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sex Out 08, 2010 1:43 pm
=D Vou usa-lo com certeza
Rep+
ciberpyrata
ciberpyrata
Novo Membro
Novo Membro
Masculino Mensagens : 123
Reputação : 15

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sex Out 08, 2010 4:11 pm
Usá-lo-ei, vlw.

Sarli escreveu:
ciberpyrata escreveu:Usá-lo-ei, vlw.

nova regra,linguagem culta não será permitida
Cyber sem floods porfavor

Malz, não sabia que agradecer o cara era flood...
É Ciber com i, não y...


Última edição por ciberpyrata em Sex Out 08, 2010 8:10 pm, editado 1 vez(es) (Motivo da edição : Editado para não criar outra mensagem e ser banido por flood.)
SteveTheCreeper
SteveTheCreeper
Membro
Membro
Masculino Mensagens : 476
Reputação : 24

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sex Out 08, 2010 5:53 pm
ciberpyrata escreveu:Usá-lo-ei, vlw.

nova regra,linguagem culta não será permitida
Cyber sem floods porfavor
Alucard_2
Alucard_2
Administrador
Administrador
Masculino Mensagens : 823
Reputação : 57
http://www.não tenho site ainda.com.nada

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 4:27 am
Extremamente parecido com Persona, com exceção das cores e do formato ser retangular em vez de oval, muito bom, +rep por disponibilizar.
RafaelSOPA
RafaelSOPA
Membro
Membro
Masculino Mensagens : 339
Reputação : 53

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 8:03 am
Nossa muito boom, esse script, vai para a minha pasta secreta Ralhp H
+rep por disponibilizar.
SteveTheCreeper
SteveTheCreeper
Membro
Membro
Masculino Mensagens : 476
Reputação : 24

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 10:09 am
Perdão Ciber pensei que estava me corrigindo,por isso falei sem flood porque de qualquer jeito os dois estavam certos.

Esqueci de dar rep Poring Ops!
REP+ por disponibilizar
WweBR
WweBR
Novato
Novato
Masculino Mensagens : 17
Reputação : 12

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 10:52 am
Sarli escreveu:
ciberpyrata escreveu:Usá-lo-ei, vlw.

nova regra,linguagem culta não será permitida
Cyber sem floods porfavor

Essa eu num entendi :ss
O cara usou uma linguagem culta, e não pode :/
Quer dizer que se eu falar "Usá-lo-ei" serei banido :P

enfim....

@Topic
Muito bom o script, quem sabe eu uso em algum projeto :D

Falowz ~//
SteveTheCreeper
SteveTheCreeper
Membro
Membro
Masculino Mensagens : 476
Reputação : 24

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 11:33 am
@WweBR
KKKKKKK' cara pensei que ele tava me corrigindo porque não falei daquele jeito aquilo que escrevi era uma piada,lol.
Jhonn
Jhonn
Novo Membro
Novo Membro
Masculino Mensagens : 114
Reputação : 48

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Sáb Out 09, 2010 12:30 pm
Só para constar, esse script também funciona no RMVX (se não me engano ele foi escrito para RMVX, mas parece funcionar no RMXP também).
Conteúdo patrocinado

Barra de HP para Inimigos Empty Re: Barra de HP para Inimigos

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos