文章目录
1. 游戏简介
以培养绿色蔬菜为背景,在不采用农药的情况下,让玩家培育出绿色蔬菜。
在游戏中玩家通过摆放一些具有防虫功能的植物,如艾蒿、驱蚊草、洋甘菊和猫薄荷等带有驱虫作用的植物来驱赶或消灭害虫。
2. 基本玩法
《驱赶害虫》-实操视频
- 玩家进入关卡后,需要在规定的时间内种植并成功收获完成相应数量的目标植物才能胜利,否则会失败。
- 玩家通过当前关卡后,才能解锁下一关,默认第一关不解锁。
- 冬天关卡:最多1种害虫出现,1种战斗蔬菜可供种植,玩家胜利需要收获1株目标植物,规定通关时间60S。
- 春天关卡:最多2种害虫出现,2种战斗蔬菜可供种植,玩家胜利需要收获2株目标植物,规定通关时间60S。
- 秋天关卡:最多3种害虫出现,3种战斗蔬菜可供种植,玩家胜利需要收获3株目标植物,规定通关时间60S。
- 夏天关卡:最多3种害虫出现,3种战斗蔬菜可供种植,玩家胜利需要收获4株目标植物,规定通关时间60S。
3. 游戏场景和玩法
3.1. 第一关
通关时间:1分钟,保卫蔬菜数量5个以上。
- 0-60s疏菜区的蔬菜开始成长并逐渐长出虫子,一个蔬菜长成只需要15秒钟,蔬菜区共培养5-15个疏菜(具体数目随机,多个蔬菜可以异步实现同时生长)
- 9-60s蔬菜区开始长虫,一个虫子会随机生长在一个蔬菜上,一个虫子长成需要12秒钟,玩家必须在虫子生长阶段种植战斗蔬菜(战斗蔬菜应当与生虫的蔬菜保持在一定的距离之内),若虫子长成后还没有战斗蔬菜攻击它,那么此时将逐渐杀死所在的蔬菜。若虫子在生长阶段受到攻击,则会立即倒地死亡。
则应逐渐变小死亡(死亡时间和生长时间一致,即逆向播放生长动画)。 - 战斗蔬菜长成需要3秒钟,战斗蔬菜长成之后才能发动攻击,并且攻击范围有限。
- 前10帧正常生长,第11帧开始生虫,虫子10帧生长动画,虫子长成后开始对植物造成有杀伤力的攻击,这时植物应该到第21帧,如果没有虫子干扰,则继续生长,如果有虫子干扰,停止生长,每秒钟降低一格血量,降低5个血量后开始执行枯萎动画(25-26帧)。
- 第1关(冬天):1种害虫+1种驱虫植物+1种蔬菜,第2关(春天):2种害虫+2种驱虫植物+1种蔬菜,第3关(夏天):3种害虫+3种驱虫植物+1种蔬菜,第4关(秋天):4种害虫+4种驱虫植物+1种蔬菜
- 检测方法:基于标记位的快速精准检测方案。把地图分为24块,并给每个地图一个序号。
第六块土地的驱虫蔬菜可对周围的八块土地产生保护效果,则
6-1=5
6-2=4
6-3=3
6-5=1
6-7=-1
6-9=-3
6-10=-4
6-11=-5
易得只要这块驱虫蔬菜所在的土地块的序号减去虫子生长的土地块的序号的绝对值为1、3、4、5即可对害虫产生杀伤力,检测效果很好,且很快(后期又修复了一下边界值问题)。
4. 说明
- 春季包含冬季的所有害虫和驱虫植物
- 秋季包含春季的所有害虫和驱虫植物
- 夏季包含秋季的所有害虫和驱虫植物
5. 害虫
- 冬季毛毛虫(caterpillar)
- 春季蜗牛(snail)
- 秋季蝴蝶(butterfly)
- 夏季蚜(aphid)
6. 驱虫植物
- 冬,薰衣草(lavender)
- 春,艾蒿(mugwort)
- 秋,非洲菊(AfricanDaisy)
- 夏,马蹄莲(callaLily)
7. 目标植物
- 冬,草(grass)
- 春,向日葵(sunflower)
- 秋,橘子(orange)
- 夏,茄子(eggplant)
薰衣草具有很强的适应性。成年植株既耐低温,又耐高温,在收获季节能耐高温40℃左右。陕西黄龙地区,薰衣草植株安全露地越冬在-21℃;新疆地区,经埋土处理、积雪覆盖可耐-37℃低温。幼苗可耐受-10℃的低温。
- 春,艾蒿(mugwort)
每年3月初在地越冬的根茎开始萌发,4月下旬采收第一茬,每公顷每茬采收鲜产品11250~15000千克,每年收获4~5茬。 - 秋,非洲菊(AfricanDaisy)
春播3-5月,秋播9-10月。 - 夏,马蹄莲(callaLily)
喜温暖、湿润和阳光充足的环境。不耐寒和干旱。生长适温为15~25℃,夜间温度不低于13℃,若温度高于25℃或低于5℃,被迫休眠。马蹄莲喜水,生长期土壤要保持湿润,夏季高温期块茎进入休眠状态后要控制浇水。土壤要求肥沃、保水性能好的黏质壤土,pH值在6.0~6.5之间。
8. 美工任务
设计分辨率:1024*576
虫子死亡动画及生长动画,需要保护的蔬菜生长及死亡动画,战斗蔬菜生长动画。
9. 代码任务
9.1. 封装游戏引擎QE
基于Cocos2d-x 3.17.1和C++ 17构建QE(Quick Engine,快速引擎)来尽可能多地提升代码的复用性。
QE(Quick Engine,快速引擎)简介:
基于Cocos2d-x 3.17.1、C++ 17构建,用来尽可能多地提升代码的复用性。
QE具体表现为:优化默认的参数值及参数列表,使原来需要数行代码才能完成的功能,现在只需要一行代码就能完成。
比如:
- 快速生成背景精灵、设置锚点和位置均为(0, 0)、并添加到当前节点,只需要调用一个宏就行了。
记得把资源改成bg.png。
调用“QE_addBgSpriteToThis”这个宏即可,无需多于代码,也不需要传递任何参数 - 快速生成菜单,传两张图片的名以及一个可调用对象即可。
9.2. 类和界面的关系
- 游戏启动资源加载界面:LoadingScene
- 开始游戏界面:StartGameScene
- 关卡选择界面:SelectLevelScene
- 游戏界面:GameScene
支持类:
1.游戏暂停界面:PauseScene
2.计时器:TimerLayer
3.害虫类:PestLayer
4.需要保护的蔬菜与战斗蔬菜:VegetableLayer
10. 运行截图即解说
-
首先我们打开游戏,进入游戏的加载界面
-
接下来是游戏的主界面,在游戏的主界面中,我们可以点击右下方的电源按钮以退出游戏,或者点击开始游戏和帮助
-
让我们先点击帮助按钮进入帮助界面,在帮助界面中我们可以了解一下游戏的基本玩法,了解完毕之后点击OK按钮以关闭帮助界面
-
点击开始游戏之后会进入关卡选择界面,在关卡选择界面中一共有冬、春、秋、夏四种不同的关卡可供选择。选中相应的关卡之后,背景音乐会换成相应关卡所特有的声音。
-
在选择关卡界面的右上方,我们可以选择关闭或打开背景音乐。在切换所选择的关卡时,我们可以通过点击左右箭头按钮或者滑动的方式进行
-
冬天是万物蛰伏的时候,害虫较少,所以通关比较容易。春天万物复苏,害虫开始活动,因此消灭害虫的难度会有所增大。秋天万物开始凋零,害虫活动有所下降,所以通过难度相比于夏天会有所降低。夏天是害虫活动较为频繁的时候,最难通关。
-
玩家通过上一关卡后,才能解锁下一关,默认第一关不上锁。
-
让我们选中冬天关卡后点击开始此关以进入冬天关卡,
- 冬天关卡:最多1种害虫出现,1种战斗蔬菜可供种植,玩家胜利需要收获1株目标植物,通关时间为60秒,冬,草(grass),薰衣草(lavender)
-
游戏胜利后我们可以点击返回按钮返回到游戏关卡选择界面,或者点击重新开始按钮以重新开始当前关卡,也可以点击下一关的按钮进入下一关
- 春天关卡:最多2种害虫出现,2种战斗蔬菜可供种植,玩家胜利需要收获2株目标植物,通关时间为60秒,春,向日葵(sunflower),艾蒿(mugwort)
-
- 秋天关卡:最多3种害虫出现,3种战斗蔬菜可供种植,玩家胜利需要收获3株目标植物,通关时间为60秒秋,橘子(orange),非洲菊(AfricanDaisy)
目标植物需要一段时间长成熟之后才能进行收获,驱虫植物也需要一段时间成长才能进行保护它周围的植物,当驱虫植物有粒子特效的时候说明已完成成长并在保护它周围的植物
- 秋天关卡:最多3种害虫出现,3种战斗蔬菜可供种植,玩家胜利需要收获3株目标植物,通关时间为60秒秋,橘子(orange),非洲菊(AfricanDaisy)
-
- 夏天关卡:最多3种害虫出现,3种战斗蔬菜可供种植,玩家胜利需要收获4株目标植物,通关时间为60秒,茄子(eggplant),马蹄莲(callaLily)
- 玩家进入关卡后,需要在规定的时间内种植并成功收获目标植物数大于通关所规定的最低植株数的才能胜利,否则会失败。