Usage:
- Load the module like a normal module with require.
- Either use the dig methods exposed by the module
- or use the
injectIntoTurtleApifunction and then use the normal turtle functions.
| local oldturtle = { | |
| dig = turtle.dig, | |
| digUp = turtle.digUp, | |
| digDown = turtle.digDown, | |
| place = turtle.place, | |
| placeUp = turtle.placeUp, | |
| placeDown = turtle.placeDown, | |
| } | |
| local function dig(side) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.dig(side) | |
| until ok or err ~= "Cannot break protected block" | |
| return ok, err | |
| end | |
| local function digUp(side) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.digUp(side) | |
| until ok or err ~= "Cannot break protected block" | |
| return ok, err | |
| end | |
| local function digDown(side) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.digDown(side) | |
| until ok or err ~= "Cannot break protected block" | |
| return ok, err | |
| end | |
| local function place(text) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.place(text) | |
| until ok or err ~= "Cannot place block here" or turtle.detect() | |
| return ok, err | |
| end | |
| local function placeUp(text) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.placeUp(text) | |
| until ok or err ~= "Cannot place block here" or turtle.detect() | |
| return ok, err | |
| end | |
| local function placeDown(text) | |
| local ok, err | |
| repeat | |
| ok, err = oldturtle.placeDown(text) | |
| until ok or err ~= "Cannot place block here" or turtle.detect() | |
| return ok, err | |
| end | |
| turtle._kubejs_workaround_injected = false | |
| local function injectIntoTurtleApi() | |
| if not turtle._kubejs_workaround_injected then | |
| turtle._kubejs_workaround_injected = true | |
| turtle.digDown = digDown | |
| turtle.digUp = digUp | |
| turtle.dig = dig | |
| turtle.placeDown = placeDown | |
| turtle.placeUp = placeUp | |
| turtle.place = place | |
| end | |
| end | |
| return { | |
| injectIntoTurtleApi = injectIntoTurtleApi, | |
| dig = dig, | |
| digUp = digUp, | |
| digDown = digDown, | |
| placeDown = placeDown, | |
| placeUp = placeUp, | |
| place = place, | |
| } |