Project1

标题: 人物下方血条的显示 [打印本页]

作者: fjm    时间: 2019-4-20 20:23
标题: 人物下方血条的显示
本帖最后由 fjm 于 2019-4-20 20:24 编辑

如下面的图片,问下如何让血条一直在角色下方,现在的情况是受到伤害才出现血条,知道的告诉下,谢谢

RUBY 代码复制
  1. #==============================================================================
  2. # ■ Sprite_Mini_Hp_Bar
  3. #------------------------------------------------------------------------------
  4. #  バトル画面でダメージ時に表示する小型のHPバーです。
  5. #==============================================================================
  6.  
  7. class Sprite_Mini_Hp_Bar < Sprite
  8.   #--------------------------------------------------------------------------
  9.   # ● オブジェクト初期化
  10.   #     viewport : ビューポート
  11.   #--------------------------------------------------------------------------
  12.   def initialize(viewport, battler, character)
  13.     super(viewport)
  14.     self.bitmap = Cache.system("status_bar_hpsp_mini_red")
  15.     @max_hp = battler.mhp
  16.     @hp = battler.ori_hp_bar
  17.     @damage = battler.result.hp_damage
  18.     @show_fast = false
  19.     self.x = character.screen_x
  20.     self.y = character.screen_y
  21.     self.z = character.screen_z + 312
  22.     @wait = 25
  23.     @sprite_bar_green = Sprite.new(viewport)
  24.     @sprite_bar_green.bitmap = Cache.system("status_bar_hpsp_mini_green")
  25.     @sprite_bar_green.x = self.x + 2
  26.     @sprite_bar_green.y = self.y + 2
  27.     @sprite_bar_green.z = self.z + 32
  28.     if @damage == 0
  29.       self.visible = false
  30.       @sprite_bar_green.visible = false
  31.     end
  32.     update
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 解放
  36.   #--------------------------------------------------------------------------
  37.   def dispose
  38.     @sprite_bar_green.dispose
  39.     super
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 解放
  43.   #--------------------------------------------------------------------------
  44.   def show_fast(flag)
  45.     @show_fast = flag
  46.   end
  47.   #--------------------------------------------------------------------------
  48.   # ● フレーム更新
  49.   #--------------------------------------------------------------------------
  50.   def update
  51.     super
  52.     @wait = 0 if @wait < 0
  53.     now_hp = @hp - @damage * (25 - @wait) / 25
  54.     cx = (now_hp * 100 / @max_hp) / 4
  55.     cx = 25 if now_hp > @max_hp
  56.     @sprite_bar_green.src_rect.set(25 - cx, 0, cx, bitmap.height)
  57.     @wait -= @show_fast ? 2 : 1
  58.   end
  59. end




QQ图片88820190420202109.png (7.04 KB, 下载次数: 24)

QQ图片88820190420202109.png

作者: 活气寒露    时间: 2019-4-20 22:20
if @damage == 0
      self.visible = false
      @sprite_bar_green.visible = false
    end
改为
  self.visible = true
@sprite_bar_green.visible = true





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1