Project1

标题: 怎么知道敌人用几号特技攻击自己? [打印本页]

作者: wmzmtz    时间: 2016-12-23 12:54
标题: 怎么知道敌人用几号特技攻击自己?
本帖最后由 wmzmtz 于 2016-12-23 16:40 编辑

本来是问了两个问题的,不过第一个问题自己已经想出了解决方法,所以只剩下这个了:

己方受到敌人的特技(不是某一个特技,而是游戏中的所有特技)攻击后,执行一个公共事件(执行代码插在脚本哪里),然后在此事件中获取哪个特技(怎么获取特技ID),伤害多少(不知能不能直接获取,不行的话我也可以自己用伤害公式算个大概)

笨办法是每个特技都做公共事件,然而太麻烦了,有没有别的方法,谢谢了


作者: jiushiainilip19    时间: 2016-12-23 17:31
本帖最后由 jiushiainilip19 于 2016-12-23 17:33 编辑

简单点就是
当角色学会57号技能 在被敌人使用技能攻击的时候 有33%的几率学会这个技能
p "学会"+skill.name 这个只是一个显示 不想用可以删除 或者用SP伤害显示来书写中文
and not self.learn_skill(skill.id) 防止重复学习已经学会的技能

插入Game_Battler 3中
找到下面这段代码然后插入###号包围的部分。测试过有用了!
RUBY 代码复制
  1. # 伤害符号正确的情况下
  2.       if self.damage > 0
  3.         # 防御修正
  4.         if self.guarding?
  5.           self.damage /= 2
  6.         end
  7.       end
  8. ######################################################
  9.     if self.is_a?(Game_Actor) && self.skill_learn?(57) && rand(100)<33
  10.      self.learn_skill(skill.id) and p "学会"+skill.name and not self.learn_skill(skill.id)
  11.     end
  12. ########################################################






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