| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- let aGameInstance = require('GameInstance');
- cc.Class({
- extends: cc.Component,
- properties: {
- BGArr: {
- default: [],
- type: [cc.Node],
- serializable: true,
- },
- PlayerNode: {
- default: null,
- type: cc.Node,
- serializable: true,
- },
- BGSprite: {
- default: null,
- type: cc.SpriteFrame,
- serializable: true,
- },
- },
- onLoad ()
- {
- this.distance = 0;
- },
- Reset()
- {
- if(aGameInstance.bFirstInGame)
- {
- aGameInstance.bFirstInGame =false;
- return;
- }
-
- for(let i=0 ;i<3; i++)
- {
- //创建一个新的节点,因为cc.Sprite是组件不能直接挂载到节点上,只能添加到为节点的一个组件
- let node= new cc.Node('BG')
- //调用新建的node的addComponent函数,会返回一个sprite的对象
- const sprite = node.addComponent(cc.Sprite)
- //给sprite的spriteFrame属性 赋值
- sprite.spriteFrame=this.BGSprite;
- node.x = 720*i;
- //把新的节点追加到self.node节点去。self.node,就是脚本挂载的节点
- this.node.addChild(node);
- }
- },
- createMap()
- {
- //创建一个新的节点,因为cc.Sprite是组件不能直接挂载到节点上,只能添加到为节点的一个组件
- let node= new cc.Node('BG')
- //调用新建的node的addComponent函数,会返回一个sprite的对象
- const sprite = node.addComponent(cc.Sprite)
- //给sprite的spriteFrame属性 赋值
- sprite.spriteFrame=this.BGSprite;
- node.x = this.BGArr[2].x + 720;
- //把新的节点追加到self.node节点去。self.node,就是脚本挂载的节点
- this.node.addChild(node);
- return node;
- },
- update (dt)
- {
- if(this.PlayerNode.x>this.BGArr[1].x)
- {
- this.BGArr.push(this.createMap());
- this.BGArr.splice(0, 1);
- }
- },
- });
|