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

Project1

 找回密码
 注册会员
搜索
查看: 1456|回复: 5
打印 上一主题 下一主题

[已经解决] maxhp 血条 问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
322 小时
注册时间
2011-6-24
帖子
274
跳转到指定楼层
1
发表于 2012-12-14 13:43:04 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 sblkhgm 于 2012-12-14 20:02 编辑

我自己设置了个血条  neihp  ,想把他  替换 maxhp,
  1.   # ● 更改 HP
  2.   #     hp : 新的 HP
  3.   #--------------------------------------------------------------------------
  4.   def hp=(hp)
  5.    # @hp = [[hp, maxhp].min, 0].max   原来的#############
  6.     @hp = [[hp, neihp].min, 0].max      改的##########
  7.     # 解除附加的战斗不能状态
复制代码
在事件里加血没问题  可是在战斗中  攻击敌人是 就出错




这样怎么改

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
2
发表于 2012-12-14 16:06:20 | 只看该作者
本帖最后由 j433463 于 2012-12-14 16:10 编辑

maxhp 是内定就有的,neihp 战斗的脚本并没有定义它吧?

undefined local variable or method 'neihp' #<--未定义的局部变量或方法

不是把 maxhp 改成 neihp 就可以了,内定没有的要自己定义,譬如:
  1. def neihp
  2.   retuen 200
  3. end
复制代码
这样执行时游戏才知道 neihp 的值是 200,
不然 rm 是不认识 neihp 是什么东东。
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
94 小时
注册时间
2011-7-2
帖子
79
3
发表于 2012-12-14 17:26:42 | 只看该作者
服了,LZ  “@hp = [[hp, maxhp].min, 0].max”和血条一毛钱的关系都没有,OK?
这部分的内容是用在【战斗者HP变化时】,先把 [变更的血量] 和 [战斗者的MAXHP] 相比,然后取其中的最小值(保证HP不会超过MAXHP) 之后在和 [0] 比较,取最大值(保证HP不会比0小),你改成什么neihp,不出问题才怪!

点评

那啥……好歹也是新人求助吧~语气稍微不要那么烈嘛……而且人家的问题也不在这里嘛~人家都说了已经设置了这个函数了嘛~  发表于 2012-12-14 17:48
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9443
在线时间
2751 小时
注册时间
2008-9-5
帖子
3544

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

4
发表于 2012-12-14 17:51:27 | 只看该作者
设置了这个neihp不知道是写在哪里呢?
如果是Game_Actor的话,最好是搬到Game_Battler里~
因为敌人和角色都有HP,都要用到这个函数~
不然就在Game_Enemy里也写一个一样的设置neihp的函数~

以上~大概是关键吧……(目测
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
322 小时
注册时间
2011-6-24
帖子
274
5
 楼主| 发表于 2012-12-14 20:02:06 | 只看该作者
cinderelmini 发表于 2012-12-14 17:51
设置了这个neihp不知道是写在哪里呢?
如果是Game_Actor的话,最好是搬到Game_Battler里~
因为敌人和角色都 ...

我是想加血的时候  控制在 neihp 这个变量范围  就是把maxhp 换成 neihp    不过我在战场里 一直刷新 [hp,neihp].min  就没问题了
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9443
在线时间
2751 小时
注册时间
2008-9-5
帖子
3544

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

6
发表于 2012-12-14 20:14:18 | 只看该作者
sblkhgm 发表于 2012-12-14 20:02
我是想加血的时候  控制在 neihp 这个变量范围  就是把maxhp 换成 neihp    不过我在战场里 一直刷新 [hp ...

呃……
总之哀家只是觉得出错的地方应该是把Actor和Enemy两方都要用到的:neihp
这个函数只写给了Actor,导致再刷新敌人HP的时候没有找到neihp这个作为判定的函数值,
所以弹窗了……

试试把:
def neihp
这一段放到Game_Battler里面去,
或者在Game_Enemy也写一个~
这样应该不用一直刷新……

ps:话说在战场里一直刷新这两个值是什么意思咧……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2025-1-9 15:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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