【quick-cocos2d-lua】 基本类及用法
1.cc.Director(导演类)
获得导演类实例:local director = cc.Director : getInstance()
其中 cc 是Cocos2d-x Lua 类的命名空间,Director 是导演类
定义:是整个游戏的组织者和领导者。
功能:①开始游戏和游戏结束时负责游戏的初始化和销毁工作。
②游戏场景的切换,暂停和恢复的控制。
③获取一些系统信息,如坐标信息等。
导演常用方法:
1.暂停游戏:
shareDirector:pause()
2.恢复游戏:
shareDirector:resume()
2. cc.Node(节点类)
定义:cc.Node是Cocos2D-x 中的主要类, 任何需要在屏幕上显示得都是节点类,最常用的节点类包括:场景类、布景层类、人物精灵类.
功能:①封装了可见元素的基础属性和方法。
②节点都可以含有子节点。
③节点可以运行动作。
④节点内部有一个跟随节点生命周期的调度器。
节点常用方法:
1.创建节点:
local node = display.newNode()
2.添加子节点:
node:addChild(child,zOrder,name)
--child,cc.Node类型,子节点
--zOrder,影响渲染顺序,值小先渲染,相同则先添加的渲染。
--name,Tag标记
3.移除子节点:
node:removeChild(childNode)
4.获取父节点:
node:getParent()
5.获取子节点:
node:getChildren()
6.设置大小:
node:setContentSize(cc.size(width,height))
7.获取大小:
node:getContentSize()
8.设置位置坐标:
node:setPosition(cc.p(x,y))
9.设置锚点:
node:setAnchorPoint(cc.p(x,y)))
3. cc.Scene(场景类)
定义:cc.Scene类是cc.Node 的子类, 和cc.Node 相比,它只是添加了一个特性,那就是拥有自的锚点,位置在屏幕的正中央。除此之外,它目前还没有额外的功能,只是一个抽象的概念。特定时间内只有一个场景处于活动状态。
场景常用方法:
1.创建普通场景:
display.newScene(name)
2.创建带物理引擎的场景:
display.newPhysicsScene(name)
4. cc.Layer(层类)
层的叠加是有顺序的,次序同样用户时间响应机制,若层从上到下依次是 菜单层->精灵层->背景层,即菜单层最先接受到系统事件,然后是精灵层,最后是背景层,
在事件的传递过程中,如果有一个层处理了该事件,则
布景层类cc.Layer 是cc.Node 类的子类, 主要起容器的作用,游戏中可以根据需要分层处理,可以方便管理。
层的常用方法:
1.创建普通层:
display.newLayer()
2.创建有颜色的层:
display.newColorLayer()
3.要向场景添加层,我们可以使用addChild方法。
addChild( Node child ) addChild( Node child, int zOrder ) addChild( Node *child, int zOrder, int tag )
其中,Child参数就是节点。对于场景而言,通常我们添加的节点就是层。先添加的层会被置于后添加的层之下。如果需要为它们指定先后次序,可以使用不同的zOrder值。
tag是元素的标识号码,如果为子节点设置了tag值,就可以在它的父节点中利用tag值就可以找到它了。层可以包含任何Node作为子节点,包括Sprites(精灵), Labels(标签),甚至其他的Layer对象。
5. cc.Sprite(精灵类)
精灵是图像的载体,主要表示游戏中的人物。
>贴图类(cc.Texture2D);在OpengGL中称图片为贴图,在CocosD-x中CCTextureD就是图片对象的意思,可以通过它创建精灵等对象。cc.Texture2D类是精灵类和其相关基础的基础。
>精灵批处理类(CCSpriteBatchNode);
>精灵帧类(cc.SpriteFrame);精灵帧类的概念是相对于动画儿产生的。一个精灵是固定节点,他可以拥有许多精灵帧,在他们之间切换就形成了动画。
>精灵帧缓存类(cc.SpriteFrameCache);精灵帧缓存类CCSpriteFrameCache用来存储精灵帧,提前缓存起来有助于提高程序的效率。cc.SpriteFrameCache是一个单例模式,不属于某个精灵类,是所有精灵共享使用的。
用法:
1.从图片文件创建精灵:
display.newSprite("xxx.png")
2.从缓存的图像帧创建精灵:
display.newSprite("#xxx.png")
6. cc.ui(UI控件类)
用户操作界面上的控件,1.活动控件:可以与用户交互,当用户操作活动控件时,该控件可以激发相应的事件例:UIButton
2.静态控件:只用于显示应用状态,用户不能对静态控件执行任何操作例:UILabel
3.被动控件:可以接受用户操作,通常仅用于接受用户输入的值,不会激发任何方法
UI基础控件:https://blog.csdn.net/Super_Cola/article/details/80688459
UI高级控件:https://blog.csdn.net/Super_Cola/article/details/81533008
7. cc.Action(动作类)
用来描述节点行为规范的一个类,Action是所有动作的基类,动作作用于Node,每个动作需要Node对象来执行。动作分为基础动作和高级动作,基础动作又分为瞬时动作和有限时间动作,高级动作分为复合动作和变速动作。
动作使用:https://blog.csdn.net/Super_Cola/article/details/81903761
---------------------
作者:super_cola
来源:CSDN
原文:https://blog.csdn.net/Super_Cola/article/details/81589481
版权声明:本文为博主原创文章,转载请附上博文链接!
【quick-cocos2d-lua】 基本类及用法的更多相关文章
- Cocos2d Lua 越来越小样本 内存游戏
1.游戏简介 一个"记忆"类的比赛游戏.你和电脑对战,轮到谁的回合,谁翻两张牌,假设两张牌一样.就消掉这两张牌,得2分,能够继续翻牌,假设两张牌不一样,就换一个人.直到最后.看谁的 ...
- #Cocos2d+lua#android+Eclipse工程编译设置
用Elicpse编译cocos2d+lua的工程几点注意点记录: 1.设置工程属性Windows->Preferences->NDK目录 2.右键Android Tools->Add ...
- quick cocos2dx lua 内存释放
前言 对于内存的优化,网上有很多例子和教程.总体来说,就那么几种解决方案,在最后我会简单提下,这里先说下在quick中,对于图片的处理. 1.查看内存调试信息 对于quick框架的了解,我们可以参考\ ...
- quick Cocos2dx lua 接anysdk
quick3.3 的quick\samples\anysdk中有例子,具体用法可以参考官方文档,将的非常详细. 1.框架接口设计 系统介绍 必接入流程简要描述 消息通知 可扩展性 测试模式 添加测试账 ...
- lua高阶用法 OO的实现
//Lua的类的实现,可以派生,可重写方法 local _class={} function class(super) local class_type={} class_type.ctor=fals ...
- quick cocos2dx lua 网络图片 下载 自己主动更新
转载请注明,原文地址:http://blog.csdn.net/dd135373/article/details/46468505 quick coocs2d-x 网络图片下载,自己主动更新纹理,保存 ...
- Lua unpack函数用法
unpack,接受一个table做个参数,然后按照下标返回数组的所有元素 unpack lua 版本 <= 5.1 local t = {nil , 3} retunrn unpack(t) / ...
- 【原】 COCOS2D—LUA 获取剪贴板内容
android下: local luaj = require ("framework.luaj") local ok,ret = luaj.callStaticMethod( ...
- lua中奇葩用法
th> a=torch.zeros(,) [.0001s] th> a [torch.DoubleTensor of size 1x5] [.0002s] th> a[] [torc ...
随机推荐
- 给windows添加路由
route add 10.0.0.0 mask 255.0.0.0 172.16.1.253 -p
- 关键字: simpledateformat24小时 格式串
SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出 Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 M ...
- wordpress上传含中文文件名出现乱码
一.首先到FTP里面找到wp-admin/includes/file.php这个文件. 二.查找wp_handle_upload在文件里面找到以下代码. function wp_handle_uplo ...
- JS异步编程 (1)
JS异步编程 (1) 1.1 什么叫异步 异步(async)是相对于同步(sync)而言的,很好理解. 同步就是一件事一件事的执行.只有前一个任务执行完毕,才能执行后一个任务.而异步比如: setTi ...
- 10.vue router 带参数跳转
vue router 带参数跳转 发送:this.$router.push({path:'/news',query:{id:row.id}}) 接收:var id=this.$route.query. ...
- Knowledge Point 20180309 字符串常量池与String,intern()
引言 什么都先不说,先看下面这个引入的例子: public static void test4(){ String str1 = new String("SEU") + new S ...
- Vue--- 一点车项目 6个小时实际看了10天(完结)
一个项目 环境安装 使用了 cli 脚手架 Koa2 workpackage 其他小的不计 前端Vue组件搭建 数据的简单测试交互 数据库的设计 创建.连接接数据库 前台[表单/分类] ...
- kali linux 安装 Mysql Can't read from messagefile 报错解决方案
1.下载安装包 下载地点:https://dev.mysql.com/downloads/mysql/ 或者 wget http://dev.mysql.com/get/Downloads/MySQL ...
- Java OOP——第六章 框架集合
1.集合框架包含的主要内容及彼此之间的关系: 图1: 集合框架:是为了表示和操作集合而统一规定的一种统一的标准体系结构. 包含三大块的内容:对外的接口.接口的是实现和对 ...
- PHP获取当月天数,获取当月的每天的开始和结束的时间戳,获取当月每号
由于经常要写导单和数据分析功能,所以要获取什么时间的数据,想什么当天,周,年,月之类的时间格式都很好获取.我今天在这里为大家提供的是当月每天的开始和结束的时间格式. 希望能帮到大家!!! # 获取当月 ...