Project1
标题:
【求纠错】脚本哪里错了
[打印本页]
作者:
fux2
时间:
2010-9-14 13:29
标题:
【求纠错】脚本哪里错了
这里的CASE该怎么写?
case ev.name.include?
when "绿乌龟"
class Interpreter
def gmove
for ev in $game_map.events.values
case ev.name.include?
when "绿乌龟"
if ev.name == "绿乌龟左"
if $game_map.valid?(ev.x - 1, ev.y + 1)
ev.name = "绿乌龟右"
else
ev.move_left
end
else
if $game_map.valid?(ev.x + 1, ev.y + 1)
ev.name = "绿乌龟左"
else
ev.move_right
end
end
end
end
end
end
复制代码
作者:
六祈
时间:
2010-9-14 13:31
本帖最后由 六祈 于 2010-9-14 13:32 编辑
看你这段代码,似乎用if else就可以了,为啥要用case when else呢?
另外你要的功能可以这样实现:
case ev.name
when /绿乌龟/
when /红乌龟/
else
end
作者:
fux2
时间:
2010-9-14 13:33
回复
六祈
的帖子
我有很多名字需要判断…………还有貌似ev.name = "绿乌龟右"这样的语句不正确哦,怎么修改怪物的名字呢
作者:
六祈
时间:
2010-9-14 13:57
回复
fux2
的帖子
被卡了一下,原来Game_Event类是RPG::Event类的一个外壳…
class Game_Event
def name
@event.name
end
def name=(name)
@event.name = name
end
end
复制代码
在main前追加这段代码,就可以使用$game_map.events[id].name和name = 了
作者:
enghao_lim
时间:
2010-9-15 22:57
其实如果对读取或写入局部变量没有特殊处理可以写成:
<code>class Game_Event
attr_accessor :name
end</code>
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1