写到这突然有童鞋质疑,你这哪里是牛,分明是熊嘛!

仔细看了下,还真像牛.反正是这个意思.怪本猫猪牛熊不分,好在道理是一样的.

下面继续,言归正传.

添加一个空白的touchBegan方法,如果没有这个方法,其他触摸回调也不会被响应.

接着是重点部分来了:

-(void)touchEnded:(CCTouch *)touch withEvent:(CCTouchEvent *)event{
    CGPoint location = [[CCDirector sharedDirector] convertTouchToGL:touch];
    location = [self convertToNodeSpace:location];
    CGSize viewSize = [CCDirector sharedDirector].viewSize;
    float bearVelocity = viewSize.width/3.0;
    CGPoint diff = ccpSub(location, _bear.position);
    float distance = ccpLength(diff);
    float moveDuration = distance/bearVelocity;
    //根据玩家点击的位置设置熊头的方向
    if (diff.x < 0) {
        _bear.flipX = NO;
    }else{
        _bear.flipX = YES;
    }

    [_bear stopAction:_moveAction];
    if (!_bearMoving) {
        [_bear runAction:_walkAction];
    }

    CCActionMoveTo *move = [CCActionMoveTo actionWithDuration:moveDuration position:location];
    CCActionCallBlock *block = [CCActionCallBlock actionWithBlock:^{
        [_bear stopAction:_walkAction];
        _bearMoving = NO;
    }];
    CCActionSequence *seq = [CCActionSequence actions:move,block,nil];
    _moveAction = seq;

    [_bear runAction:_moveAction];
    _bearMoving = YES;
}

原文中seq行为最后用来回调方法,这里直接用回调block即可,不用再另外写一个方法了.

代码没啥好说的,主要是计算实际移动时间,是否翻转熊头,然后根据熊的状态确定是否播放动画等行为.

在编译执行之前,现将didLoadFromCCB方法中的:

[_bear runAction:_walkAction];

一行注释掉,否则会发生重复播放动画的错误.

现在编译运行app,效果如下:

用SpriteBuilder简化"耕牛遍地走"的动画效果(四)的更多相关文章

  1. 用SpriteBuilder简化"耕牛遍地走"的动画效果(三)

    接下来的代码和原文差不多,建立一个数组用来存放动画帧,然后用数组来初始化一个CCAnimation动画对象.接着将牛放在屏幕中心,然后运行动画: NSMutableArray *walkAnimFra ...

  2. 用SpriteBuilder简化"耕牛遍地走"的动画效果(一)

    这又是一个使用SpriteBuilder带来便捷的例子 原文地址在: http://www.raywenderlich.com/32045/how-to-use-animations-and-spri ...

  3. 用SpriteBuilder简化"耕牛遍地走"的动画效果(二)

    首先使用SpriteBuilder新建一个项目,将之前下载的资源文件夹拖入SpriteBuilder的文件视图. 这里我们只需要一步操作就可以完成原文中在Texture Packer中的那么多操作:即 ...

  4. 使用 CSS3 实现超炫的 Loading(加载)动画效果

    SpinKit 是一套网页动画效果,包含8种基于 CSS3 实现的很炫的加载动画.借助 CSS3 Animation 的强大功能来创建平滑,易于定制的动画.SpinKit 的目标不是提供一个每个浏览器 ...

  5. 使用CSS3实现超炫的Loading(加载)动画效果

    SpinKit 是一套网页动画效果,包含8种基于 CSS3 实现的很炫的加载动画.借助 CSS3 Animation 的强大功能来创建平滑,易于定制的动画.SpinKit 的目标不是提供一个每个浏览器 ...

  6. loading 动画效果(收藏起来以后留着慢慢用)

    动画效果一: html代码: <div class="spinner">   <div class="rect1"></div&g ...

  7. css3 加载动画效果

    Loading 动画效果一           HTML 代码: <div class="spinner"> <div class="rect1&quo ...

  8. 最简化模型——css3分阶段动画效果(经过实测)

    body {    background: #dcdcdc;    -webkit-animation: colorin 5s; /* chrome调用属性 */    animation: colo ...

  9. python 全栈开发,Day53(jQuery的介绍,jQuery的选择器,jQuery动画效果)

    js总结 js: 1.ECMAScript5 ES5语法 2.DOM CRUD 获取 3种方式 id tag className //面向对象 对象 : 属性和方法 某个对象中 function $( ...

随机推荐

  1. ChatGirl is an AI ChatBot based on TensorFlow Seq2Seq Model

    Introduction [Under developing,it is not working well yet.But you can just train,and run it.] ChatGi ...

  2. JSSDK实现微信自定义分享---java 后端获取签名信息

    一.首先说下关于微信Access_token的问题,微信Access_token分为2中: 1.授权token获取方式: 这种token需要code值(如何获取code值查看官方文档) "h ...

  3. Map value类型不同的写法

    Map value类型不同的写法 Map<String, Object> accountMap=new HashMap<String, Object>(); int userI ...

  4. java处理数据库不支持的emoji

    一般数据库的编码是utf8,utf8是不支持存储表情符的,当存入的微信昵称带有表情符时就会出现乱码情况,有两种解决方法: 1.mysql数据库升级到5.5版本以上,utf8改为utf8mb4,utf8 ...

  5. 41. First Missing Positive(困难, 用到 counting sort 方法)

    Given an unsorted integer array, find the first missing positive integer. For example, Given [1,2,0] ...

  6. 工作流程,编程,调试,性能:Unity游戏开发者应该学习的20个改进技巧

    Unity 是一个备受欢迎的游戏开发平台.它的功能令人印象深刻,同时也迎合了不同的游戏开发需求.游戏开发者可以使用 Unity 创建任何类型的游戏,从世界级的 RPG 游戏到最流行的增强现实游戏 Po ...

  7. MySQL 字符串连接CONCAT()函数

    MySQL字符串连接函数 使用方法:CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串, ...

  8. SQL实例整理

    本文适合将w3school的SQL教程(http://www.w3school.com.cn/sql/sql_create_table.asp)都基本看过一遍的猿友阅读. 说说博主的情况吧.毕业找工作 ...

  9. 《An Introduction to Signal Smoothing》译文

    最近在做数据平滑相关的工作,正好读到该篇博客,感觉不错,就翻译了一下.原链接:An Introduction to Signal Smoothing 信号平滑简介 噪声无处不在,不管是在采集手机游戏的 ...

  10. intel-hadoop/HiBench流程分析----以贝叶斯算法为例

    1.HiBench算法简介 Hibench 包含9个典型的hadoop负载(micro benchmarks,hdfs benchmarks,web search bench marks,machin ...