CocosCreator只谈实战系列1——成语游戏编辑器篇
前言
作者从18年4月开始试水微信小游戏,后面又用休闲小游戏项目尝试过国内安卓,头条小游戏,facebook等平台。
也是从18年4月第一次使用 cocos creator, 感觉creator的开发体验不错,特别是从Unity3D 转到creator很平滑,
无需看太多说明文档基本就能上手即用,同时,creator也能满足休闲游戏快速产出原型和核心玩法的这一要求。
接下来的一段时间,作者打算将手上的一些项目做成creator系列文章,这些项目每一个核心玩法都有所不同,也使用到了creator引擎的许多方面,希望对creator学习路上的朋友有所帮助。
本篇是系列第一篇,所选项目是今年大火的“成语"类,这个项目打算分两篇介绍,本篇先说关卡编辑器是如何实现的,下一篇再说游戏本体实现。 有看官可能得问了,为什么要先说编辑器?俗话说得好啊 ”工欲善其事必先利其编辑器“, 各位,对于成语这种动则几千关卡的项目,如果没有一个可以用起来很方便的编辑器,开发效率就变得很低下了。。 而就实际数据来说:
- 这个关卡编辑器使用了一周进行开发
- 一个策划人员一周可轻松制作 300 关卡
好了,废话不多说,下面进入正题。
一,需求分析与设计
”谋定而后动, 知止而有得“
写代码最好的状态是,当开始敲下第一行代码的时候,模块怎么划分,模块间怎么牵线搭桥,全盘皆成竹于胸
我们先来看看成语关卡编辑器的需求点吧:
- 我们应该制作一个编辑区,编辑器是9 X 9的格子布局,共81个格子
- 编辑成语的方式,应该是随心所欲的在格子上刷出成语,想怎么刷就怎么刷,这样生成关卡才快,你
把编辑器交付给你的策划同事,他要面临的是生成几千个关卡。。
- 换成语和删成语。 除了自由刷成语这个基本操作,应该支持对某个成语进行选中,把它换成其它更合适的
成语,或者直接删掉重新编辑。
- 去字功能。 这也是编辑器比较重要的一个功能,因为在游戏中玩家看到的成语都不是完整的需要填空,而去字
功能就是用来编辑那些字显示为空格需要让玩家填空。
一个关卡少说有7,8个成语,如果一个一个的去点就太累了,这里我们实现了一个‘自动一键去字’功能,一键去字,如果效果不好,再手动微调即可。
- 其它:关卡保存/关卡加载/成语词库配置读取
需求整理出来了,下一步就是简单设计和规划代码结构:
- *词条基本数据*
我们希望用一个类来描述成语词条的基本数据,请记住,它对应的仅仅
是成语词库里的一条数据,而不是成语对象。但是很明显,最终它会被一个成语对象所引用。
词条基本数据所需要的数据结构很简单:
//file i