9.2.1 游戏设计
游戏规则,生成4×4的16个黑线边白底方格,随机放入1到15个数字在每个格子里,剩余一个格子是空格(其位置也随机指定)。然后通过鼠标点击来移动数字,让数字从1到15连续顺序排列成功,则游戏成功结束。
第一步,用字典tiles记录16个格子的x、y坐标及对应的内容;其中0代表空格,其他值为随机的1到15;用freegames的 vector(x,y)记录每个格子的x、y坐标并作为字典tiles的键,随机生成的0到15为对应的值。
第二步,根据tiles每个元素的(x,y)(键)和对应的值,利用turtle绘图库绘制每个方格。
第三步,用鼠标事件onscreenclick( )获取当前格子的坐标和值,并判断其四周是否存在空格,若存在空格,则移动到空格方格,调整tiles记录内容;若不存空格,则当前单击的数字不移动。(https://www.daowen.com)
根据鼠标不断点击,反复执行第二步、第三步,直到1到15数字顺序有序排序为止,如图9.12所示,游戏结束。

图9.12 数字华容道