引子

        上一期教程我们讲了如何制作一个可以侦测视角外碰撞的大地图引擎,这期我们就来制作一下摄像头限制。


首先,我们先要测试出地图的摄像头限制值:

        如何测试呢,我们只需要在游戏中移动玩家角色,来求得四个值:一是最大x,二是最小x,三是最大y,四是最小y。那么这四个值又代表着什么呢?例如最大x,我们向右移动玩家角色,一直移动到刚刚好看得到地图白边的时候,我们再往左移动一下,然后不停重复,一直到达一个边界值,这个边界值就是说地图与白边的分界点,等你刚刚好看得到这个位置的时候我们就把这个值记录下来,然后以此类推,推出其它的三个值。

        好的,我这边已经把这四个值测出来了,它们分别是:

最大x:135
最小x:-135
最大y:115
最小y:-115

        然后我们就开始制作程序

        先来到【玩家样子】角色,我打算把这个制作在这个角色中。

Scratch 游戏 之 大地图引擎之摄像头控制-LMLPHP

Scratch 游戏 之 大地图引擎之摄像头控制-LMLPHP

代码

        注意事项:必须先控制摄像头再执行移动代码,且不可设置玩家的实际坐标这两个变量,因为这两个变量是实际的,不是玩家看到的,一切以图中为准

        这个摄像头限制的主要原理就是:如果玩家到达临界值那么就把摄像头设为这个临界值,这样就可做成摄像头控制代码,也就可以处理掉“白边”了

        最后我说一下啊,白边这个说法其实不专业,因为白边只是后面的白色背景,真正的叫法应该叫摄像头背景控制。

        还有就是如果你使用的引擎跟我不一样,那么你也可以试试这个摄像头控制的代码。

        这期文章的难点就是对临界点的把控,当然还有更好的临界点把控程序,比我们现在的人工操作简单多了,目前我的想法就是说制作出四个点,分别在上中、下中、左中和右中,然后检测是否碰到舞台的颜色,如果碰到就确定临界值,当然啊,这个我也没试过,屏幕前的你可以去挑战做一下啊

08-11 13:44