| 赞 | 8  | 
 
| VIP | 20 | 
 
| 好人卡 | 126 | 
 
| 积分 | 117 | 
 
| 经验 | 33282 | 
 
| 最后登录 | 2025-11-1 | 
 
| 在线时间 | 1683 小时 | 
 
 
 
 
 
Lv4.逐梦者 
	- 梦石
 - 8 
 
        - 星屑
 - 3711 
 
        - 在线时间
 - 1683 小时
 
        - 注册时间
 - 2010-10-22
 
        - 帖子
 - 1067
 
 
   
 
 | 
	
 本帖最后由 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.最后,个人表示自己测试是没有问题的。 |   
 
 
 
 |