02
#
-- 7 Billion Humans (2235) --
-- 2: 欢迎新员工 --
step s
pickup c
drop
03
#
-- 7 Billion Humans (2235) --
-- 3: 运输小队 --
step s
pickup c
step s
step s
drop
04
#
-- 7 Billion Humans (2235) --
-- 4: 长途运输 --
step e
pickup c
a:
step e
jump a
05
#
-- 7 Billion Humans (2235) --
-- 5: 重要的抉择 --
if w == datacube:
a:
step w
jump a
endif
b:
step e
jump b
06
#
-- 7 Billion Humans (2235) --
-- 5: 重要的抉择 --
if w == datacube:
a:
step w
jump a
endif
b:
step e
jump b
06-1
#
-- 7 Billion Humans (2235) --
-- 6: 小小驱虫工 1 --
step s
step s
step w
step w
step s
step s
step e
step e
step e
step s
step s
step s
pickup c
07
#
-- 7 Billion Humans (2235) --
-- 7: 整理房间 --
a:
pickup c
if s != hole:
step s
jump a
endif
drop
07-1
#
-- 7 Billion Humans (2235) --
-- 7: 整理房间 --
a:
step s
if c == datacube:
pickup c
step s
b:
if s != hole:
step s
jump b
else:
drop
endif
else:
jump a
endif
09
#
-- 7 Billion Humans (2235) --
-- 9: 对角巷 --
pickup s
a:
step s
if w == nothing and
sw == nothing:
drop
endif
jump a
10
#
-- 7 Billion Humans (2235) --
-- 10: 疏散演习 --
a:
if c == nothing or
c == 4:
step w
endif
if c == 1:
step n
endif
if c == 2:
step e
endif
if c == 3:
step s
endif
jump a
11
#
-- 7 Billion Humans (2235) --
-- 11: 注入数据 1 --
pickup s
a:
step s
if c == nothing and
e == datacube:
drop
endif
jump a
11-1
#
-- 7 Billion Humans (2235) --
-- 11: 注入数据 1 --
step s
pickup c
step s
step s
step s
a:
if c == nothing and
e == datacube:
drop
jump b
endif
step s
step s
jump a
b:
12
#
-- 7 Billion Humans (2235) --
-- 12: 拉开拉链 --
pickup c
a:
if nw == worker:
step s
drop
endif
if sw == worker or
w == wall:
step n
drop
endif
jump a
13
#
-- 7 Billion Humans (2235) --
-- 13: 注入数据 2 --
pickup s
a:
if e == worker and
s == datacube or
w == worker:
step se
else:
step s
endif
if w == datacube and
c == nothing:
drop
endif
jump a
14
#
-- 7 Billion Humans (2235) --
-- 14: 粉碎机入门 --
pickup s
step s
step s
giveto s
14-1
#
-- 7 Billion Humans (2235) --
-- 14: 粉碎机入门 --
if s == datacube:
step s
pickup c
step s
giveto s
endif
15
#
-- 7 Billion Humans (2235) --
-- 15: 粉碎流水线 --
a:
if n == datacube:
pickup n
b:
if s == shredder:
giveto s
else:
step s
jump b
endif
endif
step n
jump a
15-1
#
-- 7 Billion Humans (2235) --
-- 15: 粉碎流水线 --
a:
if n == datacube:
pickup n
b:
if s == shredder:
giveto s
else:
step s
step s
jump b
endif
endif
step n
jump a
16
#
-- 7 Billion Humans (2235) --
-- 16: 小小驱虫工 2 --
a:
if s != wall and
s != hole:
step s
jump a
endif
pickup c
b:
if s == shredder:
giveto s
endif
step e
jump b
16-1
#
-- 7 Billion Humans (2235) --
-- 16: 小小驱虫工 2 --
step s
step s
step s
step s
a:
if s != wall and
s != hole:
step s
jump a
endif
pickup c
step e
step e
step e
step e
b:
if s == shredder:
giveto s
endif
step e
jump b
17
#
-- 7 Billion Humans (2235) --
-- 17: 内容产出 --
pickup s
18
#
-- 7 Billion Humans (2235) --
-- 18: 独特偏爱 --
step sw
pickup n
a:
if s == shredder:
giveto s
endif
step se
jump a
19
#
-- 7 Billion Humans (2235) --
-- 19: 内容产出-问题修复 --
takefrom s
a:
giveto se
takefrom sw
jump a
20
#
-- 7 Billion Humans (2235) --
-- 20: 反转流水线 --
pickup s
a:
if se == hole:
step s
b:
if w != hole and
w != datacube:
step w
jump b
endif
drop
endif
step e
jump a
21
#
-- 7 Billion Humans (2235) --
-- 21: 大数据 --
step sw
a:
if se == printer:
takefrom se
endif
step s
if myitem < 50 or
myitem == nothing:
giveto sw
jump a
endif
22
#
-- 7 Billion Humans (2235) --
-- 22: 数字大逃杀 --
pickup s
a:
if e > myitem or
w > myitem:
b:
step s
jump b
endif
step w
jump a
23
#
-- 7 Billion Humans (2235) --
-- 23: 排序大厅 --
pickup s
a:
if e < myitem:
step e
endif
if w > myitem:
step w
endif
jump a
24
#
-- 7 Billion Humans (2235) --
-- 24: 数据接力 1 --
a:
if s == printer:
takefrom s
endif
if s == shredder and
myitem == datacube:
giveto s
else:
giveto e
endif
jump a
24-1
#
-- 7 Billion Humans (2235) --
-- 24: 数据接力 1 --
if s == printer:
a:
takefrom s
giveto e
jump a
endif
if e == worker:
b:
if myitem == datacube:
giveto e
endif
jump b
endif
if s == shredder:
c:
if myitem == datacube:
giveto s
endif
jump c
endif
25
#
-- 7 Billion Humans (2235) --
-- 25: 记忆体初体验 --
mem2 = nearest shredder
a:
mem1 = nearest datacube
pickup mem1
giveto mem2
jump a
25-1
#
-- 7 Billion Humans (2235) --
-- 25: 记忆体初体验 --
mem2 = nearest shredder
a:
mem1 = nearest datacube
pickup mem1
if myitem == datacube:
giveto mem2
jump a
endif
26
#
-- 7 Billion Humans (2235) --
-- 26: 数据接力 2 --
a:
if s == shredder and
myitem == datacube:
giveto s
endif
if myitem >= 50:
giveto e
else:
giveto w
endif
if s != shredder:
takefrom s
endif
jump a
26-1
#
-- 7 Billion Humans (2235) --
-- 26: 数据接力 2 --
if s == printer:
a:
takefrom s
giveto n
jump a
endif
if n == worker:
b:
if myitem == datacube:
giveto n
endif
jump b
endif
if s == shredder:
c:
if myitem == datacube:
giveto s
endif
jump c
endif
if n == hole:
d:
if myitem == datacube:
if myitem >= 50:
giveto e
else:
giveto w
endif
endif
jump d
endif
28
#
-- 7 Billion Humans (2235) --
-- 28: 神经回路 --
mem2 = nearest shredder
mem1 = nearest datacube
pickup mem1
giveto mem2
29
#
-- 7 Billion Humans (2235) --
-- 29: 指纹认证 --
mem1 = nearest shredder
a:
mem2 = nearest datacube
pickup mem2
giveto mem1
jump a
30
#
-- 7 Billion Humans (2235) --
-- 30: 铺满地面 --
mem1 = nearest printer
a:
takefrom mem1
step nw,w,sw,n,s,ne,e,se
drop
jump a
30-1
#
-- 7 Billion Humans (2235) --
-- 30: 铺满地面 --
mem1 = nearest printer
a:
mem2 = nearest wall
takefrom mem1
step mem2
b:
if c == nothing:
drop
else:
step nw,w,sw,n,s,ne,e,se
jump b
endif
jump a
31
#
-- 7 Billion Humans (2235) --
-- 31: 星罗棋布 --
mem1 = nearest printer
a:
if myitem == nothing:
takefrom mem1
step e
endif
step nw,sw,ne,se
drop
jump a
31-1
#
-- 7 Billion Humans (2235) --
-- 31: 星罗棋布 --
mem1 = nearest printer
a:
if myitem == nothing:
takefrom mem1
step w,n,s,e
endif
step nw,sw,ne,se
if c == nothing:
drop
endif
jump a
32
#
-- 7 Billion Humans (2235) --
-- 32: 创造性扭动 --
a:
step nw,w,sw,n,s,ne,e,se
if c == datacube and
c != 99:
pickup c
write 99
drop
endif
jump a
32-1
#
-- 7 Billion Humans (2235) --
-- 32: 创造性扭动 --
a:
if s == datacube:
step s
else:
if w == datacube:
step w
else:
step e
endif
endif
pickup c
write 99
drop
jump a
33
#
-- 7 Billion Humans (2235) --
-- 33: 资料备份日 --
mem1 = set w
mem2 = set e
if mem1 < mem2:
mem1 = set e
mem2 = set w
endif
pickup mem1
write mem2
drop
34
#
-- 7 Billion Humans (2235) --
-- 34: 查找并摧毁 1 --
mem1 = nearest datacube
mem2 = nearest shredder
a:
step n
if n != wall:
if c < mem1:
mem1 = set c
endif
jump a
endif
pickup mem1
giveto mem2
35
#
-- 7 Billion Humans (2235) --
-- 35: 面向艺术生的计算器入门 --
pickup s
mem1 = calc myitem + 1
write mem1
drop
36
#
-- 7 Billion Humans (2235) --
-- 36: 查找并摧毁 2 --
mem2 = nearest shredder
a:
mem1 = set nothing
b:
step n
if n != wall:
if c == datacube and
c < mem1 or
mem1 == nothing:
mem1 = set c
endif
jump b
endif
pickup mem1
giveto mem2
jump a
36-1
#
-- 7 Billion Humans (2235) --
-- 36: 查找并摧毁 2 --
mem2 = nearest shredder
a:
step n
if c == datacube:
if mem1 != datacube or
c < mem1:
mem3 = set mem1
mem1 = set c
else:
if c < mem3 or
mem3 != datacube:
mem3 = set c
endif
endif
endif
if n == wall and
mem1 == datacube:
pickup mem1
giveto mem2
if mem3 == datacube:
pickup mem3
giveto mem2
endif
endif
jump a
37
#
-- 7 Billion Humans (2235) --
-- 37: 危险的电子表格 --
a:
if e == hole:
step se
if ne == hole:
step e
endif
step ne
else:
step e
endif
if e == wall and
c == 0:
pickup c
write mem1
drop
endif
mem1 = calc mem1 + c
jump a
38
#
-- 7 Billion Humans (2235) --
-- 38: 查找并摧毁 3 --
mem2 = nearest shredder
mem4 = nearest hole
if s == shredder:
step mem4
endif
a:
if n != wall:
step n
else:
pickup mem1
b:
c:
mem3 = nearest worker
if mem3 != worker:
giveto mem2
endif
if mem3 < mem1:
step mem4
endif
if mem3 == mem1:
comment 0
step s
if s == wall:
step e
endif
jump c
endif
jump b
endif
if c < mem1 or
mem1 != datacube:
mem1 = set c
endif
jump a
39
#
-- 7 Billion Humans (2235) --
-- 39: 打印守则 1 --
mem3 = nearest printer
a:
mem1 = calc mem1 + 1
if mem1 <= 5:
takefrom mem3
b:
step nw,w,sw,n,s,ne,e,se
if c != nothing:
jump b
endif
drop
jump a
endif
40
#
-- 7 Billion Humans (2235) --
-- 40: 打印守则 2 --
mem3 = nearest printer
a:
mem1 = calc mem1 + 1
if mem1 <= 5:
takefrom mem3
write mem1
b:
step nw,w,sw,n,s,ne,e,se
if c != nothing:
jump b
endif
drop
jump a
endif
40-1
#
-- 7 Billion Humans (2235) --
-- 40: 打印守则 2 --
mem3 = nearest printer
a:
takefrom mem3
b:
step nw,w,sw,n,s,ne,e,se
if c == nothing:
mem1 = calc mem1 + 1
write mem1
drop
if mem1 == 5:
end
endif
jump a
endif
jump b
41
#
-- 7 Billion Humans (2235) --
-- 41: 图片解密 --
pickup w
mem1 = calc myitem + 1
a:
if mem1 <= 0:
drop
step ne
endif
step w
mem1 = calc mem1 - 1
jump a
41-1
#
-- 7 Billion Humans (2235) --
-- 41: 图片解密 --
pickup w
step w
mem1 = set myitem
a:
if mem1 > 4:
step w
step w
step w
step w
step w
mem1 = calc mem1 - 5
endif
if mem1 > 3:
step w
step w
step w
step w
mem1 = calc mem1 - 4
endif
if mem1 > 2:
step w
step w
step w
mem1 = calc mem1 - 3
endif
if mem1 > 0:
step w
mem1 = calc mem1 - 1
jump a
endif
drop
mem1 = nearest hole
step mem1
42
#
-- 7 Billion Humans (2235) --
-- 42: 整理邮件 --
a:
mem1 = nearest datacube
step mem1
if s == shredder:
b:
if n != wall and
nw != wall and
ne != wall:
c:
step nw,w,n,ne,e
jump b
endif
jump a
endif
pickup c
mem1 = calc myitem / 10
d:
step w,sw,n,s,e,se
if mem1 == c and
s == shredder:
giveto s
jump c
endif
jump d
42-1
#
-- 7 Billion Humans (2235) --
-- 42: 整理邮件 --
if n == wall and
sw == worker:
step s
endif
if nw == worker and
s == datacube:
step w
endif
a:
if w != wall:
step sw
jump a
endif
step ne
b:
c:
if s != shredder:
pickup c
else:
jump d
endif
mem1 = calc myitem / 10
mem2 = set e
mem3 = nearest shredder
step mem3
e:
if c > mem1:
step w
jump e
endif
f:
if c < mem1:
step e
jump f
endif
if myitem == datacube:
giveto s
step mem2
jump b
endif
d:
step nw,n,ne
step nw,n,ne
mem2 = nearest datacube
step mem2
jump c
43
#
-- 7 Billion Humans (2235) --
-- 43: 九九乘法表 --
a:
step n
if n != datacube or
c != nothing or
s != datacube:
jump a
endif
mem1 = set n
b:
step s
mem2 = calc mem2 + mem1
pickup c
write mem2
drop
jump b
44
#
-- 7 Billion Humans (2235) --
-- 44: 独特时髦派对 --
mem1 = nearest hole
pickup s
a:
step nw,w,n,ne,e,se
if myitem == nw or
myitem == n or
myitem == w or
myitem == ne:
step mem1
endif
jump a
46
#
-- 7 Billion Humans (2235) --
-- 46: 强制办公室恋情 --
a:
if e == worker:
tell e hi
listenfor hi
jump a
endif
b:
listenfor hi
tell w hi
jump b
47
#
-- 7 Billion Humans (2235) --
-- 47: 全自动寒暄 --
if w == worker:
listenfor hi
endif
tell e hi
48
#
-- 7 Billion Humans (2235) --
-- 48: 社群培训日 --
if n != wall:
listenfor go
endif
takefrom s
mem1 = nearest shredder
giveto mem1
tell everyone go
49
#
-- 7 Billion Humans (2235) --
-- 49: 双向销毁 --
pickup s
mem1 = nearest shredder
a:
if w != nothing and
e != nothing:
jump a
endif
giveto mem1
step sw
50
#
-- 7 Billion Humans (2235) --
-- 50: 无声交流 --
mem1 = set sw
a:
if mem1 == 1:
takefrom s
giveto se
step w
mem1 = set 4
endif
mem1 = calc mem1 - 1
jump a
51
#
-- 7 Billion Humans (2235) --
-- 51: 公司职级 --
pickup s
a:
mem1 = calc mem1 + 1
if w != worker:
step s
write mem1
drop
endif
jump a
52
#
-- 7 Billion Humans (2235) --
-- 52: 统计众数 --
mem1 = nearest datacube
a:
step w
if s != nothing:
mem2 = calc mem2 + 1
jump a
endif
step n
step n
b:
if c == datacube and
c == mem2:
mem3 = calc mem3 + 1
endif
if e == nothing or
e == wall or
e == hole:
step n
if c == nothing and
n == wall:
pickup mem1
write mem3
drop
end
endif
c:
if w != wall and
w != hole:
if c == datacube and
c == mem2:
mem3 = calc mem3 + 1
endif
step w
jump c
endif
step n
endif
step e
jump b
53
#
-- 7 Billion Humans (2235) --
-- 53: 地上的100个方块 --
if n == wall:
a:
if w != wall:
step w
pickup c
write mem1
drop
mem1 = calc mem1 + 1
else:
step se
b:
if c == datacube:
step e
jump b
endif
endif
jump a
endif
53-1
#
-- 7 Billion Humans (2235) --
-- 53: 地上的100个方块 --
if n == worker:
mem1 = set 10
endif
if nw == worker:
mem1 = set 20
endif
if e == wall and
s == nothing:
mem1 = set 30
endif
if w == datacube and
s == nothing and
n != worker:
mem1 = set 40
endif
if sw == worker and
e == nothing:
mem1 = set 50
endif
if ne == worker and
s == nothing:
mem1 = set 60
endif
if se == wall and
s == wall and
w == nothing:
mem1 = set 70
endif
if e == wall and
sw == worker:
mem1 = set 80
endif
if s == wall and
w == datacube:
mem1 = set 90
endif
a:
if w != wall:
step w
if c == datacube:
pickup c
write mem1
drop
mem1 = calc mem1 + 1
endif
jump a
endif
54
#
-- 7 Billion Humans (2235) --
-- 54: 平整地形 --
a:
b:
if n != wall:
step n
pickup c
write mem1
drop
jump b
endif
mem1 = calc mem1 + 1
c:
if s != nothing or
c != nothing:
step s
jump c
endif
jump a
54-1
#
-- 7 Billion Humans (2235) --
-- 54: 平整地形 --
a:
if c == nothing:
step n
jump a
endif
b:
if n != wall:
mem1 = calc mem1 + c
step n
jump b
endif
step s
pickup c
write mem1
drop
if w == nothing:
c:
if e != nothing:
step e
mem1 = calc mem1 + c
jump c
endif
mem1 = calc mem1 / 49
d:
if w != nothing:
pickup c
write mem1
drop
step w
jump d
else:
pickup c
write mem1
drop
endif
step s
tell everyone coffeetime
else:
step n
listenfor coffeetime
step s
mem1 = set c
e:
step s
endif
pickup c
write mem1
drop
jump e
55
#
-- 7 Billion Humans (2235) --
-- 55: 数据之花 --
pickup s
a:
step n
if n != datacube or
s != datacube:
jump a
endif
mem1 = foreachdir nw,w,sw,n,s,ne,e,se:
mem2 = calc mem2 + mem1
endfor
write mem2
drop
56
#
-- 7 Billion Humans (2235) --
-- 56: 局部最大值 --
mem3 = nearest shredder
step w
step w
mem1 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem1 > mem2:
mem2 = set mem1
endif
endfor
pickup mem2
giveto mem3
57
#
-- 7 Billion Humans (2235) --
-- 57: 扫雷邻居 --
if e == wall:
mem3 = set 1
endif
a:
if mem3 == 1:
step w
else:
step e
endif
if c == datacube:
mem1 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem1 == datacube:
mem2 = calc mem2 + 1
endif
endfor
pickup c
write mem2
drop
mem2 = set 0
endif
jump a
58
#
-- 7 Billion Humans (2235) --
-- 58: 好邻居 --
a:
step nw,w,sw,n,s,ne,e,se
mem2 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem2 == datacube:
mem3 = calc mem3 + 1
endif
endfor
if mem3 > 3:
pickup c
endif
mem3 = set 0
step nw,w,sw,n,s,ne,e,se
drop
jump a
58-1
#
-- 7 Billion Humans (2235) --
-- 58: 好邻居 --
a:
mem1 = nearest datacube
step mem1
if w != wall and
n != wall and
s != wall and
e != wall:
pickup c
mem2 = nearest wall
step mem2
b:
c:
d:
e:
if c != nothing:
if w == wall and
s != wall:
step s
jump b
endif
if s == wall and
e != wall:
step e
jump c
endif
if e == wall and
n != wall:
step n
jump d
endif
if n == wall and
w != wall:
step w
jump e
endif
endif
drop
endif
mem3 = foreachdir nw,w,sw,n,s,ne,e,se:
step nw,w,sw,n,s,ne,e,se
endfor
jump a
59
#
-- 7 Billion Humans (2235) --
-- 59: 荣耀洞穴 --
mem1 = nearest datacube
mem3 = calc mem1 + 1
a:
mem3 = calc mem3 - 1
mem2 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem3 == 0 and
mem2 == hole or
mem2 == mem3:
step mem2
jump a
endif
endfor
59-1
#
-- 7 Billion Humans (2235) --
-- 59: 荣耀洞穴 --
if w == 12 or
w == 11 or
w == 10:
step sw
a:
b:
if w != hole:
step s
jump b
endif
step sw
c:
step w
d:
step nw
step w
jump d
endif
if s == 11 and
w == hole:
step se
step se
step s
step sw
jump c
endif
if s == 11:
step se
step s
jump a
endif
if e == 2:
step e
step e
if s == 1:
step s
endif
if n == 1:
step n
endif
mem1 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem1 == hole:
step mem1
endif
endfor
endif
if n == wall:
e:
if w == hole:
f:
step s
jump f
else:
step w
jump e
endif
endif
step n
step n
if se == 3:
g:
step ne
jump g
endif
h:
if w != nothing:
step w
jump h
endif
step n
step n
step n
step ne
60
#
-- 7 Billion Humans (2235) --
-- 60: 排序人手紧缺 --
a:
step w,e
if s > se and
w != worker and
sw != worker and
e != worker and
se != worker:
pickup s
drop
step s
pickup e
drop
step e
pickup nw
drop
step n
endif
jump a
60-1
#
-- 7 Billion Humans (2235) --
-- 60: 排序人手紧缺 --
if e == worker:
step w
step w
endif
a:
b:
if s > se and
w != worker and
sw != worker and
s == datacube and
se == datacube:
pickup s
drop
step s
pickup e
drop
step e
pickup nw
drop
step n
jump b
endif
if e != wall:
step e
else:
c:
if w != wall:
step w
jump c
endif
endif
jump a
61
#
-- 7 Billion Humans (2235) --
-- 61: 懒惰路径 --
a:
mem1 = calc c + 1
step nw,w,sw,n,s,ne,e,se
if c > mem1 and
mem1 != 1:
pickup c
write mem1
drop
endif
jump a
61-1
#
-- 7 Billion Humans (2235) --
-- 61: 懒惰路径 --
mem4 = foreachdir nw,w,sw,n,s,ne,e,se:
step nw,w,sw
endfor
a:
if mem4 == datacube:
step mem4
else:
step nw,w,sw,n,s,ne,e,se
endif
mem1 = set c
mem2 = calc mem1 + 1
mem4 = set nothing
mem3 = foreachdir nw,w,sw,n,s,ne,e,se:
if mem2 < mem3 and
mem2 != 1:
mem4 = set mem3
pickup mem3
write mem2
drop
step mem1
endif
endfor
jump a
62
#
-- 7 Billion Humans (2235) --
-- 62: 排序楼层 --
step ne
step n
step nw
a:
mem1 = foreachdir w,n,s,e:
step mem1
if e == worker:
if e < c:
pickup e
else:
pickup c
endif
else:
if w > c:
pickup w
else:
pickup c
endif
endif
drop
if e == worker:
if w == hole:
if s == worker:
listenfor ready
else:
listenfor go
if myitem == datacube:
drop
endif
tell e ready
tell n ready
endif
endif
else:
if w == datacube and
e == datacube:
if s == worker:
if sw < e:
pickup sw
step e
drop
step w
endif
listenfor ready
else:
if w < ne:
pickup ne
giveto w
endif
tell w go
listenfor ready
tell n ready
endif
endif
endif
endfor
jump a
63
#
-- 7 Billion Humans (2235) --
-- 63: 乱序整理 --
a:
if w == hole:
step s
endif
mem1 = nearest datacube
pickup mem1
b:
if n != hole:
step n
jump b
endif
c:
if c == nothing:
drop
mem4 = calc mem4 + 1
if mem4 == 3:
end
endif
else:
if e != hole:
step e
else:
step s
d:
if w != hole:
step w
jump d
endif
endif
jump c
endif
mem2 = foreachdir nw,sw,ne,se:
step s
endfor
jump a
64
#
-- 7 Billion Humans (2235) --
-- 64: 二进制计数器 --
step s
pickup c
step s
if nw == worker:
a:
tell nw coffeetime
step n
listenfor ugh
step s
jump a
endif
b:
listenfor coffeetime
if myitem == datacube:
tell everyone ugh
drop
else:
tell w coffeetime
pickup c
endif
jump b
65
#
-- 7 Billion Humans (2235) --
-- 65: 有序整理 --
if w == nothing and
e == nothing:
a:
if n != hole:
step n
jump a
endif
b:
c:
if w != hole:
step w
jump c
endif
d:
if myitem == datacube and
c == nothing:
drop
endif
if w == nothing and
c == datacube and
myitem == nothing or
ne == nothing and
c == datacube and
myitem == nothing:
pickup c
step mem1
endif
if e != hole:
if e == nothing and
c == datacube:
mem1 = set c
endif
step e
jump d
endif
step sw
jump b
endif
65-1
#
-- 7 Billion Humans (2235) --
-- 65: 有序整理 --
if w == worker or
e == worker:
step w
endif
step nw
mem1 = foreachdir nw,sw,n,s,ne,se:
step n
endfor
if c == nothing:
pickup e
drop
endif
mem2 = set c
a:
mem1 = set c
b:
if c == datacube and
mem1 == nothing:
pickup c
step mem2
else:
mem1 = set c
if e != hole:
step e
else:
step sw
mem3 = foreachdir nw,w,sw,ne,e,se:
step w
endfor
endif
jump b
endif
c:
if c != nothing:
if e != hole:
step e
else:
step sw
mem4 = foreachdir w,sw,n,s,ne,e:
step w
endfor
endif
jump c
endif
drop
mem2 = set c
jump a
66
#
-- 7 Billion Humans (2235) --
-- 66: 十进制计数器 --
step s
pickup c
if s == button:
a:
step s
step n
tell everyone ugh
tell w hi
listenfor ready
jump a
endif
step s
mem1 = set myitem
b:
drop
mem1 = calc mem1 + 1
listenfor hi
pickup c
if mem1 == 10:
tell w hi
mem1 = set 0
write mem1
else:
write mem1
tell everyone ready
endif
jump b
67
#
-- 7 Billion Humans (2235) --
-- 67: 十进制翻倍器 --
step s
if c == datacube:
pickup c
step s
a:
tell everyone coffeetime
drop
mem1 = calc c x 2
if e >= 5:
mem1 = calc mem1 + 1
else:
mem1 = calc mem1 + 0
endif
if mem1 >= 10:
mem1 = calc mem1 - 10
else:
mem1 = calc mem1 - 0
endif
pickup c
write mem1
jump a
endif
b:
listenfor coffeetime
step s
step n
jump b
68
#
-- 7 Billion Humans (2235) --
-- 68: 再见,人类! --
if w == wall:
step se
endif
mem1 = foreachdir nw,n,ne:
step s
endfor
a:
mem1 = nearest worker
if mem1 != worker:
tell everyone goodbye
endif
step sw,s,se
jump a
参考网址
#