zoukankan      html  css  js  c++  java
  • 【微信小游戏实战】零基础制作《欢乐停车场》二、关卡设计

    1、游戏立项

    微信小游戏中有一款《欢乐停车场Plus》的小游戏,大家可以搜索玩下。这是一款益智类的小游戏,游戏中有红、黄、绿、蓝、紫5辆豪车6个停车位,玩家通过可行走路线移动小车,最终让各颜色的小车停到对应的颜色车位,则完成本关挑战。接下来的日子,我将同大家一步一步的来实现这款小游戏,从零基础入门微信小游戏的开发和发布。

    2、本篇内容

    CocosCreator零基础制作《欢乐停车场Plus》微信小游戏  二、关卡设计

    3、文章检索

    1)、【微信小游戏实战】零基础制作《欢乐停车场》一、游戏设计

    2)、【微信小游戏实战】零基础制作《欢乐停车场》二、关卡设计

    3)、【微信小游戏实战】零基础制作《欢乐停车场》三、游戏场景制作

    4)、【微信小游戏实战】零基础制作《欢乐停车场》四、游戏关卡脚本实现

    5)、【微信小游戏实战】零基础制作《欢乐停车场》五、游戏玩法脚本实现

    6)、【微信小游戏实战】零基础制作《欢乐停车场》六、游戏结束

    7)、【微信小游戏实战】零基础制作《欢乐停车场》七、游戏发布

    4、游戏实战

    关卡设计的重点,就是分析游戏中的展现,通过合理的数据来展示对应的操作。

    这句话怎么理解呢?我们先分析游戏中的展现,先观察下面2张图:

       

    通过观察,我们可以发现以下几点:

    1)、车位:车位是不变的,构成了一个六边形的形状,从下往上,从左到右。依次是空、蓝、红、黄、绿、紫。同时也告诉我们车的颜色也固定了。

    2)、道路:道路的连线是跟随关卡变化而变化的。

    3)、车位置:车的初始位置也是随着关卡的变化而变化的。如:第一关红车的位置位于左下角,而第二关红车的位置位于六边形的最上面。

     这些变化的内容,就需要我们通过数据表示出来,同时对这些数据来做一些操作。如点击小车,小车移动了,位置会改变,原来空车位的位置会改变,这就需要操作我们的数据了。这就是关卡设计的重点。

    根据上面的几点,我们可以这样设计数据:

    1)、车位:从下往上,从左到右,我们依次用数字 0代表空车位;1代表蓝车位;2代表红车位;3代表黄车位;4代表绿车位;5代表紫车位;车跟车位颜色是对应的,那我们同时也能表示我们的豪车了,每个豪车也有编号了。^_^

    2)、道路:道路的连线,我们可以通过车位连线来表示这条道路。如:第一关空白车位和蓝色车位之间的这条道路,我们可以表示为[0,1],这样就可以准确的表示,0位置和1位置之间有一条道路。

    3)、车的位置:车的颜色(也可认为是编号)有了,车位的编号有了,那就可以准确的表示了。如第一关红车,我们可以表示为"红车在位置为1"=>[2,1](能想到这我们就离真相不远了),这样表示就有个问题5辆车,5个数组,有点复杂,其实我们可以用一个数组来表示出当前关车的位置。

    理解了上面的设计数据,我们就可以构造出这两关的数据:

    1)、第一关

     "level1":[
            [
                [0,1,1],[0,3,1],[0,5,1],
                [1,2,1],[1,4,2],
                [2,3,1],[2,5,3],
                [3,4,1],
                [4,5,1]
            ],
            [0,2,3,5,1,4]
        ],

    2)、第二关

    "level2":[
            [
                [0,1,1],[0,2,1],[0,4,1],[0,5,1],
                [1,5,2],
                [2,3,1],
                [3,4,1]
            ],
            [0,5,4,2,3,1]
        ],

    数据剖析:

    每一关可以认为是一个二维组数,

    1)、数组的第0个元素是所有的道路的连线,每条连线又是一个数组,如:第二关的第一条路线,可以表示为:level2[0][0] = [0,1,1];

    [0,1,1]表示什么意思呢?第0和第1个车位之间有一条路线,这条路线的zInde(显示层级)是1。

    2)、二维数数组的第1个元素是所有的车所在的位置,如:第二关的车位置可以表示为[0,5,4,2,3,1];

    [0,5,4,2,3,1]表示什么意思呢? 【第0车位是空,第1车位是紫车,第2车位是绿车,第3车位是红车,第4车位是黄车,第5车位是蓝色】。

    5、游戏总结

    1)、如有问题,欢迎留言,加QQ群交流。QQ群: 1群:418177552(已满)  2群:858799494

    2)、数据我们已经构造出来了,下一篇我们一起实现,游戏场景界面的布局。

  • 相关阅读:
    论文笔记:SRCNN
    4.2 CNN实例探究
    4.1 卷积神经网络
    3 ML策略
    2.3 超参数调试,batch正则化和程序框架
    2.2 优化算法
    2.1 深度学习的实用层面
    Lecture4 反向传播算法
    Lecture3 神经网络学习
    java基础部分
  • 原文地址:https://www.cnblogs.com/zhangdw/p/9845058.html
Copyright © 2011-2022 走看看