当前位置: 首页 > news >正文

【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
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/eggtomcato/p/10113847.html

相关文章:

  • mysql安装时无法启动服务解决方案
  • Linux初级运维(十五)——bash脚本编程之函数
  • Hystrix断路器在微服务网关中的应用
  • 怎么把工作型PPT制作的好看又专业?
  • git切换分支
  • 数据加密:RSA 加解密
  • react 前端项目技术选型、开发工具、周边生态
  • Keras笔记
  • JQ和Js获取span标签的内容
  • yaml 配置文件
  • 前端之JQuery:JQuery属性操作
  • canvas 绘制双线技巧
  • 软件工程期末考试复习
  • Spark任务调度
  • 阿里架构师教你如何设计一个 RPC 系统!
  • 【刷算法】求1+2+3+...+n
  • DataBase in Android
  • ES6 学习笔记(一)let,const和解构赋值
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • Java比较器对数组,集合排序
  • LeetCode29.两数相除 JavaScript
  • 搭建gitbook 和 访问权限认证
  • 前端攻城师
  • 让你的分享飞起来——极光推出社会化分享组件
  • 移动端 h5开发相关内容总结(三)
  • 正则学习笔记
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • (9)目标检测_SSD的原理
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (九十四)函数和二维数组
  • (一)kafka实战——kafka源码编译启动
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (转)visual stdio 书签功能介绍
  • .mysql secret在哪_MySQL如何使用索引
  • .net mvc 获取url中controller和action
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .net refrector
  • .net 设置默认首页
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • ::
  • @property python知乎_Python3基础之:property
  • [20180224]expdp query 写法问题.txt
  • [BROADCASTING]tensor的扩散机制
  • [BZOJ] 1001: [BeiJing2006]狼抓兔子
  • [BZOJ4554][TJOI2016HEOI2016]游戏(匈牙利)
  • [codevs 1288] 埃及分数 [IDdfs 迭代加深搜索 ]
  • [COI2007] Sabor
  • [JAVA设计模式]第二部分:创建模式
  • [Kubernetes]9. K8s ingress讲解借助ingress配置http,https访问k8s集群应用
  • [Latex] Riemann 问题中的激波,接触间断,膨胀波的 Tikz 绘图
  • [Matlab有限元分析] 2.杆单元有限元分析