本文带你一起来观摩村长的JU新玩法——小游戏开发
先看疗效

棋盘
表格上画一个24*24的棋盘,用来供小蛇蛇爬行,右边是方向按钮和启停按钮(GO/STOP)

主循环
开发过游戏的童鞋应该都知道,游戏一般有个主循环,村长在主表定义了一个RUN字段,类型为整形,作为主循环条件

在上图中我们可以看到点击GO按钮后,RUN赋值为1,同时提数生成一个位置随机的新豆豆,然后进入主循环。
下图是主循环流程:

主要包括:
- 蛇头的前进:x=x+xx,y=y+yy
- 判断吃豆:if(x=ex and y=ey)
- 蛇身跟进:提数
q移动 - 判断是否挂掉:x,y>24 或者 x,y<0
- 等待300毫秒
蛇的移动
主表定义x,y为蛇头的坐标字段,xx,yy为蛇的前进向量。
明细定义x,y为蛇身子的坐标字段,旁边有一个flag字段,当flag=1时表示这一截身子是蛇尾,用来控制移动效果。

提数q移动如下:插入新头,舍弃蛇尾。

新豆生产
主表定义ex,ey为豆豆的坐标字段,类型整形,提数公式q新豆定义如下:

通过直接写sql,利用cast(ceiling(rand() * 24) as int)生成1~24之间的随机整数,然后填入到ex,ey即可。
吃豆
当蛇头(x,y)与豆豆(ex,ey)重叠时,判断吃豆变长,提数公式q吃定义如下:

实际就是把蛇尾复制一下,这样就变长了。
下面是完成后的主循环完整命令截图:

动画显示
这个部分比较简单,设置三种条件格式,根据x,y,ex,ey,明细表的x,y显示不同颜色即可。

小结
-
使用报表命令,轻松玩转小游戏,更多大开脑洞玩法等着你。
-
本文涉及的案例已打包成【六一库(180625)】←点击下载,欢迎下载玩耍。