博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d-html5背景循环移动
阅读量:6376 次
发布时间:2019-06-23

本文共 2706 字,大约阅读时间需要 9 分钟。

var mainLayer = cc.Layer.extend({   ctor : function () {    this._super();    cc.associateWithNative(this, cc.Layer);

   // 中间背景    var mainBG1 = cc.Sprite.create(Res.Images.Main.main_bg);    var scale = WIN_HEIGHT / mainBG1.getContentSize().height;    mainBG1.setScale(scale);    mainBG1.setAnchorPoint(cc.p(0.5, 0.5));    mainBG1.setPosition(cc.p(WIN_WIDTH / 2, WIN_HEIGHT / 2));    this.addChild(mainBG1);    this.mainBG1 = mainBG1;

   // 粒子 火焰    this.ParticleSnow = cc.ParticleSystem.create(Res.Plists.Splash.splash_plist);    mainBG1.addChild(this.ParticleSnow);    this.ParticleSnow.setPosition(cc.p(260, 120));    if (this.ParticleSnow.setShapeType)     this.ParticleSnow.setShapeType(cc.PARTICLE_STAR_SHAPE);

   // 粒子 雪花    this._emitter = cc.ParticleRain.create();    mainBG1.addChild(this._emitter);    this._emitter.setPosition(cc.p(320, 960));    this._emitter.setLife(5);    this._emitter.setLifeVar(1);    this._emitter.setGravity(cc.p(0, -10));    this._emitter.setSpeed(10);    this._emitter.setSpeedVar(200);

   var startColor = this._emitter.getStartColor();    startColor.r = 0.9;    startColor.g = 0.9;    startColor.b = 0.9;    this._emitter.setStartColor(startColor);

   var startColorVar = this._emitter.getStartColorVar();    startColorVar.b = 0.1;    this._emitter.setStartColorVar(startColorVar);    this._emitter.setEmissionRate(this._emitter.getTotalParticles() / this._emitter.getLife());    this._emitter.setTexture(cc.TextureCache.getInstance().addImage(Res.Images.Main.menu_snow));    if (this._emitter.setShapeType)     this._emitter.setShapeType(cc.PARTICLE_STAR_SHAPE);

   // var mainBG2 = cc.Sprite.create(Res.Images.Main.main_bg);    // mainBG2.setScale(scale);    // mainBG2.setAnchorPoint(cc.p(0, 0));    // mainBG2.setPosition(cc.p(mainBG1.getContentSize().width, 0));    // this.addChild(mainBG2);    // this.mainBG2 = mainBG2;    // this.schedule(this.update);

   // 上中下三层    this.topLayer = Global.topLayer = new topLayer();    this.addChild(this.topLayer, 1, 1);

   this.botLayer = Global.botLayer = new botLayer();    this.addChild(this.botLayer, 1, 2);

   this.midLayer = Global.midLayer = new midLayer();    this.midLayer.setScale(WIN_SCALE_WIDTH);    this.addChild(this.midLayer, 0, 3);   },   update : function () {    //创建两个点对象..分别保存两张地图的位置    var map_1p = this.mainBG1.getPosition();    var map_2p = this.mainBG2.getPosition();

   //每次调用这个函数的时候就设置两张地图的位置..这里的-3值越大也就越快.    this.mainBG1.setPosition(cc.p(map_1p.x - 0.2, map_1p.y));    this.mainBG2.setPosition(cc.p(map_2p.x - 0.2, map_2p.y));

   //分别判断地图.如果完全出场景了..马上调整位置接上    var scale = WIN_HEIGHT / this.mainBG1.getContentSize().height;    if (map_1p.x < 0) {     this.mainBG2.setPosition(cc.p(map_1p.x + this.mainBG1.getContentSize().width * scale - 2, map_1p.y));    }

   if (map_2p.x < 0) {     this.mainBG1.setPosition(cc.p(map_2p.x + this.mainBG2.getContentSize().width * scale - 2, map_2p.y));    }   }  });

转载地址:http://uztqa.baihongyu.com/

你可能感兴趣的文章
【leetcode】Longest Common Prefix (easy)
查看>>
JAX-WS(JWS)发布WebService
查看>>
Centos7安装docker-compse踩过的坑
查看>>
细说Nullable<T>类型
查看>>
oracle 插入表数据的4种方式
查看>>
7.Ajax
查看>>
Linux vi/vim编辑器常用命令与用法总结
查看>>
对于 url encode decode js 和 c# 有差异
查看>>
centos rz sz安装
查看>>
mysql 修改列为not null报错Invalid use of NULL value
查看>>
epoll源码分析
查看>>
朱晔和你聊Spring系列S1E4:灵活但不算好用的Spring MVC
查看>>
Java使用Try with resources自动关闭资源
查看>>
china-pub十一周年庆,多重优惠隆重登场,千万别错过哟!
查看>>
HDU 3068 最长回文(manacher算法)
查看>>
二叉树
查看>>
Node脚手架编写初学者教程
查看>>
08_Node js 工具模块 util
查看>>
手把手教你如何安装水晶易表——靠谱的安装教程
查看>>
Python单例模式(Singleton)的N种实现
查看>>