主角跳上方块2以后,如果没有跳到正中间,主角返回时仍然是返回到中间位置
这不仅不合理,主角和方块2返回时也不同步,效果不好。
我们需要让主角和方块2跳跃后按原位置返回,
效果如图:注意的是,主角跳到方块2以后返回的位置不再是中心点,而是它实际跳到的位置
方块2代码:
主角代码:
仔细调试程序,会发现有时主角明明跳到了方块2上,但还是显示游戏失败
我们把变量显示出来观察一下会发现”主角应跳距离”和”主角跳的总距离的差”已经超过了33,所以程序提示失败了。
观察下图,就会发现,实际上当主角按照原位置返回后,应跳距离已经发生了变化
所以主角在后面的应跳距离的具体计算方法为:
用链表记录方块2和主角的坐标
主角在初始化时和收到开始消息时都更新坐标,
方块2代码
计算应跳距离
注意:实际上,可以直接用”侦测”中的
模块来实现
但这里因为要让同学熟练勾股定理,所以不用上述方法。
调试程序,修正错误
发现目前有以下问题:主角应跳距离非常小
因为其实角色的中心并不是我们期望的中心点,角色的中心点是整个图片的中心点,也就是包括影子占的位置
下图能明显看出应跳距离变短了。
解决方法就是将方块的和主角的中心点放到我们期望的位置
如何将方块的中心放到我们期望的中心位置?
方块2的中心点调整
1、将背景换成网格
2、将方块2坐标改为0,0
3、在造型中将中心点尽量放到指定位置
方块1的中心点调整:复制方块2的造型到方块1中,删除方块1原来的图形
同样处理主角的中心点位置
注意:为了不影响主角的横坐标(以后有用处),可以采取以下办法
1、先在中心点位置做一个标记
2、用光标键一点一点向下移动(不能用鼠标,用鼠标就会改变它在x方向的坐标)
当按下空格时,蓄力的造型高度不符,重新制作蓄力造型即可.
调整其它一些参数,调试程序
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved