Project1
标题:
如何判断主角上下左右的事件id?
[打印本页]
作者:
幼吾幼
时间:
2014-11-2 13:26
标题:
如何判断主角上下左右的事件id?
如何判断主角八个方向(上,下,左,右,左上,左下,右上,右下)的事件id?
最好是用脚本。(用事件我也会啊~不过太麻烦,需要好多个变量)
作者:
taroxd
时间:
2014-11-2 13:33
好好用事件。
想要用脚本的话,你可以自己研究一下 Game_Interpreter。研究不出来的话就老老实实用事件吧,毕竟事件不麻烦。
作者:
VIPArcher
时间:
2014-11-2 14:18
本帖最后由 VIPArcher 于 2014-11-2 14:45 编辑
随便写的给你偷懒用吧。事件调用 get_direv_id(d) 返回d所指定的位置的事件ID
使用示范:例如在变量操作时可以事件-变量操作-脚本-输入:
get_direv_id
(7)
就可以把主角左上角的事件ID存入这个变量
又或者直接事件脚本
$game_variables
[1] =
get_direv_id
(7)
同理
class Game_Interpreter
# 获取d方向上的事件ID不存在事件返回0
# d:数字键盘方向对应的数字
# 7 8 9
# ↖ ↑ ↗
# 4← 0|5 →6
# ↙ ↓ ↘
# 1 2 3
def get_direv_id(d)
gp = $game_player
case d
when 1 then x,y = gp.x - 1,gp.y + 1
when 2 then x,y = gp.x ,gp.y + 1
when 3 then x,y = gp.x + 1,gp.y + 1
when 4 then x,y = gp.x - 1,gp.y
when 6 then x,y = gp.x + 1,gp.y
when 7 then x,y = gp.x - 1,gp.y - 1
when 8 then x,y = gp.x ,gp.y - 1
when 9 then x,y = gp.x + 1,gp.y - 1
else x,y = gp.x ,gp.y
end
return $game_map.event_id_xy(x, y)
end
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1