Project1

标题: 「多样化的技能」「 0.1 版本」 [打印本页]

作者: 天地有正气    时间: 2014-3-1 16:13
标题: 「多样化的技能」「 0.1 版本」
本脚本实现了一些拥有特殊效果的技能。

欢迎报告bug!

以下是脚本信息。

版本号:0.1

更新日期:2014 - 2 - 28

更新内容:初版5个技能。

冲突率:很小

以下脚本,为了防止出错,首先 @person
  1. =begin
  2. 这个脚本实现了很多种的技能。
  3. 在脚本的各处设置技能编号,如果不用则
  4. 随意设置一个外太空编号就可以了。
  5. 重击:
  6. 造成会心一击,伤害*2。
  7. 同生共死:
  8. 仿照赛尔号技能,将对手生命降至跟自己
  9. 一样,如果比自己小则伤害为零。
  10. 审判天平:
  11. 3/4的概率恢复对方500hp,1/4概率秒杀
  12. 敌人。
  13. 同归于尽:
  14. 技能使用后,和对手同归于尽。
  15. 生命压制:
  16. 对手生命值上限下降50。
  17. =end
  18. #------------------------------------------
  19. module SKILL
  20.   def get_id(kind)
  21.     case kind
  22.     when "重击"
  23.       return [82] # 重击的编号
  24.     when "同生共死"
  25.       return [83] # 同生共死的编号
  26.     when "审判天平"
  27.       return [84] # 审判天平的编号
  28.     when "同归于尽"
  29.       return [85] # 同归于尽的编号
  30.     when "生命压制"
  31.       return [86] # 生命压制的编号
  32.     end  
  33.   end
  34. #------------------------------------------  
  35.   def zhongji(skill) # 重击
  36.     if get_id("重击").include?(skill.id)
  37.       self.damage *= 2
  38.       self.critical = true
  39.       self.hp -= self.damage
  40.     end  
  41.   end
  42. #------------------------------------------
  43.   def tongshenggongsi(user, skill) # 同生共死
  44.     if get_id("同生共死").include?(skill.id)
  45.       if user.hp >= self.hp
  46.         self.damage = 0
  47.       else
  48.         self.damage = self.hp - user.hp
  49.         self.hp -= self.damage
  50.       end
  51.     end
  52.   end
  53. #------------------------------------------
  54.   def shenpantianping(skill)
  55.     if get_id("审判天平").include?(skill.id)
  56.       if rand(4) == 0
  57.         self.damage = self.hp
  58.         self.hp -= self.damage
  59.       else
  60.         self.damage = -500
  61.         self.hp -= self.damage
  62.       end
  63.     end
  64.   end
  65. #------------------------------------------
  66.   def tongguiyujin(user, skill)
  67.     if get_id("同归于尽").include?(skill.id)
  68.       self.damage = 99999999999999999
  69.       self.hp = 0
  70.       user.damage = 99999999999999999
  71.       user.damage_pop = true
  72.       user.hp = 0
  73.       user.animation_id = skill.animation2_id
  74.     end
  75.   end  
  76. #------------------------------------------
  77.   def shengmingyazhi(skill)
  78.     if get_id("生命压制").include?(skill.id)
  79.       self.damage = 50
  80.       self.maxhp -= 60
  81.       self.damage_pop = true
  82.     end
  83.   end
  84. #------------------------------------------
  85. end  
  86. #------------------------------------------
  87. class Game_Battler
  88.   include SKILL
  89.   alias old_skill_effect skill_effect
  90.   def skill_effect(user, skill)
  91.     old_skill_effect(user, skill)
  92.     zhongji(skill)
  93.     tongshenggongsi(user, skill)
  94.     shenpantianping(skill)
  95.     tongguiyujin(user, skill)
  96.     shengmingyazhi(skill)
  97.   end
  98. end
  99. #------------------------------------------
复制代码
@protosssonny 0.0 0.0 0.0
作者: taroxd    时间: 2014-3-3 17:50
虽然我不是XP党没有XP软件不懂XP的脚本也没做测试,但是第80行不是应该是50么?

还有这鬼畜的方法名是怎么回事=。=不能用英文吗=。= 貌似也没看出为什么需要用include的方法=。=

吐槽完毕




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