设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

使用了“蓄力”或“屏障”技能后,战斗脚本出现了错误

查看数: 1875 | 评论数: 5 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-2-2 14:52

正文摘要:

角色在战斗中使用了“蓄力”或“屏障”技能后脚本有时候会出现以下的错误 之前没有碰到,好像随着角色等级升高出现的频率越来越高。 怀疑是不是角色的能力突破了脚本里面的上限所以出现了这样的问题? 求高手指 ...

回复

RyanBern 发表于 2017-2-3 08:56:27
以下是你脚本461-465行
RUBY 代码复制
  1. if target.damage != nil and target.damage != "Miss"
  2.   @active_battler.hp += target.damage
  3.   @active_battler.damage = 0 - target.damage
  4.   @active_battler.damage_pop = true
  5. end


报错的含义是 string 无法强制转化为数字,因此不能和已有数字相加减。

target.damage 通常情况下为数字或者是 'Miss',但是由于条件中已经有 target.damage != "Miss",那么此时应该好好想想为什么还会进行到这里面。建议在出错的时候检查 target.damage 到底是什么值。如果嫌麻烦不想检查的话,可以将 461 行改成
RUBY 代码复制
  1. if target.damage.is_a?(Fixnum)

应该能解决问题。

点评

确实解决了问题!非常感谢详细的说明,让我这个编程小白也能理解。谢谢!  发表于 2017-2-4 01:03

评分

参与人数 1星屑 +10 收起 理由
gkl0510 + 10 我很赞同

查看全部评分

2357691704 发表于 2017-2-3 02:48:42
本帖最后由 2357691704 于 2017-2-3 02:58 编辑
gkl0510 发表于 2017-2-3 02:12
另外再想请教一下大神,由于我之前加了一个武器特效的脚本,可以让武器连击吸血等等。

在战斗中有时候有 ...


修改一下Game_Battler 3的应用物品效果的这里(如图)试试。

捕获.PNG (60.25 KB, 下载次数: 17)

捕获.PNG

点评

谢谢解答,但这里应该是对于物品使用的对象的伤害吧?我的困惑是,我给别人使用物品,别人加血了,我自己扣血了。。。。  发表于 2017-2-4 01:05
guoxiaomi 发表于 2017-2-3 02:35:43
可能是因为在出现miss的情况下,damage=“miss”,所以不能在算式中计算。

点评

谢谢热心解答!  发表于 2017-2-4 01:04
gkl0510 发表于 2017-2-3 02:12:39
2357691704 发表于 2017-2-3 00:56
target.damage改成 target.damage.to_f 试试。

另外再想请教一下大神,由于我之前加了一个武器特效的脚本,可以让武器连击吸血等等。

在战斗中有时候有bug,我打怪是会吸血,但是给自己用加血的物品反而被判定为扣血。
是否可以在这个脚本中写入阻止战斗中自己给自己或者自己人扣血的命令?

万分感谢!
2357691704 发表于 2017-2-3 00:56:01
本帖最后由 2357691704 于 2017-2-3 02:23 编辑

target.damage改成 target.damage.to_f 试试。


意思:

to_f
将数字变为浮点数(Float)。

to_s([base])
将整数变为十进制字符串形式。若使用了参数,则把整数变为以参数为基数的字符串形式。基数只能是 2 到 36 之间的数,若超出范围则引发 ArgumentError 异常。

大概可以理解为:to_s为有限数值,to_f为无限数值

点评

改了以后好像是没问题了,好神啊!这个命令代表什么意思呢? 非常感谢大神的帮助T-T  发表于 2017-2-3 01:56

评分

参与人数 2星屑 0 收起 理由
RyanBern -10 这个答案并不对,见楼下
gkl0510 + 10 我很赞同

查看全部评分

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-2 03:04

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表