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

 

 

posted @ 2014-03-08 22:11  若。只如初见  阅读(860)  评论(2编辑  收藏  举报