【题解?】 三维迷宫【coding in minecraft】

从前。。有个逆天的游戏叫minecraft
这个游戏有多逆天。。你懂得- –
尤其是有各种奇葩的mod 各种逆天啊。。。。。
我就在想有没有可以给机器人写程序让他帮你做事的mod。。
结果。。居然还真有!!
这个mod 叫computercraft 有一个叫做turtle的东西
就是机器人 可以执行  行走  判断方块 破坏方块  收集物品 放置物品 控制周围的红石信号 的操作
用的是一个叫lua的脚本语言 果断去玩了一下~~
写了一个程序 用来走三维迷宫的..
效果:

psb (36)

运行3d.lua
psb (37)

路途中..

psb (40)

找到终点后 挖掉钻石块

psb (38)

之后返航~~~

psb (39)

【code】

x = 0
y = 0
z = 0
b = {}
for i = -20, 20 do
  b[i] = {}
  for j = -20, 20 do
    b[i][j] = {};
for k = -20, 20 do
 b[i][j][k] = 0;
end
  end
end
t = {}
  t[0] = {}
  t[0][0] = 0
  t[0][1] = 1
  t[1] = {}
  t[1][0] = 1
  t[1][1] = 0
  t[2] = {}
  t[2][0] = 0
  t[2][1] = -1
  t[3] = {}
  t[3][0] = -1
  t[3][1] = 0
function get()
  print(“Get!”)
end
function abs(a)
  if (a < 0) then return -a
  else return a end
end
function check()
  if (abs(x) > 20 or abs(y)  > 20 or abs(z) > 20 or b[x][y][z] == 1) then return false
  else return true end
end
function dfs(d)
  b[x][y][z] = 1
  if (turtle.detectUp() == false) then
    z = z + 1
if (check() == true) then
 turtle.up(1)
 dfs(d)
 turtle.down(1)
end
z = z – 1
  else
    if (turtle.compareUp() == true) then
 turtle.digUp()
 get()
end
  end
  if (turtle.detectDown() == false) then
    z = z – 1
if (check() == true) then
 turtle.down(1)
 dfs(d)
 turtle.up(1)
end
z = z + 1
  else
    if (turtle.compareDown() == true) then
 turtle.digDown()
 get()
end
  end
  td = d
  local i = 0
  for i = 0, 3 do
    if (turtle.detect() == false) then
 x = x + t[td][0]
 y = y + t[td][1]
 if (check() == true) then
   turtle.forward()
dfs(td)
   turtle.back()
 end
 x = x – t[td][0]
 y = y – t[td][1]
    else
      if (turtle.compare() == true) then
   turtle.dig()
   get()
 end
    end
td = (td + 1) % 4
turtle.turnRight()
  end
end
dfs(0)

============================================================
写得略渣。。就是一个纯搜索

玩过mc应该就能想象这个mod的强大
这个还支持无线控制 可以做各种东西
比如轰炸机什么的= =
挖矿就扔一堆这个机器人去挖就行了
自动种东西 自动收割不再是梦想!!
而且这只是挖矿的 还有旁边带剑的
弄一堆出来组一个杀手团什么的 ~~
基本就没什么不能自动了

还有 它作为可以运行的程序 可以同时访问外面的系统和mc里的世界
是一个极强的通道
可以按照游戏里的各种摆放对你的电脑进行一些改变
比如可以建一颗文件夹树来表示mc里的一个矿洞什么的
【虽然可能有环= =】
或者在你挂mc做别的事的时候弹出一个窗口
距离你500m出现一只野生古力帕
什么的

就感觉这个mod让mc的拓展性极大地增加啊 碉堡了~~~~~

发表评论