Project1
标题:
$game_actors[1].maxhp = $game_actors[1].maxhp * 2战斗中使用出错
[打印本页]
作者:
DBZ-1
时间:
2010-10-13 19:26
标题:
$game_actors[1].maxhp = $game_actors[1].maxhp * 2战斗中使用出错
$game_actors[1].maxhp = $game_actors[1].maxhp * 2
战斗中一个招式附带的
报错
怎么解决
作者:
DBZ-1
时间:
2010-10-13 21:22
战斗中某招式公共事件用事件写的这句
一号主角的
作者:
六祈
时间:
2010-10-13 22:31
本帖最后由 六祈 于 2010-10-13 22:36 编辑
#--------------------------------------------------------------------------
# ● 获取 MaxHP
#--------------------------------------------------------------------------
def maxhp
n = [[base_maxhp + @maxhp_plus, 1].max, 9999].min
for i in @states
n *= $data_states[i].maxhp_rate / 100.0
end
n = [[Integer(n), 1].max, 9999].min
return n
end
复制代码
看Game_Actor的代码,很明显maxhp不是一个属性【准确的说,它不是一个实例变量的接口】
它的获取是根据成长曲线获得值【base_maxhp方法获得】和实例变量@maxhp_plus取得
这么说你明白了么?
[line]2[/line]
愚者觉得你这个想要实现的效果莫名其妙,不过考虑到xxxxx,就直接给你一个可以实现该效果的代码,你可以无视该分隔线上面部分的话
class Game_Actor
def maxhp=(value)
@maxhp_plus += value - maxhp
end
end
复制代码
作者:
wbsy8241
时间:
2010-10-13 23:34
本帖最后由 wbsy8241 于 2010-10-13 23:35 编辑
LS... Game_Battler 里有的啊= =
#--------------------------------------------------------------------------
# ● 设置 MaxHP
# maxhp : 新的 MaxHP
#--------------------------------------------------------------------------
def maxhp=(maxhp)
@maxhp_plus += maxhp - self.maxhp
@maxhp_plus = [[@maxhp_plus, -9999].max, 9999].min
@hp = [@hp, self.maxhp].min
end
复制代码
请尽量将1句脚本写在同1行里
可以写成:
maxhp = $game_actors[1].maxhp * 2
$game_actors[1].maxhp = maxhp
或者带个连接符
$game_actors[1].maxhp = $game_actors\
[1].maxhp * 2
作者:
亿万星辰
时间:
2010-10-14 09:09
就事论事而言——$game_actors[1].maxhp*=2
作者:
bbaugle
时间:
2010-10-14 12:33
是$game_party.actors[0].maxhp吧 - -..
作者:
DBZ-1
时间:
2010-10-14 21:10
2l,value是什么意思
貌似一点没提到1号主角和*2吧
作者:
DBZ-1
时间:
2010-10-14 21:16
4l解决了……谢谢
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1