为了调动FineReport开发者的积极性,本人在此向所有社区开发者发出挑战!
本期为第一期,题目为贪吃蛇
难度系数:★★★
欢迎大家来挑战!
演示视频
功能描述
1、游戏界面布局
为了更好的演示游戏功能,我们希望你可以实现以下几块内容:
- 数据展示区:用来展示当前游戏的一些系统数据。
- 玩法讲解区:用来说明游戏操作解释(可以不实现)。
- 游戏界面展示区:最重要的部分,用来展示游戏动画界面。
- 操作区:用来存放操作按钮。
- 功能实现点:用来辅助说明功能实现的解释(可以不实现)。
2、游戏地图
游戏地图为15*15的正方形区域。
3、蛇头初始化
游戏初始化后,需要在左上角位置生成一个长度为1的蛇头。
4、果实初始化
游戏初始化后,需要在地图上随机生成10个果实,颜色标记为红色。
5、操作台
在游戏地图下方创建操作台,拥有上下左右四个按钮,控制蛇行进方向。
6、按钮控制蛇行进方向
通过点击操作台的四个按钮,蛇会向对应方向行进1格。
此游戏不支持蛇的自动行进,必须通过按钮控制。
7、蛇吃果实
蛇头与果实位置重合时,会吃掉果实,果实会从原位置消失,同时,蛇身会增加长度。
8、蛇头与蛇身
为了分辨蛇头与蛇身,需要设置蛇头为深蓝色,蛇身为浅蓝色。
9、游戏判定——输
当蛇头在行进过程中撞到四周墙壁,或者自身时判定游戏失败。游戏失败时蛇头变成深红色,蛇身变为浅红色,同时未吃完的果实变为灰色,下方操作台展示红色的`LOSE!`字样。 蛇头撞到墙壁时默认蛇头位置是墙壁外,所以结算界面不会出现蛇头。 当蛇头出现反向行进时也会导致蛇头吃到蛇身,从而导致判定为失败。
10、游戏判定——赢
当我们控制蛇吃掉所有果实时会判定游戏结束,蛇头会变成深绿色,蛇身变为浅绿色。下方操作台展示绿色的`WIN!`字样。
注意事项
既然是挑战,那么就一定要有一定的限定。
1、此游戏实现时必须使用FIneReport11 设计器实现。
2、禁止使用任何非常用插件。
3、禁止使用任何JavaScript代码。
挑战奖励
本题目旨在锻炼逻辑思维能力,所以面向的挑战者不限。
23年10月31号之前能够实现,并微信发我的朋友,在经过验证后,可免费获取本人在帆软学院上架的价值999元的《使用FineReport11 从零开发微型CRM系统》课程。当然,如果您已经是高级开发者,不需要此课程,那也可以转送他人。
|