guoxiaomi 发表于 2017-3-23 23:27 以前没想过,如果是现在可能会想到吧?因为强改地图图快这个做法其实是很特殊的,一般如果改动不大完全就可以通过铺一个事件来完成了。 不过两种做法的想法是一样的,在操作上可能略有区别 如果是我提出的方案,那么需要准备另外一组图快,可能操作上比较方便无脑一些。 如果是改图块的方式,那么两个形态的图块的位置就要对应好,这本身操作上难度要大一些。 然后我现在怀疑是不是不需要考虑存档,因为存档的时候是直接读取 $game_map,所以改动的属性会存下来,直到切换地图才会重置。 |
本帖最后由 guoxiaomi 于 2017-3-23 23:40 编辑 怒挖一记坟~ 一晃三年已过,不知RB叔有没有想到这个方案呢? 有一个只用事件就能解决的方案。修改的是$game_map.data,所以也不受存档影响。 需要预先处理一下原来的Tileset。主楼中用到的是“山道”地图,在PS里把此地图纵向复制一次。这样就有 2 组一模一样的图块。 原来的图块不管,在下面的复制组里设置优先级,不需要设置通行度。如图: 然后在上桥处设置事件,触发条件是与事件接触: RUBY 代码复制
下桥处设置事件,触发条件是与事件接触: RUBY 代码复制
所以这里应该很容易就看出来了,当下桥的时候,原来的地图图块已经被更换为复制组,复制组的图块设为高的优先级(☆5)和穿透,所以看上去是角色“在桥下面行走”。上桥的时候再换回原来的图块即可。 具体为什么是这些数字,图块元件的ID是384+元件在Tileset图中的位置,自动元件是不算在内的。这个从上到下数一下就可以了,或者下面的脚本,x,y是坐标,z=0-2是图层。 RUBY 代码复制
这段脚本可以进行优化,比如for循环里只写桥所在的范围,但是RGSS不是很care这点运算量。 复制的时候也不一定要复制整个Tileset,只复制桥的那部分就行~但是整个一起复制快得多…… |
搞个三远景直接贴图感觉更靠谱 |
这个不错,感谢楼主分享(ΦωΦ) |
我想请教一下楼主如果竖直的楼梯也想实现这种效果该怎么办? |
把开关改成变量= = |
把桥设为与主角同级,在桥的那格上制作一个与主角同级的接触事件,当主角朝向为上/下时接触它(桥下),则主角开启穿透且向前移动行走图同时暂时透明化、移动到桥下那边时再让主角恢复正常。当主角朝向为左/右时接触到它时,主角强制走到桥的那头。 |
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2024-11-27 08:48
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.