如何在游戏中制作一个物品图鉴的功能?

简介: 这种功能能够满足玩家的收集欲望,就像我们小时候收集的画册,邮票,现在大家喜欢收集的手办,卡片等等。只要有这样的一个收集图鉴,你就总是会想把其中的所有物品全部集齐或者点亮。

嗨!大家好,我是小蚂蚁。

今天我们分享一下如何使用滚动列表来实现一个物品图鉴功能。

如图,在很多的游戏中都有这种物品图鉴的模块,用于玩家在游戏的过程中收集解锁物品,或者敌人,宠物等等。

这种功能能够满足玩家的收集欲望,就像我们小时候收集的画册,邮票,现在大家喜欢收集的手办,卡片等等。只要有这样的一个收集图鉴,你就总是会想把其中的所有物品全部集齐或者点亮。

下面我们就来看一下如何在微信小游戏制作工具中实现一个这样的物品图鉴功能。

先来布置一下示例的场景。

如图,我们导入了滚动列表插件(位于素材库中的插件类别中),制作了两个容器,一个是显示物品图鉴的面板,一个是用于滚动列表中的物品项。

重点来看一下滚动列表的属性设置。

有的同学问我做的滚动列表为什么只有一行或者一列呀?那是因为你没有设置行数或者列数呀!这里滚动方向选择的是“上下”,下面对应的会出现列数的属性。如果滚动方向选择的是“左右”,那下面对应的会出现行数的属性。

在子元素中选择我们制作好的“物品项”容器,子元素中可以选择单个精灵或者容器。

接着,我们来看一下对于物品项的处理。

如图,物品项容器中包含了两个部分:一个精灵图片用于显示物品图,一个基础文字用于显示物品名称。在滚动列表中要显示很多个不同的物品,对应的不同的图片和不同的文字,这些该怎么处理呢?

对于图片来说,可以通过为一个精灵增加多个造型来实现。

我们可以为一个精灵图片增加很多个造型(你可以把造型理解为一个人的很多套衣服),每个造型都有一个独立的编号,这个编号就是切换造型的关键。

对于物品名称来说,最好是也能按照一定的编号来设置,我们可以借助列表来实现。

如图,因为物品只需要一个名字,所以我创建了一个列表,如果你的物品还需要介绍等其它信息,可以选择使用一个表格来管理数据(表格的行号就是编号),列表中的第几项代表的就是这个物品名字的编号。

这个编号就是一把钥匙,只要有了一个物品的编号,我们就能够通过这个编号获取物品的图片以及名称了。

最后,来看一下物品项上的积木逻辑。

这里有两个重点:第一是所有滚动列表中的项,都是被滚动列表插件克隆出来的,所以初始化操作应该放在“当克隆体启动时”积木中,如果你把初始化操作放在“当场景启动时”积木中,就会发现初始化操作没有完成。第二是列表中的项是从 1 开始计数,想要知道当前是第几项,可以通过使用积木“自己的列表索引”来获得,这个列表索引就是我们之前所说的那把钥匙。

滚动列表一共有 15 项,对应的列表索引是 1~15,物品精灵有 15 个造型,对应的是 1~15,存储物品名称的列表中有 15 项,对应的是 1~15。每个索引对应一个造型和一个物品名称,很像是一把钥匙对应一把锁。

为了测试,我们增加了一个按钮,创建了一个“当前等级”的全局变量,以及一个“物品解锁”的通知。

每点击一次按钮,等级增加 1 ,然后解锁一个新的物品。

在真实的游戏中,有可能通过关卡来解锁物品,也可能通过游戏中的某些节点(干掉某种怪,收集到某个物品或宠物)来解锁物品。我们今天所讲的是物品图鉴的展示功能,至于背后的具体数据逻辑需要视具体的游戏而定。

*所有学员可在知识卡片库中学习该教程,文末有示例项目的开源链接。

本篇教程来自于我为学员创建的【知识卡片库】,一个知识卡片是一个问题和一个解决方案,搭配关键字搜索功能,可以帮助学员快速的找到解决问题的方案。目前知识卡片的数量已超过 100 个,还在继续增加中。

欢迎加入小蚂蚁的课程服务,从入门到进阶一套全搞定,不只有课程,还有一年的咨询,学员群,模版库,素材库等一系列配套服务,帮助你更好的学习并掌握游戏开发技能。【点击这里】可以了解课程服务详情。

