使用lua对Computercraft minecraft中的海龟进行编程以使用坐标进行养殖

m_cht

我有一个7x7正方形的正方形字段。我正在努力减少运动,以减少油耗。

我发现这条路是最简单的路

像图一样,我正在尝试将坐标分配给某些点。我可以使用中间(水)中的蓝色东西作为起点,但似乎也可以使用最左下方的块状种子作为起点。

这是我到目前为止的内容:

我遇到的问题是何时要更改行。最简单的方法是回到最小x值,这会消耗大量的燃料和时间。乌龟机器人有办法知道要转到下一行的方向吗?

毛刺

以下代码以您希望的方式遍历一个字段。它虽然简单,但是可以工作,但是可以从某种抽象中受益,以使其可用于其他目的。

local rowSize = 7
local colSize = 7
local turnLeft = true
local skipMove = false

function goHome()
   local r,c
   turtle.turnLeft()
   turtle.turnLeft()
   for c=1,colSize-1 do
      turtle.forward()
   end
   turtle.turnLeft()
   for r=1,rowSize-1 do
      turtle.forward()
   end
   turtle.turnLeft()
   turtle.back()

function harvestRow()
   local c
   for c=1,colSize do
      if skipMove == true then
         skipMove = false
      else
         turtle.forward()
      end

      turtle.digDown()
   end
end

--
-- Move and orient turtle onto next row
--
function nextRow()
   if turnLeft == true then
      turtle.turnLeft()
      turtle.forward()
      turtle.turnLeft()
      turnLeft = false
   else
      turtle.turnRight()
      turtle.forward()
      turtle.turnRight()
      turnLeft = true
   end
   skipMove = true
end

--
-- Call to start farming
--
function harvestField()
   local r
   for r=1,rowSize do
      harvestRow()

      -- go to next row unless its the last
      if r~=colSize then
         nextRow()
      end
   end
   goHome()
end

衷心祝愿您的耕作工作一切顺利,并感谢您有机会利用一些旧的Turtle API知识。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Lua,Computercraft中的函数内进行循环

来自分类Dev

用ComputerCraft编写Lua

来自分类Dev

使用GeoTools进行坐标投影

来自分类Dev

是否可以使用统计编程语言R进行默认编程?

来自分类Dev

使用scons进行识字编程

来自分类Dev

使用JTAG接口进行编程

来自分类Dev

使用GOMAXPROCS进行并行编程

来自分类Dev

使用python进行线性编程

来自分类Dev

使用pthread进行cuda编程

来自分类Dev

使用Pthread进行并行编程

来自分类Dev

使用uml进行Java编程

来自分类Dev

使用execvp进行c编程

来自分类Dev

使用异步编程进行投影

来自分类Dev

使用C ++中的参数包进行功能编程

来自分类Dev

使用WMI或Perfmon(在.NET中以编程方式)进行监视

来自分类Dev

我们可以使用C ++进行Web设计/开发/编程吗?

来自分类Dev

尾注X8:是否可以使用VBA或Javascipt对附加功能进行编程?

来自分类Dev

我可以使用Nutch进行爬网,存储在Cassandra中,使用Solr进行索引吗?

来自分类Dev

如何使用timstamp和坐标进行绘制?

来自分类Dev

使用坐标对最近的位置进行排序?

来自分类Dev

如何在tkinter中对两个同时发生的按键事件进行编程,以使用按键事件字典对角移动画布项目?

来自分类Dev

您可以使用函子/函数式编程对Java 7中的列表进行分组(并按组计算其元素)吗?

来自分类Dev

在C ++中使用Lua

来自分类Dev

在C ++中使用Lua

来自分类Dev

在Lua表中使用坐标对作为键

来自分类Dev

使用lua filename.lua时出错

来自分类Dev

使用R中“ trip”库中的cut.trip()在精确的时间边界进行坐标插值

来自分类Dev

如何使用数据包对 Minecraft Bukkit Tablist 进行排序

来自分类Dev

使用swift以编程方式进行UITableView

Related 相关文章

热门标签

归档