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);
完整代码:
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) 添加一个精灵对象的更多相关文章
- Android 如何添加一个apk使模拟器和真机都编译进去 m
添加一个apk都需要将LOCAL_PACKAGE_NAME的值添加到PRODUCT_PACKAGES才行.而PRODUCT_PACKAGES一般在build/target/product/目录下的文件 ...
- Android 如何添加一个新的时区
前言 欢迎大家我分享和推荐好用的代码段~~ 声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net ...
- android webview 添加内置对象
package com.android.EBrowser; import android.app.Activity;import android.graphics.Rect;import androi ...
- Android P添加一个可以让system_server进程访问的hal service需要改动的sepolicy文件
在device/sepolicy/common目录中: 修改文件attributes: attribute hal_newXX;attribute hal_newXX_client;attribute ...
- android 直接添加一个Fragment到activity,不需要额外setContentView
getSupportFragmentManager().beginTransaction().replace(android.R.id.content,new ArticleListFragment( ...
- Android按键添加和处理的方案
Android按键添加和处理的方案 版本号 说明 作者 日期 1.0 Android按键添加和处理的方案 Sky Wang 2013/06/18 需求:Android机器上有个W ...
- Android按键添加和处理的方案【转】
本文转载自:http://www.cnblogs.com/skywang12345/p/3142851.html Android按键添加和处理的方案 版本号 说明 作者 日期 1.0 Andro ...
- 为jEasyUi的日期控件添加一个“清空”按钮----通过修改1.4的easyui.min.js
为 jQuery EasyUI 1.4 的datebox或datetimebox添加一个清空按钮 使用场景:为用户指定了日期的格式,且日期可以为空 修改语言包easyui-lang-zh_CN.js ...
- Egret--添加一个精灵事件
class Hello extends egret.DisplayObjectContainer{ //入口函数 private onAddStage(event:egret.Event){ //打开 ...
随机推荐
- 【原创】【ViewPager+Fragment】ViewPager中切换界面Fragment被销毁的问题分析
ViewPager中切换界面Fragment被销毁的问题分析 1.使用场景 ViewPager+Fragment实现界面切换,界面数量>=3 2.Fragment生命周期以及与Activ ...
- 使用OPENROWSET(BULK...)从平面文件加载数据
要使用OPENROWSET首先要开启一个configure选项 sp_configure ‘show advanced options’, 1;GORECONFIGURE;GOsp_configure ...
- C# 值类型和引用类型的区别
C# 值类型和引用类型的区别 1. 值类型的数据存储在内存的栈中:引用类型的数据存储在内存的堆中,而内存单元中只存放堆中对象的地址. 2. 值类型存取速度快,引用类型存取速度慢. 3. 值类型表示实 ...
- Spring事务的来龙去脉
引言 Spring是一个IOC框架,在IOC框架的基础上,提供了DAO集成,AOP事务控制,JNDI等等一系列的高级功能,个人觉得,在Spring中最值得称道的不仅仅它是一个非入侵的IOC容器,而在于 ...
- dojo 十一 jsonp
官方教程:Getting Jiggy with JSONPDojo对Ajax实现的框架XHR的功能很强大,但 XHR 框架的函数有一问题就是不能跨域访问,浏览器不允许 XHR 对象访问其他域的站点.此 ...
- gridview 单击行时如何让SelectedIndexChanging事件响应
在gridview控件上单击行的时候,是不触发SelectedIndexChanging事件的,那么想要单击时触发SelectedIndexChanging事件时怎么做呢? 我是这样做的: 在grid ...
- maven3实战之仓库(快照版本)
maven3实战之仓库(快照版本) ---------- 在Maven的世界中,任何一个项目或者构件都必须有自己的版本.版本的值可能是1.0.0,1.3-alpha-4,2.0,2.1-SNAPSHO ...
- URAL1495. One-two, One-two 2(dp)
1495 牵扯一点数位 保存数的时候我是按2进制保存的 把1当作0算 把2当作1算 滚动数组 dp[i][j][(g*10+j)%n] = min(dp[i][j][(g*10+j)%n],dp[i- ...
- C#处理文件流的转换
//----引入必要的命名空间 using System.IO; using System.Drawing.Imaging; //----代码部分----// private byte[] photo ...
- CSS之切出横幅
简述 上节分享了clip-path来实现一个剪切横幅,本节通过另外一种方式来实现一个更经典的横幅. 简述 最终效果 小三角 效果 源码 阴影分割 效果 源码 合并 最终效果 我们先看一下最终要实现的效 ...