这里是小蚂蚁的小游戏系列,闲暇之余希望能给你带来片刻的放松和愉悦。无需下载安装,点击下方的游戏卡片就可以直接玩啦!










也欢迎加个微信,交个朋友,朋友圈每日分享与做游戏有关的知识和内容,可以来围观。备注“学习做游戏”可免费领取学习做游戏的原创教程资料。接受付费咨询,不闲聊,望见谅。

相关文章
|
存储 JSON 缓存
CocosCreator3.8研究笔记(十五)CocosCreator 资源管理Asset Bundle
CocosCreator3.8研究笔记(十五)CocosCreator 资源管理Asset Bundle
990 0
|
Java Maven
Maven配置阿里云镜像
在setttins.xml文件中找到标签对,进行修改: 1 2 3 nexus-aliyun 4 * 5 Nexus aliyun 6 http://maven.
93983 0
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
超越文本局限:生成式人工智能(GAI)认证引领未来技能新范式
生成式人工智能(GAI)正成为重塑社会生产力的关键力量,但其在复杂逻辑与深度推理方面存在局限。本文探讨GAI技术现状、局限及突破路径,如多模态融合、强化学习等,并引入GAI认证体系,助力个人技能提升与企业创新。未来,GAI认证有望引领技能新范式,推动社会生产力变革。
|
存储 安全 PHP
PHP中实现简单身份验证系统的步骤
【8月更文挑战第31天】在构建Web应用程序时,确保用户身份的合法性和数据的安全性是至关重要的。本文将引导你通过使用PHP语言来实现一个简单的身份验证系统,从数据库设计到前端登录界面的创建,再到后端逻辑的处理,我们将一步步地走过整个流程。无论你是PHP新手还是希望复习相关知识,这篇文章都将为你提供清晰的指导和实用的代码示例。
|
图形学 索引
【制作100个unity游戏之25】3D背包、库存、制作、快捷栏、存储系统、砍伐树木获取资源、随机战利品宝箱4(附带项目源码)
【制作100个unity游戏之25】3D背包、库存、制作、快捷栏、存储系统、砍伐树木获取资源、随机战利品宝箱4(附带项目源码)
430 2
|
7月前
|
存储 关系型数据库 数据库
华为数据库openGauss与PostgreSQL使用对比
华为openGauss数据库基于PostgreSQL内核演进,进行了多项增强。密码认证从MD5升级为SHA256;字符串存储中,char(n)、varchar(n)的n由字符改为字节,新增nvarchar2(n)表示字符,最大存储100MB;且将空字符''统一转换为null,提升了数据处理的一致性和安全性。
622 12
|
消息中间件 存储 负载均衡
高并发流量杀手锏:揭秘秒杀系统背后的削峰技术!
本文介绍了秒杀场景下的“削峰填谷”策略,通过消息队列缓冲用户请求,避免高并发对系统造成冲击。文中详细解释了消息队列的工作原理及如何通过预扣减库存和分布式锁确保数据一致性,同时还提出了合理的消息队列配置、高可用性及数据库负载均衡等最佳实践。通过这些技术手段,可有效提升系统的稳定性和用户体验。
605 8
高并发流量杀手锏:揭秘秒杀系统背后的削峰技术!
|
8月前
|
API 数据安全/隐私保护 开发者
京东商品评论数据接口(JD.item_review)丨京东API接口指南
京东商品评论数据接口(JD.item_review)让开发者获取京东商品的评论列表、内容、时间、买家昵称等详细信息,助力产品优化和市场研究。使用步骤包括注册京东开发者账号、创建应用并申请API权限、获取API密钥、阅读API文档,最后通过HTTP请求调用接口获取数据。示例代码展示了如何使用Python进行请求。
910 9
|
9月前
|
Java 物联网 程序员
还在纠结抽象类和接口?看这篇就够了!
本文从一位程序员的角度出发,讲述了其小学弟在Java开发面试中遇到的难题——抽象类与接口的区别。文章不仅详细解析了两者的定义、特点及主要差异,还提供了实际开发中的应用场景和面试答题技巧,帮助读者更好地理解和应用这一重要知识点。
1394 12
|
自然语言处理 图形学
【Unity实战】实现强大通用易扩展的对话系统(附项目源码)
【Unity实战】实现强大通用易扩展的对话系统(附项目源码)(2023/12/26补充更新)
1106 0

热门文章

最新文章