什么是精灵:

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);

完整代码:

 import org.cocos2d.actions.interval.CCJumpTo;
import org.cocos2d.layers.CCLayer;
import org.cocos2d.nodes.CCSprite;
import org.cocos2d.types.CGPoint; public class GameLayer extends CCLayer { //声明一个精灵对象
CCSprite player; public GameLayer(){
//初始化精灵对象
player = CCSprite.sprite("player.png"); //设置精灵对象的位置(cocos2d中坐标原点在左下角而不是左上角)
//CGPoint用于表示坐标和向量
CGPoint point = CGPoint.ccp(100, 100);
player.setPosition(point); //将精灵对象添加到布景层中
this.addChild(player); CGPoint target = CGPoint.ccp(600, 100);
//添加动作action(3s,pos,height,次数)
CCJumpTo jumpTo = CCJumpTo.action(3, target, 200, 5); //使用精灵对象执行该动作
player.runAction(jumpTo);
}
}

Cocos2d-android (02) 添加一个精灵对象的更多相关文章

  1. Android 如何添加一个apk使模拟器和真机都编译进去 m

    添加一个apk都需要将LOCAL_PACKAGE_NAME的值添加到PRODUCT_PACKAGES才行.而PRODUCT_PACKAGES一般在build/target/product/目录下的文件 ...

  2. Android 如何添加一个新的时区

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  3. android webview 添加内置对象

    package com.android.EBrowser; import android.app.Activity;import android.graphics.Rect;import androi ...

  4. Android P添加一个可以让system_server进程访问的hal service需要改动的sepolicy文件

    在device/sepolicy/common目录中: 修改文件attributes: attribute hal_newXX;attribute hal_newXX_client;attribute ...

  5. android 直接添加一个Fragment到activity,不需要额外setContentView

    getSupportFragmentManager().beginTransaction().replace(android.R.id.content,new ArticleListFragment( ...

  6. Android按键添加和处理的方案

    Android按键添加和处理的方案  版本号 说明 作者 日期  1.0  Android按键添加和处理的方案 Sky Wang  2013/06/18        需求:Android机器上有个W ...

  7. Android按键添加和处理的方案【转】

    本文转载自:http://www.cnblogs.com/skywang12345/p/3142851.html Android按键添加和处理的方案  版本号 说明 作者 日期  1.0  Andro ...

  8. 为jEasyUi的日期控件添加一个“清空”按钮----通过修改1.4的easyui.min.js

    为 jQuery EasyUI 1.4 的datebox或datetimebox添加一个清空按钮 使用场景:为用户指定了日期的格式,且日期可以为空 修改语言包easyui-lang-zh_CN.js ...

  9. Egret--添加一个精灵事件

    class Hello extends egret.DisplayObjectContainer{ //入口函数 private onAddStage(event:egret.Event){ //打开 ...

随机推荐

  1. Oracle ->> 行转列, 列转行

    除了Pivot和Unpivot这两个函数,还有像CASE WHEN + 聚合函数像MAX,SUM这类的来完成.今天发现Oracle下居然有这样一个和SQL SERVER 2012以后新增的新函数叫II ...

  2. 解决NetworkOnMainThreadException

    今天在Android 访问 WebService 的时候遇到,错误Caused by: android.os.NetworkOnMainThreadException,查了下原因上在4.0之后在主线程 ...

  3. GraphicsMagick / ImageMagick缺少lib报错no decode delegate for this image format

    下载相应的lib,编译安装就行了 cd ~ #下载包 wget http://www.imagemagick.org/download/delegates/zlib-1.2.7.tar.gz wget ...

  4. C and C++ : Partial initialization of automatic structure

    Refer to: http://stackoverflow.com/questions/10828294/c-and-c-partial-initialization-of-automatic-st ...

  5. MYSQL语句中SELECT语句及其子句的执行顺序

    SELECT语句的执行的逻辑查询处理步骤:(8)SELECT (9)DISTINCT(11)<TOP_specification> <select_list>(1)FROM & ...

  6. iPhone 屏幕上的 Home 键在哪里?(已解决)

    「问」:iPhone屏幕上的Home键如何开启? 「答」:在[设置]-[通用]-[辅助功能]-[AssistiveTouch],打开即可.不需要下载什么App. [Settings] - [Gener ...

  7. leetcode:Intersection of Two Linked Lists(两个链表的交叉点)

    Write a program to find the node at which the intersection of two singly linked lists begins. For ex ...

  8. jsonp获取服务器数据的方式

    jsonp获取服务器的数据,有两种 一,跨域 二,不跨域 如果跨域 js的写法有两种 1, <script type="text/javascript"> $(func ...

  9. js案例_下滑列表

    1.HTML布局(使用ul): <body> <ul> <li class="list" id="lis"> <a h ...

  10. 基于Bootstrap的超酷jQuery开关按钮插件

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAA2CAIAAAC0tsfoAAAB/0lEQVR4nO3bQWrCQBTGcc/mbVz0DD