查看: 3070|回复: 4

[RMVA发布] 设置队员没死就无敌的角色/敌人

[复制链接]

无限の剣制

梦石
0
星屑
10445
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2014-8-17 19:03:23 | 显示全部楼层 |阅读模式

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

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

×
VA区提问的帖子 @rjterry @taroxd
使用方法是在角色/敌人的备注栏里备注<我不是杂鱼>
[pre lang="ruby" line="1"]class Game_Enemy < Game_Battler
  def damage_valid?
    return true if $game_troop.alive_members == [self]
    return false if $data_enemies[@enemy_id].note.include?("<我不是杂鱼>")
    return true
  end
end

class Game_Actor

  def damage_valid?
    return true if $game_party.alive_members == [self]
    return false if $data_actors[@actor_id].note.include?("<我不是杂鱼>")
    return true
  end

end

class Game_Battler

  def damage_valid?
    true
  end

  alias assign_hp_20140817 hp=
  def hp=(hp)
    assign_hp_20140817(hp) if hp >= @hp || damage_valid?
  end

  alias mdv_20140817 make_damage_value
  def make_damage_value(user, item)
    mdv_20140817(user, item) if damage_valid?
  end

end
[/pre]
出问题不保修(ΦωΦ)

评分

参与人数 1星屑 +275 收起 理由
怪蜀黍 + 275 发布奖励

查看全部评分

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2014-8-17 19:06:50 | 显示全部楼层
本帖最后由 taroxd 于 2014-8-17 19:13 编辑


不妨用更统一的形式定义:

[pre lang="ruby" line="1"]
class Game_Battler

  def damage_valid?
    !(actor? ? actor : enemy).note.include?('<我不是杂鱼>') ||
      friends_unit.alive_members == [self]
  end

  alias assign_hp_20140817 hp=
  def hp=(hp)
    assign_hp_20140817(hp) if hp >= @hp || damage_valid?
  end

  alias mdv_20140817 make_damage_value
  def make_damage_value(user, item)
    mdv_20140817(user, item) if damage_valid?
  end

end[/pre]

点评

另外说一声,我回答问题的时候是我偷懒,hp=方法最好写在 Game_BattlerBase  发表于 2014-8-17 19:24
(ΦωΦ)上面要改么  发表于 2014-8-17 19:22
(´゚Д゚`).....哦(ΦωΦ)管他呢  发表于 2014-8-17 19:08

评分

参与人数 1星屑 +100 收起 理由
怪蜀黍 + 100 整理奖励!

查看全部评分

回复

使用道具 举报

梦石
0
星屑
49
在线时间
140 小时
注册时间
2009-10-28
回帖
88
发表于 2014-8-17 19:19:27 | 显示全部楼层
你真好 谢了哈   冲这我也得坚持做完游戏啊。。。。。
回复

使用道具 举报

梦石
0
星屑
95
在线时间
97 小时
注册时间
2008-8-28
回帖
27
发表于 2014-8-18 11:36:20 | 显示全部楼层
我也刚想要用这个呢

点评

用楼下@taroxd 触的 更统一的形式定义。看起来也舒服点  发表于 2014-8-18 11:38
回复

使用道具 举报

梦石
0
星屑
95
在线时间
97 小时
注册时间
2008-8-28
回帖
27
发表于 2014-8-18 11:51:12 | 显示全部楼层
那请问如果想达成“有队友存活时,该角色不会被攻击”要如何修改呢?
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部