Project1
标题:
[已解决]上下船,陆地和海洋通行度切换如何解决?
[打印本页]
作者:
miantouchi
时间:
2019-9-1 16:07
标题:
[已解决]上下船,陆地和海洋通行度切换如何解决?
本帖最后由 miantouchi 于 2019-9-2 18:13 编辑
我把海洋正常是设置不可通行的状态,
角色在陆地时,陆地可以通行,海洋不可通行。
角色上船后, 就只可以在海洋图块可以通行。
我的做法是,角色坐上船后,开启穿透,用脚本设置,航船时只允许穿透地形标志为2的图块(也就是海洋图块),效果是达到了。
出现的问题:现在的问题是海洋图块如果是相连的话,并且是两条小河流的话,会发生穿越河流。
如何解决。
之后我又改了河流的通行度,关闭船只事件里面的穿越功能,河流穿越问题解决了,但是角色如果是经过中心那个河流图块,角色又能过河了,悲剧!!!
作者:
灯笼菜刀王
时间:
2019-9-1 19:49
本帖最后由 灯笼菜刀王 于 2019-9-1 19:51 编辑
既然如此, 那就直接搞两套通行度, 在数据库把图块设置复制一份, 通行度设置成不一样的, 然后, 到game map 里加一句
def 通行替换(n)
@passages = $data_tilesets[n].passages
end
然后,上船的时候 $game_map.通行替换(10086),
下船的时候, $game_map.通行替换(10087), 搞定收工,还省了个穿透呢
作者:
miantouchi
时间:
2019-9-1 21:27
本帖最后由 miantouchi 于 2019-9-2 07:52 编辑
灯笼菜刀王 发表于 2019-9-1 19:49
既然如此, 那就直接搞两套通行度, 在数据库把图块设置复制一份, 通行度设置成不一样的, 然后, 到 ...
最后一个问题就是,水中的荷花,开始的时候是不可通行,当使用一个宝物后,
船就可以通行荷花了。
也就是使用宝物后更改荷花的通行度。
我也不至于为了水中个别几个屏障,再弄个这么大工程吧
是这个样子,不单单几片荷叶的。
作者:
灯笼菜刀王
时间:
2019-9-2 11:57
本帖最后由 灯笼菜刀王 于 2019-9-2 11:59 编辑
那就用你前面的方法呗, 用地形标志, 满足条件后放行 或者用元件ID判断
# 从层按从上到下的顺序调查循环
for i in [2, 1, 0]
# 取得元件 ID
tile_id = data[x, y, i]
# 取得元件 ID 失败
if tile_id == nil
# 不能通行
return false
elsif [10086,10087,10088].include?(tile_id) and $game_switches[10086]
return true
# 如果障碍物的接触被设置的情况下
elsif @passages[tile_id] & bit != 0
# 不能通行
return false
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X5.0