设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2108|回复: 4
打印 上一主题 下一主题

[已经解决] 关于动态敌人的脚本如何使用的问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1629
在线时间
188 小时
注册时间
2018-6-9
帖子
18
跳转到指定楼层
1
发表于 2019-1-5 18:01:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
我是一名萌新,现在在尝试做RPG游戏,然后这边一直在收集脚本,在图书馆这边发现了芙蕾娅的脚本,然后就直接套用了,结果不知道动态敌人是如何使用的
有没有大佬可以告诉我一下怎么使用?

芙蕾娅大佬的动态敌人脚本

Lv4.逐梦者

梦石
0
星屑
19284
在线时间
3074 小时
注册时间
2013-1-11
帖子
1288
2
发表于 2019-1-5 21:02:07 | 只看该作者
在敌人的备注里写上
<BehaviorType X> 或者 <动态种类 X>
X:1就是呼吸效果,2就是透明化效果

评分

参与人数 1星屑 +10 收起 理由
VIPArcher + 10 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1629
在线时间
188 小时
注册时间
2018-6-9
帖子
18
3
 楼主| 发表于 2019-1-5 21:54:03 | 只看该作者
张咚咚 发表于 2019-1-5 21:02
在敌人的备注里写上
或者
X:1就是呼吸效果,2就是透明化效果

明白了 谢谢大佬
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1629
在线时间
188 小时
注册时间
2018-6-9
帖子
18
4
 楼主| 发表于 2019-1-11 19:51:06 | 只看该作者
张咚咚 发表于 2019-1-5 21:02
在敌人的备注里写上
或者
X:1就是呼吸效果,2就是透明化效果

大佬大佬,还有这个,也是芙蕾娅大佬的脚本,战斗血条显示的,加了进去游戏里面也没有显示什么,不清楚是备注还是什么
#==============================================================================
# F08 - 战斗敌人显示血条 - By芙蕾娅
#------------------------------------------------------------------------------
#  ★ - 新增  ☆ - 修改  ■ - 删除 ● - 无变更
#==============================================================================
module Freya
  # 隐藏HP的文本
  HideGaugeText = "Hide_Gauge"
  # 血条颜色
  EnemyHPGaugeColor1 = Color.new(64,128,96)
  EnemyHPGaugeColor2 = Color.new(96,192,160)
end
#==============================================================================
# ■ Sprite_Battler_HP
#------------------------------------------------------------------------------
#  显示战斗者的生命在战斗者的精灵下面。
#==============================================================================
class Sprite_Battler_HP < Sprite
  #--------------------------------------------------------------------------
  # ● 初始化对象
  #--------------------------------------------------------------------------
  def initialize(viewport,battler)
    super(viewport)
    @battler = battler
    @last_hp = 0
    create_bitmap
    update
  end
  #--------------------------------------------------------------------------
  # ● 释放
  #--------------------------------------------------------------------------
  def dispose
    self.bitmap.dispose
    super
  end
  #--------------------------------------------------------------------------
  # ● 生成位图
  #--------------------------------------------------------------------------
  def create_bitmap
    @last_hp = @battler.hp
    bw = 96
    bh = 6
    self.bitmap = Bitmap.new(bw, bh)
    self.bitmap.fill_rect(0, 0, bw, bh, Color.new(32,32,64))
    if Freya::Gauge_Type.nil?
      hp = ((bw) * @battler.hp_rate).to_i
      self.bitmap.gradient_fill_rect(0, 0, hp, bh, Freya::EnemyHPGaugeColor1, Freya::EnemyHPGaugeColor2)
    elsif Freya::Gauge_Type == 0
    elsif Freya::Gauge_Type == 1
      hp = ((width - 2) * @battler.hp_rate).to_i
      self.bitmap.gradient_fill_rect(1, 1, hp, bh - 2, Freya::EnemyHPGaugeColor1, Freya::EnemyHPGaugeColor2)
    elsif Freya::Gauge_Type == 2
      hp = ((width) * @battler.hp_rate).to_i
      self.bitmap.gradient_fill_rect(0, 0, hp / 2, bh, Freya::EnemyHPGaugeColor1, Freya::EnemyHPGaugeColor2)
      self.bitmap.gradient_fill_rect(hp / 2, 0, hp / 2, bh, Freya::EnemyHPGaugeColor2, Freya::EnemyHPGaugeColor1)
    elsif Freya::Gauge_Type == 3
      hp = ((width - 2) * @battler.hp_rate).to_i
      self.bitmap.gradient_fill_rect(1, 1, hp / 2, bh - 2, Freya::EnemyHPGaugeColor1, Freya::EnemyHPGaugeColor2)
      self.bitmap.gradient_fill_rect((hp / 2) + 1, 1, hp / 2, bh - 2, Freya::EnemyHPGaugeColor2, Freya::EnemyHPGaugeColor1)
    end
  end
  #--------------------------------------------------------------------------
  # ● 更新画面
  #--------------------------------------------------------------------------
  def update
    super
    unless self.bitmap.nil?
      self.x = @battler.screen_x - self.width / 2
      self.y = @battler.screen_y
      create_bitmap if @last_hp != @battler.hp
      hide = $data_enemies[@battler.enemy_id].note.include?(Freya::HideGaugeText)
      if @battler.hp == 0 or hide
        self.opacity = 0
      elsif @battler.hp > 0 && !hide
        self.opacity = 255
      end
    end
  end
end

#==============================================================================
# ■ Sprite_Battler
#------------------------------------------------------------------------------
#  显示战斗者的精灵。根据 Game_Battler 类的实例自动变化。
#==============================================================================
class Sprite_Battler < Sprite_Base
  #--------------------------------------------------------------------------
  # ☆ 初始化对象
  #--------------------------------------------------------------------------
  alias initialize_freya_enemy_hp initialize
  def initialize(viewport, battler = nil)
    initialize_freya_enemy_hp(viewport, battler)
    if @battler.is_a?(Game_Enemy)
      @hp_gauge = Sprite_Battler_HP.new(viewport, battler)
    end
  end
  #--------------------------------------------------------------------------
  # ☆ 释放
  #--------------------------------------------------------------------------
  alias dispose_freya_enemy_hp dispose
  def dispose
    dispose_freya_enemy_hp
    unless @hp_gauge.nil?
      @hp_gauge.dispose
    end
  end
  #--------------------------------------------------------------------------
  # ☆ 更新画面
  #--------------------------------------------------------------------------
  alias update_freya_enemy_hp update
  def update
    update_freya_enemy_hp
    @hp_gauge.update unless @hp_gauge.nil?
  end
end

点评

在module Freya里加上Gauge_Type = 1,敌人显示血条,备注写Hide_Gauge的敌人不显示血条。还有,不要一帖多问。  发表于 2019-1-11 20:04
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-25 13:35

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表