以下引用Ж纯Ж蓝Ж于2008-8-19 15:32:14的发言:
某X某Y......
看不懂.....
以下引用灯笼菜刀王于2008-8-19 15:33:37的发言:
可以强行执行地图上某个编号的事件
$game_map.events[编号].start
也可以获得地图上某个编号事件的X和Y
但是用X,Y来获得编号的话,我要想想怎么做- -....
以下引用Ж纯Ж蓝Ж于2008-8-19 15:36:07的发言:
利用X.Y.来获得事件的编号......
用对比的方法应该可以吧....
以下引用IamI于2008-8-19 15:37:58的发言:
for i in $game_map.events
if i.x == X and i.y == Y
i.start
end
end
真的很简单,菜刀你在干吗= =
改掉大些的XY
[本贴由作者于 2008-8-19 15:38:14 最后编辑]
以下引用IamI于2008-8-19 15:43:02的发言:
不,事件脚本里就这么写= =你把大写的X,Y改掉就行。当然你要偷懒的话也行
加入脚本
class Interpreter
def set_on(ax,ay)
for i in $game_map.events
if i.x == ax and i.y == ay
i.start
end
end
end
end
然后事件脚本直接set_on(x坐标,y坐标)
但是我要说的是这个效率并不是很高
以下引用灯笼菜刀王于2008-8-19 15:44:37的发言:
原来默认脚本已经有这个定义了= =....
def check_event(x, y)
for event in $game_map.events.values
if event.x == x and event.y == y
return event.id
end
end
end
调用$game_map.check_event(x,y)就可以获得该地点上事件的ID
a = $game_map.check_event(x,y)
$game_map.events[a].start
就可以启动该地点上的事件。
以下引用IamI于2008-8-19 15:37:58的发言:
for i in $game_map.events
if i.x == X and i.y == Y
i.start
end
end
真的很简单,菜刀你在干吗= =
改掉大些的XY
[本贴由作者于 2008-8-19 15:38:14 最后编辑]
以下引用灯笼菜刀王于2008-8-19 15:47:51的发言:
悄悄连帖....
以下引用IamI于2008-8-19 15:37:58的发言:
for i in $game_map.events
if i.x == X and i.y == Y
i.start
end
end
真的很简单,菜刀你在干吗= =
改掉大些的XY
[本贴由作者于 2008-8-19 15:38:14 最后编辑]
= =我一开始也打算这样写,因为对game_map不熟悉,去查了下原脚本,原脚本有定义获得xy上的事件ID的定义了,直接用就可以了-。-,不用在循环判断一次。
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |