cocos creator编写2048小游戏,发微信小游戏

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: cocos creator编写2048小游戏,发微信小游戏

不说废话,先上效果图\
在这里插入图片描述\

先看看我们的游戏对象有哪些:\
image.png

image.png

当数组为0的时候,sprite就为空白。当数组不为0,sprite就显示对应的数字sprite。\
只需要动态控制好sprite的变化就行。

//画图
    drawmap:function()
    {
        var i =0
        var j =0
        
        var txt ="\n"
        for ( i = 1; i <= 4; i++)
        {
            for ( j = 1; j <= 4; j++)
            {

                if (this.a[i][j]!=0)            // 如果该位置没有数字,则不绘制
                {
                    txt = txt+(this.a[i][j]+"*")
                    /**/
                    if (i==1 && j==1)
                    {
                        cc.loader.loadRes(this.a[i][j]+".png", cc.SpriteFrame, function (err, spriteFrame) {
                        var backNode = cc.find("Canvas");

                        backNode.getComponent("HelloWorld").buttons[1][1].getComponent(cc.Sprite).spriteFrame  =spriteFrame

                    })
                    }
                    else if(i==1 && j==2)
                    {
                        cc.loader.loadRes(this.a[i][j]+".png", cc.SpriteFrame, function (err, spriteFrame) {
                        var backNode = cc.find("Canvas");
                    
                        backNode.getComponent("HelloWorld").buttons[1][2].getComponent(cc.Sprite).spriteFrame  =spriteFrame

                    })
                    }
            }
            //....
        }
}

//判断胜利和失败的条件基本相同

// 判断游戏结束
gameover:function()
{
    var i =0
    var j =0
    // 对于任意一个位置,该位置为空 或 四周有位置上的数字与该位置上数字相等,说明可继续移动(游戏可继续)
    for (i = 1; i <= 4; i++)
        for ( j = 1; j <= 4; j++)
            if (!this.a[i][j] || this.a[i][j] == this.a[i + 1][j] || this.a[i][j] == this.a[i - 1][j] || this.a[i][j] == this.a[i][j + 1] || this.a[i][j] == this.a[i][j - 1])return false;
    // 否则游戏结束
    return true;
},

// 判断胜利
win:function()
{
    var i =0
    var j =0
    // 有任意一个位置达到 2048,则胜利
    for ( i = 1; i <= 4; i++)
        for ( j = 1; j <= 4; j++)
            if (this.a[i][j] == 2048)return true;
    return false;
},

//移动方面的可以参照简易版的

//移动
    move:function(c)
    {
        var i =0
        var j =0
        var k =0
        var x =0
        var y =0
        
        // 将 a 备份至 b
        for(i=0;i<=4;i++)
        {
            for(j=0;j<=4;j++)
            {
                this.b[i][j]=this.a[i][j]
            }
        }
        
        // 初始化 this.mov 为 false(所有点均未移动)
        for(i=0;i<=4;i++)
        {
            for(j=0;j<=4;j++)
            {
                this.mov[i][j]=false
            }
        }

        if(c==8) //向上
        {    
            for (j = 1; j <= 4; j++)
                for (i = 2; i <= 4; i++)
                {
                    if (this.a[i][j]==0)continue
                    k = i
                    while (this.a[k - 1][j]==0 && k >= 2)
                    {
                        
                        this.a[k - 1][j] = this.a[k][j]
                        this.a[k][j] = 0
                        k--    
                    }
                    
                    if (this.a[k][j] == this.a[k - 1][j] && this.mov[k - 1][j]==0)
                    {
                        
                        this.a[k - 1][j] = 2 * this.a[k][j]
                        this.playSound(this.a[k][j]*2)
                        this.a[k][j] = 0
                        this.mov[k - 1][j] = true
    
                        var anim = this.buttons[k - 1][j].getComponent(cc.Animation);
                        anim.play();
                        
                        
                
                    }
                }
        }
        else if(c==2) //向下 
        {
        //。。。。

可以说做出了简易版的基本算法,移植到cocos creator是十分简单的。

有想法的,可以关注公众号:诗一样的代码,交流一下

相关文章
|
10月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
10月前
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
数据可视化 前端开发 小程序
5G时代-探索微信小游戏
5G时代-探索微信小游戏
319 2
5G时代-探索微信小游戏
|
缓存 数据可视化 Serverless
微信小游戏 案例一 像素飞机
微信小游戏 案例一 像素飞机
283 2
|
开发框架 前端开发 JavaScript
微信小游戏案例三 抓星星
微信小游戏案例三 抓星星
472 0
微信小游戏案例三 抓星星
|
存储 JSON 测试技术
【cocos 2d微信小游戏开发教程】基础使用笔记分享(三)
【cocos 2d微信小游戏开发教程】基础使用笔记分享(三)
282 0
|
容器
【cocos 2d微信小游戏开发教程】基础使用笔记分享(二)
【cocos 2d微信小游戏开发教程】基础使用笔记分享(二)
640 0
|
API 开发者
【cocos 2d微信小游戏开发教程】基础使用笔记分享(一)
【cocos 2d微信小游戏开发教程】基础使用笔记分享(一)
1160 0
微信小游戏全局开启好友和朋友圈分享功能
微信小游戏全局开启好友和朋友圈分享功能
545 0
微信小游戏制作工具中文字设置的粗体不显示,怎么解决?
微信小游戏制作工具中文字设置的粗体不显示,怎么解决?
784 1