Project1

标题: 关于技能必定暴击的问题 [打印本页]

作者: 许诺言    时间: 2015-7-7 18:08
标题: 关于技能必定暴击的问题
我找到了一个23技能特效的东西,里面有一段

十八、必定会心一击(效果:永远造成会心一击):
for t in $scene.target_battlers
    if t.damage.is_a?(Integer)
        t.critical=true
        t.hp-=t.damage
        t.damage*=2
    end
end


添加在我的工程里的时候 使用技能 出现了错误 如下




我到底哪里出错了?
作者: RyanBern    时间: 2015-7-7 19:08
在Scene_Battle1的def main前添加
RUBY 代码复制
  1. attr_reader :target_battlers

作者: 许诺言    时间: 2015-7-7 19:18
RyanBern 发表于 2015-7-7 19:08
在Scene_Battle1的def main前添加
attr_reader :target_battlers[/pre]

谢谢!跟着你的方法修改了 但是还是出现一样的错误



以下附上我的工程 麻烦你帮我看看

雷克斯战役.rar (250.71 KB, 下载次数: 77)


作者: 许诺言    时间: 2015-7-7 19:50
我用了一个新的工程 只尝试这个代码 依然是同一个错误
作者: RyanBern    时间: 2015-7-7 21:39
许诺言 发表于 2015-7-7 19:50
我用了一个新的工程 只尝试这个代码 依然是同一个错误

不知道为什么会报错呢,我这边确实是不报错的。不过,这种方法不能实现“必定会心一击”,刚才测试了一下没有效果。我提供另外的一种解决方案吧。
先设置一个属性,名称为“必定会心一击”,然后设置特技,将此属性勾选。
然后,在Game_Battler3#def skill_effect的if self.damage > 0(你给的工程中的146行后)添加如下部分:
RUBY 代码复制
  1. if skill.element_set.include?(必定会心一击属性序号)
  2.   self.damage *= 2
  3.   self.critical = true
  4. end

其中,“必定会心一击属性序号”就是此属性的位置,第几个就填几。
作者: 许诺言    时间: 2015-7-7 22:59
RyanBern 发表于 2015-7-7 21:39
不知道为什么会报错呢,我这边确实是不报错的。不过,这种方法不能实现“必定会心一击”,刚才测试了一下 ...

我已经按照你的方法 添加了代码 但是尝试后没有会心一击的效果

以下附上修改后的工程

雷克斯战役.rar (247.92 KB, 下载次数: 69)

先在这里谢谢你,因为会心一击的调整,对我这个游戏比较重要。
作者: RyanBern    时间: 2015-7-8 00:44
许诺言 发表于 2015-7-7 22:59
我已经按照你的方法 添加了代码 但是尝试后没有会心一击的效果

以下附上修改后的工程

没有效果的原因是你在脚本编辑器的末尾把没有改动的Game_Battler3又备份了一次,所以你之前改过的方法被盖掉了,当然没效果。
另外,刚才测试了一下,上面那段脚本还是加在这里为好:

另外附工程:
雷克斯战役.rar (244.01 KB, 下载次数: 77)
作者: 许诺言    时间: 2015-7-8 01:26
RyanBern 发表于 2015-7-8 00:44
没有效果的原因是你在脚本编辑器的末尾把没有改动的Game_Battler3又备份了一次,所以你之前改过的方法被 ...

我在没下载工程之前 在自己的工程内修改了内容
发现没有暴击效果

下载你的工程后 发现我的RMXP版本是旧版102版本
修改版本号之后就能有暴击效果

这个会不会跟我的RMXP版本有关系?




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