module RPG
class Enemy
def name
name = @name.split(/,/)[0]
return name != nil ? name : ""
end
def kaze_steal
treasure = @name.split(/,/)[1]
return treasure.to_s
end
end
class Scene_kazesteal
def main
for enemy in $game_troop.enemies
if enemy.state?(20)
$game_party.gain_item(@kaze_steal,1) #好象是这里错了,但怎么改?
end
end
end
end
module RPG
class Enemy
def name
name = @name.split(/,/)[0]
return name != nil ? name : ""
end
def kaze_steal
treasure = @name.split(/,/)[1]
return treasure.to_s
end
end
class Scene_kazesteal
def main
for enemy in $game_troop.enemies
if enemy.state?(20)
$game_party.gain_item(@kaze_steal,1) #好象是这里错了,但怎么改?
end
end
end
end
你的错误就在于扩大了变量的作用范围,依照你现在的写法,@kaze_steal是那个SceneXXX的变量,并非enemy的,正确的方法
应该是先将enemy.kaze_steal赋值给@kaze_steal,或者直接通过前者调用 [LINE]1,#dddddd[/LINE]系统信息:本贴由版主幻の飞鱼认可为正确答案,66RPG感谢您的热情解答~作者: kaze 时间: 2007-7-4 06:17
module RPG
class Enemy
def name
name = @name.split(/,/)[0]
return name != nil ? name : ""
end
def kaze_steal
treasure = @name.split(/,/)[1]
@kaze_steal = treasure
return
end
end
class Scene_kazesteal
def main
for enemy in $game_troop.enemies
if enemy.state?(20)
$game_party.gain_item($Enemy.@kaze_steal,1)
end
end
end
end
这样子吗? 作者: 亿万星辰 时间: 2007-7-8 00:29
你看一下 state? 这个状态判断方法是如何调用的,要用类的实例进行调用