转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。
资源为网上寻找的,仅研究学习用,若是侵犯版权请通知本人整改。
上一篇: Cocos3.4 横版游戏制作-《KillBear》-添加摇杆并控制Hero
上一篇中,我们实现了通过不同层的Joystick控制Hero移动,但是Hero到处跑,还是不能实现我们的效果.
此篇上半部分,限定Hero的移动范围是他不要跑出地图或者是墙上(墙的范围参考第一篇)
下半部分,通过更新MapLayer实现地图滚动效果.
开发环境
- win64 : vs2010
- Cocos2d-x v3.4Final
- TexturePackerGUI
- MapEdit
代码构建A
角色Role
Hero
为什么我会在updateSelf中重复写了好几个坐标但是就用到一次?
在这里更新一下updateSelf
void Hero::updateSelf()//刷新自己
{
if(this->getCurrActionState() == ACTION_STATE_WALK)
{
Vec2 currentP= this->getPosition(); //当前坐标
Vec2 expectP = currentP + this->getVelocity(); //期望坐标
Vec2 actualP = expectP; //实际坐标
float mapWidth = global->tileMap->getContentSize().width; //整张地图宽度
float herofat = this