cc.Component 的使用】的更多相关文章

1.组件简介 组件是Cocos Creator的主要构成,渲染(场景显示内容).逻辑.用户输入反馈.计时器等等几个方面都是由组件完成的.根据Cocos Creator的总体架构,组件和节点配合完成游戏所需内容. 所有组件都是代码脚本.一部分是Cocos Creator提供的,源码在Cocos Creator安装目录中:一些是用户自定义脚本,可在资源管理器中找到对应的脚本文件,组件需要添加到节点上才能执行. Cocos Creator是组件式开发游戏,组件是完成某种功能的部件,例如假设一个人穿了防…
组件入口函数1: onLoad: 组件加载的时候调用, 保证了你可以获取到场景中的其他节点,以及节点关联的资源数据;2: start: 也就是第一次执行 update 之前触发;3: update(dt):组件每次刷新的时候调用,距离上一次刷新的时间(会在所有画面更新前执行);4: lateUpdate(dt) 刷新完后调用(会在所有画面更新后执行);5: onEnable: 启用这个组件的时候调用;6: onDisable: 禁用这个组件的时候调用;7: onDestroy: 组件实例销毁的时…
1.组件入口函数,常有的:onLoad,start,update //组件在加载的时候运行,并且场景的初始化工作已经完成 onLoad() { }, //组件在第一次update调用之前调用 start() { }, //每次游戏刷新的时候调用,dt距离上一次刷新的时间,画面更新前调用 update(dt) { }, //画面更新后调用 lateUpdate(dt) { }, //组件被激活的时候调用 onEnable() { }, //组件被禁用的时候调用 onDisable() { }, /…
一.cc.Lable组件的使用 1.创建Label的方法 a.通过菜单直接创建Label组件:b.先创建节点,然后在节点上绑定Label组件即可. 2.Label 面板上的属性 String => 文本显示的内容; Horiznotal => 水平对齐的方式: 左 右 居中; Vertial => 上, 下, 居中, 字与行的排版 Font Size => 字体大小; LineHeight => 每行的高度; OverFlow => 文字排版: None: 没有任何特性…
cc.Class({extends: cc.Component,properties: {}, onLoad: function () { var clickEventHandler = new cc.Component.EventHandler(); clickEventHandler.target = this.node; //这个node节点是你的事件处理代码组件所属的节点 clickEventHandler.component = "MyComponent";//这个是代码文件…
cc.Event事件请不要直接创建 cc.Event 对象,因为它是一个抽象类,请创建 cc.Event.EventCustom 对象来进行派发. cc.Class({extends: cc.Component,_sayHello: function () { console.log('Hello World'); },onEnable: function () {this.node.on('foobar', this._sayHello, this); //添加事件},onDisable: f…
cc.Button 1:添加按钮的方法 (1)直接创建带Button组件的节点; (2)先创建节点,再添加组件;2:按钮组件, 按钮是游戏中最常用的组件, 点击然后响应事件;3: 按钮的过渡效果:    过渡: 普通状态, 鼠标滑动到物体上, 按下状态, 禁用状态 (1)没有过渡,只有响应事件; (2)颜色过渡, 过渡效果中使用颜色; (3)精灵过渡,使用图片过渡; (4)缩放过渡, 选项,在disable的时候是否置灰;4: 按钮禁用;5: 按钮添加响应事件 --> 节点-->组件 --&g…
对于cc.Node我分了四个模块学习: 1.场景树,2.事件响应,3.坐标系统,4.Action的使用:在此记录经验分享给大家. 场景树 1: creator是由一个一个的游戏场景组成,通过代码逻辑来控制场景跳转:2: creator场景是一个树形结构:3: 父节点, 子节点:4: cc.Node就是场景树中的节点对象: 5: 每个节点只要在场景里面,所以任何一个节点都是一个cc.Node: cc.Node属性 1: name: 获取节点的名字: 2: active: 设置节点的可见性: 3:…
cc.Class({ //奇怪的语法风格,cc.class, extends: cc.Component, //扩展自cc.Component properties: { //类的属性设置 jumpHeight: 0, //在这里可以在属性检察器里面设置,很奇怪的实现机制 jumpDuration: 0, //但是图形化的操作也很方便了,开发人员定义,动画人员 maxMoveSpeed: 0, //根据实际修改 accel: 0, //加速度 // foo: { //默认的属性等,不知道这种是如…
经过不断的思考发现,如果是两个sprite都添加触控的时候,往往直接成单点触控, 但是如果是两个node的时候在node上面点击就会变成多点触控的形式 cc.Class({ extends: cc.Component, properties: { isAPress:false, aLabel: { default:null, type :cc.Label } }, // use this for initialization onLoad: function () { this.isAPress…
研究了一天,多点触控的点无法保存,只能模拟多点触控了 cc.Class({ extends: cc.Component, properties: { wheelStick:{ default:null, type:cc.Sprite }, hero: { default:null, type:cc.Sprite }, wheelDir: { default:"null", } }, // use this for initialization onLoad: function () {…
cc.Class({ extends: cc.Component, properties: { }, // use this for initialization onLoad: function () { this.registerTouch() }, registerTouch:function () { var self=this cc.eventManager.addListener({ event: cc.EventListener.TOUCH_ONE_BY_ONE, //开始 onT…
cc.Class({ extends: cc.Component, properties: { progressBar: { default:null, type:cc.ProgressBar }, }, // use this for initialization onLoad: function () { this.progressBar.progress=0.01 }, // called every frame, uncomment this function to activate u…
cc.Class({ extends: cc.Component, properties: { moveSpeed: 100, rotationSpeed: 90 }, // use this for initialization onLoad: function () { }, // called every frame, uncomment this function to activate update callback update: function (dt) { this.node.…
cc.Class({ extends: cc.Component, properties: { }, // use this for initialization onLoad: function () { var manager=cc.director.getCollisionManager(); manager.enabled=true; manager.enabledDebugDraw = true; manager.enabledDrawBoundingBox = true; }, on…
ball.js cc.Class({ extends: cc.Component, properties: { x_vel:{ default:0 }, y_vel:{ default:0 }, grivatity:{ default:null }, }, onLoad: function () { this.grivatity=-1; }, init:function ( x_vel,y_vel) { this.x_vel=x_vel this.y_vel=y_vel }, update: f…
cc.Class({ extends: cc.Component, properties: { prefab: { default:null, type:cc.Prefab }, root: { default:null, type:cc.Node } }, // use this for initialization onLoad: function () { for(var i=0;i<100;i++) { var mullers=this.getMuller() console.log(m…
cc.Class({ extends: cc.Component, properties: { musicPlayer: { default: null, type: cc.AudioSource }, dingClip: { default: null, url: cc.AudioClip }, cheeringClip: { default: null, url: cc.AudioClip } }, // use this for initialization onLoad: functio…
cc.Class({ extends: cc.Component, properties: { musicPlayer: { default: null, type: cc.AudioSource }, }, onLoad: function () { this.musicPlayer.play(); }, }); 新建一个节点,添加audio source,然后再audio source上面添加代码,再把当前节点拖到cc.AudioSource组件上面.…
MonsterPrefab.js var Helpers = require('Helpers'); cc.Class({ extends: cc.Component, properties: { spriteList: { default: [], type: [cc.SpriteFrame] } }, // use this for initialization onLoad: function () { //随机帧数 var randomIdx = Helpers.getRandomInt…
x=x+v v=v+gr cc.Class({ extends: cc.Component, properties: { velocity:{ default:null }, grivatity:{ default:null }, }, // use this for initialization onLoad: function () { this.velocity=30; this.grivatity=-1; }, // called every frame, uncomment this…
cc.Class({ extends: cc.Component, properties: { elementLable: { default: null, type : cc.Label }, map: { default:null, type :cc.TiledMap }, }, // use this for initialization onLoad: function () { var self=this cc.eventManager.addListener({ event: cc.…
//移动方向枚举类 var MoveDirection = cc.Enum({ NONE: 0, UP: 1, DOWN: 2, LEFT: 3, RIGHT: 4 }); var minTilesCount = 2; var mapMoveStep = 1; var minMoveValue = 50; cc.Class({ extends: cc.Component, editor: { requireComponent: cc.TiledMap }, properties: { _touc…
cc.Class({ extends: cc.Component, properties: { player:{ default:null, type:cc.Sprite } }, // use this for initialization onLoad: function () { var self=this cc.eventManager.addListener({ event: cc.EventListener.TOUCH_ONE_BY_ONE, //开始 onTouchBegan: f…
cc.Class({ extends: cc.Component, properties: { anim:cc.Animation, }, // use this for initialization onLoad: function () { }, sheepJump:function() { this.anim.play("sheep-animation-jump") }, sheepRun:function() { this.anim.play("sheep-anima…
setInterval可以用来设置函数的执行频率 nodeList: { default:[], type:[cc.Node] } active 可以用来设置是否启用 cc.Class({ extends: cc.Component, properties: { nodeList: { default: [], type: [cc.Node] } }, // use this for initialization onLoad: function () { var self = this; th…
cc.Class({ extends: cc.Component, properties: { sheepAnim: { default: null, type: cc.Animation } }, // use this for initialization onLoad: function () { var anim = this.sheepAnim; setTimeout(function() { anim.play('sheep_jump'); }, 2000); }, // calle…
因为最近一段时间有打算做一个2D游戏的想法,就顺便学习了一下cocos,很惊异的它的脚本编写语言竟然支持js,正好以前对js有一定的了解,就临时拿起来了. 这是来自官方的一个实例,不过在参考过程中,发现这个函数并不是使用跳跃函数而是使用移动函数实现,就顺便记录下来了. 因为只是实现跳跃动作,所以只是简单的截取了实现跳跃的部分代码段. cc.Class({ extends: cc.Component, properties: { // 主角跳跃高度 jumpHeight: 0, // 主角跳跃持续…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>componentKnowledge-同级组件通信</title> <script src="js/vue.js"></script> </head> <body> <template…
kbengine_js_plugins 改动(2017/7/6) 由于Cocos Creator使用严格模式的js,而原本的kbengine_js_plugins是非严格模式的,因此为了兼容和方 便Cocos Creator开发的同学,本人对此脚本做了相应的修改,并共享出来. 1:修改了继承的实现方式(旧版本使用callee,严格模式下不能用callee) 2:变量名的定义(严格模式下,全局变量需要显式声明,并且为了防止全局命名污染,因此在变量名前加入了var声明为局部变量) 3:导出KBEng…