zoukankan      html  css  js  c++  java
  • Cocos2d-android (02) 添加一个精灵对象

    什么是精灵:

    1.精灵就是游戏当中的一个元素,通常用于代表画面当前中的一个事物,例如主人公,NPC和背景元素等;

    2.一个精灵对象通常都与一张图片关联

    3.精灵对象可以通过动作对象(CCAction)来产生动画效果

    如何声明一个精灵对象

        //声明一个精灵对象
        CCSprite player;

    如何将一个精灵对象添加到布景层中

            //初始化精灵对象
            player = CCSprite.sprite("player.png");
            
            //设置精灵对象的位置(cocos2d中坐标原点在左下角而不是左上角)
            player.setPosition(100,100);
            
            //将精灵对象添加到布景层中
            this.addChild(player);

    坐标也可以用CGPoint表示

            //CGPoint用于表示坐标和向量
            CGPoint point = CGPoint.ccp(100, 100);
            player.setPosition(point);

    为精灵对象添加动作

            CGPoint target = CGPoint.ccp(600, 100);
            //添加动作action(3s,pos,height,次数)
            CCJumpTo jumpTo = CCJumpTo.action(3, target, 200, 5);
            
            //使用精灵对象执行该动作
            player.runAction(jumpTo);

    其他动作:

            //瞬时动作
            //沿Y轴镜象
            CCFlipX flipX = CCFlipX.action(true);
            //沿X轴镜象
            CCFlipY flipY = CCFlipY.action(true);
            //隐藏
            CCHide hide = CCHide.action();
            //现实
            CCShow show = CCShow.action();
            
            //延时动作
            CGPoint pos = CGPoint.ccp(600, 600);
            CCMoveTo moveTo = CCMoveTo.action(5, pos);
            //五秒钟逆时针旋转270度(cocos2d中使用的是角度而不是弧度)
            CCRotateTo rotateTo = CCRotateTo.action(5, 270);
            //五秒钟内放大10倍
            CCScaleTo scaleTo = CCScaleTo.action(5, 10);
            //五秒钟内闪烁10次
            CCBlink blink = CCBlink.action(5, 10);
            
            //执行对象
            //sprite.runAction(moveTo);
            //sprite.runAction(rotateTo);
            //sprite.runAction(scaleTo);
            sprite.runAction(blink);

    完整代码:

     1 import org.cocos2d.actions.interval.CCJumpTo;
     2 import org.cocos2d.layers.CCLayer;
     3 import org.cocos2d.nodes.CCSprite;
     4 import org.cocos2d.types.CGPoint;
     5 
     6 
     7 public class GameLayer extends CCLayer {
     8     
     9     //声明一个精灵对象
    10     CCSprite player;
    11     
    12     public GameLayer(){
    13         //初始化精灵对象
    14         player = CCSprite.sprite("player.png");
    15         
    16         //设置精灵对象的位置(cocos2d中坐标原点在左下角而不是左上角)
    17         //CGPoint用于表示坐标和向量
    18         CGPoint point = CGPoint.ccp(100, 100);
    19         player.setPosition(point);
    20         
    21         //将精灵对象添加到布景层中
    22         this.addChild(player);
    23         
    24         CGPoint target = CGPoint.ccp(600, 100);
    25         //添加动作action(3s,pos,height,次数)
    26         CCJumpTo jumpTo = CCJumpTo.action(3, target, 200, 5);
    27         
    28         //使用精灵对象执行该动作
    29         player.runAction(jumpTo);
    30     }
    31 }
    View Code
  • 相关阅读:
    c语言中float、double、long double在内存中存储方式
    linux路由表配置
    linux下ip命令用法
    Ajax与Comet
    JavaScript之JSON
    Mustache学习
    微信小程序环境搭建
    JavaScript之模仿块级作用域
    JavaScript之call()和apply()方法详解
    JavaScript引用类型之Array数组之强大的splice()方法
  • 原文地址:https://www.cnblogs.com/zhangtingkuo/p/3588714.html
Copyright © 2011-2022 走看看