Project1

标题: 求空手有伤害,升级加伤害的脚本 [打印本页]

作者: 母乳到六岁    时间: 2011-8-25 21:42
标题: 求空手有伤害,升级加伤害的脚本
求各位大大帮我写个脚本或者告知如何修改

人物出生自带1点伤害

每升一级自动加1点伤害

与属性 和装备无关

我搜了很久没找到,柳大的那个脚本有点不适用

还请大家帮下忙,谢谢了 dsu_plus_rewardpost_czw
作者: 龙腾天下    时间: 2011-8-25 21:54
本帖最后由 龙腾天下 于 2011-8-26 18:17 编辑

传送门附上供参考:
http://rpg.blue/forum.php?mod=vi ... =%E7%A9%BA%E6%89%8B

另外,升级加伤害,给你个思路,
这里不是有句 ARM_ATK[1] = 0.6 吗?

只要把 ARM_ATK[1] = 0.6 * i


$game_actor.level = i

这样伤害就会随等级的提升而加强。。

作者: 母乳到六岁    时间: 2011-8-25 22:02
本人刚接触RMXP不久... 脚本也正在学习中     所以就可耻的伸一下手吧~
作者: 海盗    时间: 2011-8-25 22:23
在Game_Actor 的269行  return weapon != nil ? weapon.atk :0(这是初始不带武器的状态下的攻击力)
如果要升级提升攻击力的话,可能有点难以实现,因为RMXP的攻击力是由力量和武器的数值来获得攻击力的

作者: 母乳到六岁    时间: 2011-8-26 11:32
在论坛上找到的那个脚本虽然修改一下凑合能用    但有个问题     拿上武器后攻击变0  脱了又有伤害了。。。
作者: R-零    时间: 2011-8-26 11:40
是要这样么,我相信就算不会脚本也会用的
  1. $每级攻击伤害增量 = 1

  2. class Game_Battler
  3.   #--------------------------------------------------------------------------
  4.   # ● 应用通常攻击效果
  5.   #     attacker : 攻击者 (battler)
  6.   #--------------------------------------------------------------------------
  7.   def attack_effect(attacker)
  8.     # 清除会心一击标志
  9.     self.critical = false
  10.     # 第一命中判定
  11.     hit_result = (rand(100) < attacker.hit)
  12.     # 命中的情况下
  13.     if hit_result == true
  14.       # 计算基本伤害
  15.       atk = [attacker.atk - self.pdef / 2, 0].max
  16.       self.damage = atk * (20 + attacker.str) / 20
  17.       # 属性修正
  18.       self.damage *= elements_correct(attacker.element_set)
  19.       self.damage /= 100
  20.       self.damage += $每级攻击伤害增量 * attacker.level if attacker.is_a?(Game_Actor)
  21.       # 伤害符号正确的情况下
  22.       if self.damage > 0
  23.         # 会心一击修正
  24.         if rand(100) < 4 * attacker.dex / self.agi
  25.           self.damage *= 2
  26.           self.critical = true
  27.         end
  28.         # 防御修正
  29.         if self.guarding?
  30.           self.damage /= 2
  31.         end
  32.       end
  33.       # 分散
  34.       if self.damage.abs > 0
  35.         amp = [self.damage.abs * 15 / 100, 1].max
  36.         self.damage += rand(amp+1) + rand(amp+1) - amp
  37.       end
  38.       # 第二命中判定
  39.       eva = 8 * self.agi / attacker.dex + self.eva
  40.       hit = self.damage < 0 ? 100 : 100 - eva
  41.       hit = self.cant_evade? ? 100 : hit
  42.       hit_result = (rand(100) < hit)
  43.     end
  44.     # 命中的情况下
  45.     if hit_result == true
  46.       # 状态冲击解除
  47.       remove_states_shock
  48.       # HP 的伤害计算
  49.       self.hp -= self.damage
  50.       # 状态变化
  51.       @state_changed = false
  52.       states_plus(attacker.plus_state_set)
  53.       states_minus(attacker.minus_state_set)
  54.     # Miss 的情况下
  55.     else
  56.       # 伤害设置为 "Miss"
  57.       self.damage = "Miss"
  58.       # 清除会心一击标志
  59.       self.critical = false
  60.     end
  61.     # 过程结束
  62.     return true
  63.   end
  64. end
复制代码

作者: 后知后觉    时间: 2011-8-26 12:57
楼主说的 伤害 应该就是 攻击力 吧?
把 Game_Actor 的第 269 行改成这样
  1.     return weapon != nil ? weapon.atk + @level : @level
复制代码





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