Project1

标题: 求一个技能的做法 [打印本页]

作者: liyikunl    时间: 2012-7-31 17:58
标题: 求一个技能的做法
就是判断如果目标有中毒效果。伤害增加。dsu_plus_rewardpost_czw
作者: liyikunl    时间: 2012-7-31 18:06
如果有人会战斗中持续回蓝也顺便给我哈
作者: liyikunl    时间: 2012-7-31 18:47
,,,没人会吗
作者: 幻想中的鸡蛋    时间: 2012-7-31 19:41
本帖最后由 幻想中的鸡蛋 于 2012-7-31 21:55 编辑

在Game_Battler 3里伤害判定内添加
  1. if state?(3)  #括号内填写需要的状态id(也就是你说的中毒)
  2. if skill.id ==1   #这里填写特定技能的id,如果多个技能可以case,也可以将技能放在一起然后用>=a&<=b判定(a~b均为特定技能)
  3.   self.damage*=2   #这里是伤害乘算方法。倍数就是 *=倍数 增加就是 +=伤害
  4. end
  5. end
复制代码
建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击就是150 151行之间。
作者: liyikunl    时间: 2012-7-31 21:18
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

OK,我试试


‘‘──liyikunl于2012-7-31 21:18补充以下内容:

OK,我试试
’’
作者: liyikunl    时间: 2012-7-31 21:20
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

如果只是特定技能怎么办。


‘‘──liyikunl于2012-7-31 21:20补充以下内容:

如果只是特定技能怎么办。
’’
作者: liyikunl    时间: 2012-7-31 21:28
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

没效果啊


‘‘──liyikunl于2012-7-31 21:29补充以下内容:

没效果啊
’’
作者: liyikunl    时间: 2012-7-31 21:47
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

    if state?(8)  #括号内填写需要的技能id(也就是你说的中毒)
if skill.id ==1   #这里填写特定技能的id,如果多个技能可以case,也可以将技能放在一起然后用>=a&<=b判定(a~b均为特定技能)
  self.damage+=1000   #这里是伤害乘算方法。倍数就是 *=倍数 增加就是 +=伤害
end
end

我这么写的,可是目标流血的时候伤害没加啊,,
没有加成啊。8号技能是流血,添加的是流血状态,就是每回合掉血。1号技能是强力一击


‘‘──liyikunl于2012-7-31 21:47补充以下内容:

if state?(3)可以改成如果 多少号状态吗?
’’
作者: liyikunl    时间: 2012-7-31 21:59
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

谢谢了,想做个有点手法的战斗系统哈{:2_249:}
作者: liyikunl    时间: 2012-7-31 22:10
幻想中的鸡蛋 发表于 2012-7-31 19:41
在Game_Battler 3里伤害判定内添加建议添加在防御修正下面。具体来说,物理攻击就是64 65行之间,技能攻击 ...

成功了。谢谢。你的这个脚本可以推广到持续恢复的脚本上吗?

if @active_battler.state?(17) and @active_battler.hp >0  #51号状态恢复生命
      @active_battler.damage=-@active_battler.maxhp/10 #恢复生命百分比,这里设置为10%,也可设置固定值
      @active_battler.damage=@active_battler.damage.to_i
      @active_battler.hp-=@active_battler.damage
      @active_battler.animation_id = 21 #自动补血动画编号
      @active_battler.damage_pop = true
    end
作者: 幻想中的鸡蛋    时间: 2012-7-31 22:19
你的意思是在某个状态下,恢复生命的技能伤害增强么?如果这样,请“# 伤害符号正确的情况下”这一行上面加上对应技能、状态和增强数据,如果加减法记得变成-=。如果想要保证不会出错,建议外面嵌套if self.damage < 0 当然如果你会用else的话,放在上一个伤害增加的位置后面并补上else也是可以的。
作者: liyikunl    时间: 2012-7-31 22:21
幻想中的鸡蛋 发表于 2012-7-31 22:19
你的意思是在某个状态下,恢复生命的技能伤害增强么?如果这样,请“# 伤害符号正确的情况下”这一行上面加 ...

对啊,我自己再研究下,谢谢你了




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