之前看最强大脑里边,他们有玩这个点线不相交的游戏,就是屏幕上很多的点,每个点至少跟另外两个点有连线。最开始时,这些线是交叉在一起,玩家移动点,将线分开不让其交叉,即为游戏通过。 我做的游戏截图如下
后面我在华为应用市场和其他应用市场上搜索过,一直没有发现该游戏的上市。 不知道是因为版权还是其他原因。于是便想着自己写一个来玩玩。
最开始我是想把游戏放在我的安卓手机上玩的,于是我在寻找一门可以做安卓app的语言。 几年过去后,已经不需要使用古老的java+android studio来开发安卓app了。 搜寻了几天, 我找到了python+kivy的方式。下面给出我看过的几个kivy的学习网站。
https://www.youtube.com/playlist?list=PLQVvvaa0QuDe_l6XiJ40yGTEqIKugAdTy
https://www.jianshu.com/p/f95576c03f5b
感觉这个东西还是新货,国内关于这块的文章和教程比较少。
很多的新手程序员很难想出该怎么去写这个游戏,要怎样的随机算法才会让这道题有答案,不至于谁来玩都会发现是个死胡同。有一类魔术叫预言魔术,这类魔术很神奇,他看上去就像是先知一样。提前看到了未来。其实答案都是预先准备好的。
我们来想象一下怎么玩魔方。 比如说一个三阶魔方。这个玩具不可能在第一次恢复成功之后后面就束之高阁不玩了。如果下次还要玩要怎么办呢? 肯定就是先打乱这个魔方,从这个结果处打乱这个魔方。 这个游戏也是一样,我们先做一个正确的答案,再打乱点和线,再展示给玩家。
学了几天基础之后,就开始摸索着写游戏了。 下面讲解一下游戏的思路。
首先必须要实现一个圆圈。点击下去要变色,手指移开要恢复原来的颜色,还要能拖动。
第二,实现页面上画两个圆圈,之间用线相连。
第三,实现拖动一个圆圈,两个圆圈之间的线能跟随移动。
第四,实现四个圆圈,两两连线,当其线相交时,线条颜色为红色,当其不相交时,线条颜色为绿色。
第五,开始布局多个圆圈,然后自己定义线路让其不相交。
第六,再随机移动这些圆圈,让其线相交。
第七,展示给玩家去操作。
写完初始版本之后,自己玩了几回,发现难度还好,基本只要有时间,够耐心,都是可以成功的。
自己的心愿算是完成了。因为一些时间上的原因,难以再继续完善这个游戏。故此将源代码上传至github,供大家学习参考使用。同时也将打包好的安卓安装包也放在上面。
https://github.com/bbg221/linecross
有兴趣也有时间的同学也可以继续在此基础上继续完善,将游戏做完,比如分等级挑战,排行榜,好友比赛,分享朋友圈等。
游戏代码可拿去随便改造,希望能在首页加上 桥南 的名字。
可转载,不过请注明。