icbm/src/main/java/dan200/computercraft/api/turtle/ITurtleCommand.java
2022-11-10 00:00:10 +01:00

31 lines
1.3 KiB
Java

/**
* This file is part of the public ComputerCraft API - http://www.computercraft.info
* Copyright Daniel Ratcliffe, 2011-2015. This API may be redistributed unmodified and in
* full only. For help using the API, and posting your mods, visit the forums at
* computercraft.info.
*/
package dan200.computercraft.api.turtle;
/**
* An interface for objects executing custom turtle commands, used with
* ITurtleAccess.issueCommand
* @see
* ITurtleAccess#executeCommand(dan200.computercraft.api.lua.ILuaContext,ITurtleCommand)
*/
public interface ITurtleCommand {
/**
* Will be called by the turtle on the main thread when it is time to execute the
* custom command. The handler should either perform the work of the command, and
* return success, or return failure with an error message to indicate the command
* cannot be executed at this time.
* @param turtle access to the turtle for whom the command was issued
* @return TurtleCommandResult.success() or TurtleCommandResult.failure( errorMessage
* )
* @see
* ITurtleAccess#executeCommand(dan200.computercraft.api.lua.ILuaContext,ITurtleCommand)
* @see dan200.computercraft.api.turtle.TurtleCommandResult
*/
public TurtleCommandResult execute(ITurtleAccess turtle);
}