查看: 1830|回复: 0

[已经过期] 队友存在即无敌的脚本修改出现的问题

[复制链接]
梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2014-10-3 17:49:51 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 chd114 于 2014-10-3 01:02 编辑

[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]

    @team=[]
    (0...$game_party.alive_members.size).all?{|i|@team.push($game_party.alive_members.id)}
    if @actor_id==19
    return false unless @team.include?(20)#20号队友存在时19号队友不受到伤害
    end

    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. <我不是杂鱼>
复制代码
就能达到队友存在即无敌的效果,但是我想修改成指定20号队友存在时19号队友无敌的效果,可[pre lang="ruby" line="1"]return false unless @team.include?(20)[/pre]的return false没效果,如果改成return true又会变成无论20号队友在不在都无敌···
@taroxd @invwindy @VIPArcher  

点评

不会脚本乱改个毛线  发表于 2014-10-4 11:57
不会脚本乱改个毛线  发表于 2014-10-4 11:56
↓原版效果太强了···  发表于 2014-10-3 18:59
不会脚本乱改个毛线  发表于 2014-10-3 18:43
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

在本版发帖返回顶部