打地鼠游戏收获

  • Post author:
  • Post category:其他


今天花了一天的时间写了一个简单的打地鼠游戏。在开发的过程中用到了很多之前开发都没有用到的知识点:具体总结如下:

1:首先是关于倒计时的图片更改。需要达到的效果就是当玩家点击开始游戏的时候就会倒计时三秒 ,这个效果的完成就是有了对精灵的加载资源进行重写。先是写一个js文件他是继承精灵的一个对象。这这个js文件中什么都不要写。只是给倒计时的时候调用就可以。写一个计时器每一帧都会调用一个倒计时的方法。在方法中通过更改一个变量的值。也就是最开始的秒数。通过这个时间传入加载资源。达到一个没一秒都更改图片的效果;具体代码如下:

 //倒计时图片
    readingAmin:function(){
        var sp = new Reading();
        sp.setPosition(cc.winSize.width>>1,cc.winSize.height>>1);
        if(this.countDownTime>0){
            sp.initWithFile("res/read_"+this.countDownTime+".png");
        }
        this.addChild(sp,5);
        var scale = cc.scaleTo(0.5,1);
        sp.runAction(cc.sequence(scale,cc.callFunc(function(){
            sp.removeFromParent(true);
        })))
        this.countDownTime--;
    },

2:还有就是最高分的使用。使用

cc.sys.localStorage.setItem("bestNumber", Math.max(this.score, cc.sys.localStorage.getItem("bestNumber")));


第一个参数就是你设置的参数,就相当于自定义事件中的事件名 ,也就是说是key。第二个参数就是用本地存储的值与当前的分数进行比较,并且给大的存到本地内存中。在使用中先设置好一个文本框然后直接通过key获取里面的数据

this.maxScore.setString("MaxScore:"+cc.sys.localStorage.getItem("bestNumber"));


3:进度条的使用:

使用ccui.LoadingBar()

//设置进度条
        var loadingSp = new cc.Sprite(res.loadingbar_1);
        loadingSp.setPosition((cc.winSize.width>>1),(cc.winSize.height>>1)+250);
        this.addChild(loadingSp,50);
        this._lading = new ccui.LoadingBar();
        this._lading.setName("loadingBar");
        this._lading.loadTexture(res.loadingbar_2);
        this._lading.setPercent(0);//开始的进度   (Percent)是百分比的意思
        this._lading.setPosition((cc.winSize.width>>1)+20,(cc.winSize.height>>1)+235)
        this.addChild(this._lading,50);

在使用的时候使用一个全局的变量接受计算这个进度条的百分比。最后每一帧都设置进度条的百分比就可以达到一个进度条的效果

还有一些动画和一些简单的知识点就不进行总结了。



版权声明:本文为wzyezqxl原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。