评论

如何实现答题游戏?

以下内容来自公众号:小游戏可视化开发工具

   

    一个好的游戏,离不开数据的管理,比如记录得分、怪物血量、处理临时数据等都需要数据的支持。


    数据面板中有4种类型:变量、列表、表格以及通知。其中变量、列表和表格有全局和局部两种类型。



    全局具有唯一性,所有精灵都可以对其进行使用和修改。而局部则是属于某个精灵的,克隆精灵时也会克隆精灵的局部数据。


    下面就让我们通过一个答题游戏的制作来学习数据的使用吧!



    如上图所示,我们需要实现以下几个能力:

1. 题目的展示(包括正确答案)

2. 点击左右按钮切换题目

3. 点击选项显示星星,记录玩家答案

4. 提交答案,未完成时显示提示,成功提交后显示正确答案



1.题目的展示


     题目包括:问题、4个选项以及1个正确答案。先添加好对应精灵,并选择这几个精灵后右键组合成容器。



    场景中玩家点击左右按钮切换题目,因此我们需要一个表格来存储题目,一个变量记录当前是第几题,另一个变量记录是否已提交答案。



    当前题目变量初始化为1。



    在背景图层,当场景启动时,新建一个通知,通知所有人换题。



    题目容器在收到换题通知之后,更新题目内容,并根据是否已答题判断是否显示正确答案。



    这样题目的显示就完成了。



2.左右按钮切换题目


    首先添加左右两个精灵,并当精灵被点击时更新当前题目变量,并通知所有人换题。点击左按钮当前题目减少1,点击右按钮增加1。以左按钮为例:



    这里我们个精灵加上了一个局部变量:不可点击。因为第一个题目的时候,左按钮应该是不可点击的,最后一题的时候,右按钮也是不可点击的。所以我们还要加上按钮的不可点击状态的更新。


    左按钮:

   


    右按钮:



    这样左右按钮的功能也完成了。



3.星星的显示以及答题记录


    添加星星精灵,因为要计算星星的位置,所以把星星加入到题目容器里。调试好星星的初始位置。



    星星在场景启动时,是不显示的。



    我们需要一个答案列表,记录玩家的答题记录。并且初始化列表数据为0。0表示未答题。




    当选项被点击,更新答案列表中对应位置的数据,A选项更新为1、B选项为2、C选项为3、D选项为4。以A选项为例:




    星星在收到换题通知之后,判断当前题目是否已答题,并根据答案更新自己的Y坐标,移动到对应选项旁边。



    这样,星星的显示和记录答题也完成了。



4.提交


    玩家点击提交按钮,如果有题目未作答,则显示未完成提示,否则显示正确答案。首先添加好对应精灵,给提交容器添加点击事件。



    未完成精灵收到提示后,显示自己。



    最后,当成功提交后,修改按钮背景色。




    到这里,整个答题游戏就完成了。这个游戏我们使用了全局变量、列表、表格以及通知。大家可以通过下面的链接和二维码体验和改该游戏。





项目地址

https://gamemaker.weixin.qq.com/#/game?game_id=lbNjIyMmQ0OGEtOWNkZC00NzUwLWEzN2YtMDMwYTlhNzQ0YmEw

B站视频教程链接

https://www.bilibili.com/video/BV17T4y1P7bC


扫码关注公众号


最后一次编辑于  2021-06-21  
点赞 0
收藏
评论
登录 后发表内容