Project1
标题:
如何设置一个被动技能
[打印本页]
作者:
苹果星ねこ
时间:
2012-6-10 17:35
标题:
如何设置一个被动技能
本帖最后由 苹果星ねこ 于 2012-6-10 17:42 编辑
一个叫影分身的被动技能
拥有该技能的角色25%可以回避特技魔法攻击
发动后消耗500SP
怎么做
dsu_plus_rewardpost_czw
作者:
54酱
时间:
2012-6-10 17:40
试下修改公共事件以实现此功能...
作者:
明特·布兰马修
时间:
2012-6-10 19:17
如果是主动技能的话就会写脚本
被动技能没有考虑过
主站那个又不是楼主需要的
作者:
kangxi0109
时间:
2012-6-10 20:41
本帖最后由 kangxi0109 于 2012-6-12 18:20 编辑
在Game_Battler 3里头,关于● 应用特技效果 的部分,在对应位置做对应修改(以123号技能为例):
# 第二命中判定
eva = 8 * self.agi / user.dex + self.eva
hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
hit = self.cant_evade? ? 100 : hit
hit_result = (rand(100) < hit)
# 不确定的特技的情况下设置为有效标志
effective |= hit < 100
end
#---------------------------------------------------------添加部分↓
if self.is_a?(Game_Actor) && hit_result == true#对象为角色且命中的场合
if self.skills.include?(123) && self.sp >= 500#学会123号技能且sp不低于500的场合
m = rand(4)
if m == 3
self.sp -= 500 #消耗sp
hit_result = false #改为不命中
end
end
end
#---------------------------------------------------------
# 命中的情况下
if hit_result == true
# 威力 0 以外的物理攻击的情况下
if skill.power != 0 and skill.atk_f > 0
复制代码
判断是否有效的测试方法:
1.先将m= rand(3) 这里改为 m = 3 ,然后测试。如果脚本有效那么敌人的所有对己方的特技都会MISS;
2.再将m= rand(3) 这里改为 m = 1 ,然后测试。如果脚本有效那么敌人的所有对己方的特技基本都会命中。
3.如果上面的测试没有效果,那就说明在你的其他脚本出现了覆盖Game_Battler 3脚本的部分。
4.如果没有效果且查明没有覆盖,那就是你没有将脚本放在指定的位置上,又或者是复制错误。
5.最后,个人表示自己测试是没有问题的。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1