之前写过一个肝梧桐的,巧用横屏和连点器能让我们省很多事,但是梧桐毕业之后我们仍然会面临一点点问题:雏菊它不能被采集出来(ノ=Д=)ノ┻━┻
这个时候我们我们只需要选择摆烂,每个灌木周围留够8个空位,然后一个多小时过来收一下就可以了!
当然你会觉得我在说废话……拜托了肝帝怎么能选择摆烂呢!那么我们可能需要一些更肝的摆法:每个灌木周围只留一个空位,每次生产后就合成,这样的优点呢就是占地少,对后期灌木多的大佬和前期地方少的萌新来说都是不错的选择,就是有点废人(
在摆烂的情况下小花蕾会满整个地面,这样在合成的时候很方便就能连起来,一次就能全部合成,但是留一格生产的情况下,就不可避免地有些灌木的位置把小花蕾隔开了,花蕾连不起来,不仅需要多次合成,而且还会出现更多的复制体,删起来很麻烦,那么我们怎么样才能让生产的花蕾连起来呢?
最简单的方式就是摆成一排,但是我们通常没有可能一排就放下所有的灌木,这样不可避免地,如果想让灌木连起来,就会导致生产的位置相互挤压。
我们看别人家的灌木摆放很合理,固然可以直接抄下来,但是大家森林的空位其实可能并不一致,我们想要自己研究一个适合自己家的摆法,那么了解生产物品相互挤压的规则,对我们合理安排灌木位置就是很必要的!
首先我们复习一下最基本的生产顺序:←↓→↑↙↘↗↖
最基本的规则就是这样:在顺序靠前的位置有空位,优先生产在这个位置。
比如你摆成一排,最左边的灌木会生产在自己左边,其他灌木因为左顺位被挡住,会生产在第二顺位,就是自己下边,这样我们把最左边灌木的左边也用物品挡住,所有灌木就都会在下排生产啦!
这是最简单的大家常用的方法,但是我们可能遇到不止这种情况,当灌木生产位置相互冲突的时候,到底会生产在哪个位置呢?难道是灌木看心情随便选择一个位置?
其实我们知道对程序来说,是很难做到真随机的,程序更喜欢这种if else的规则,其实对现实时间真正的随机也很难做到,就像游戏人生里面你计算能力足够强,抛硬币会抛出哪一面也是可以算出来的!就像有因必有果,你的报应就是我……对不起扯远了。
回到灌木上面来,为了说明我搞了一点点示例图
绿色代表灌木,蓝色表示空位,没有标明的位置我们都默认是挡住的。红色对勾表示生产位置
比如这种:
还是比较简单的吧,因为对于两个灌木来说,生产在下面都是优先情况,所以二者都会生产在自己下边。
当我们把③位挡住,虽然对于灌木a来说优先是在①生产,但是这样就会导致灌木b无法生产,这种情况下,机智的程序就会选择让灌木a在②生产,而灌木b在①生产,这样我们就能获得尽可能多的小花蕾啦
这也就互相遮挡情况下最优先的规则:尽可能多生产
那么更加复杂的情况下,如果两个灌木都有两种选择呢?比如下图这种,a可以选择①②,而且①优先于②,b可以选择①③,而且①优先于③,在两个灌木都抢夺①位的时候,谁会赢呢?最后生产情况是这样的:(图1)
看起来好像是上面的灌木优先了。
但是再换一种情况,如下图生产情况:(图2)
假如①位是a生产的,那么b选择空位时其实是③优先于②,就不能出现这种情况了,那么我们只能得到:①是b生产的,而②是a生产的,在②③选择的时候,对灌木a来说②优先于③,才出现了这种情况,那么上面灌木优先好像也不太对。
再来一种情况:(图3)
好家伙彻底给我整不会了,这到底是为什么呢?我们再来复习一下生产顺序,并且标上数字:
我们把对每个灌木来说生产位置的数字加起来试试
对图1,选择①②位是这样的:①对灌木a是8,②对灌木b是4,8+4=12
选择①③位是这样的:①对灌木a是2,③对灌木b是5,2+5=7
最终生产方案是①③,也就是数字更小的一方
对图3,①②位的情况:4+8=12
①③位的情况:2+6=8
也是优先数字更小,也就是所有灌木生产顺位都尽可能优先的情况。
对特殊的图2,①②位:5+4=9
①③位:2+7=9,这种情况下其实是下面的灌木优先生产的!
那么会不会出现一种情况,有一个灌木在四角生产(左下,右下,右上,左上),比两个都在正位(也就是上下左右四个位置)顺位更靠前呢?
我们稍微算一下,角位最小是5,顺位最大是4,5+2<4+4,那么或许是有这种可能的,我们通过位置顺序把这种情况找出来:然后打开小森灵验证一下:
确实是下面的灌木在角位生产了!可以安心睡大觉了!
同样对于左右摆放的灌木,依然是生产数量>生产顺位>位置关系,位置依然是生产顺位的关系,也就是左边优先于右边。
掌握了这个方法,不管地形多奇怪我们都能很好地摆放灌木了!
不过虽然道理我都明白了,但是还是……谁家摆好灌木了,借我抄抄作业啊!