local TurtleTestingController = require("controller.turtle_testing_controller") local AudioTestingController = require("controller.audio_testing_controller") local ExcavationController = require("controller.excavation_controller") local AudioController = require("controller.audio_controller") local controllers = { TurtleTestingController:Create(), AudioTestingController:Create(), ExcavationController:Create(), AudioController:Create(), } print("Multiple controllers are available:") print("1: Turtle Testing Mode") print("2: Audio Testing Mode") print("3: Volume Excavation") print("4: Play Bangarang") local choice = 0 while choice < 1 or choice > #controllers do print("Choose a controller by entering its number:") choice = tonumber(io.read()) or 0 end controllers[choice]:Run() -- TODO: Test if there's a chest when dropping/sucking/mining (don't mine chests!) -- TODO: Add controller to build rooms with walls of a specified material -- TODO: Add configurable trash_list with items that won't be picked up -- TODO: When refueling but chest is missing, wait there until the user puts a chest with fuel -- TODO: Add emergency return routine if can't move (e.g. try to move in different directions first) -- TODO: Add shortcuts for the volume excavation: -- - Tunnel forward 3x2 or 3x3 with specified length -- - Excavate downwards (quarry) in a square, specify side length -- TODO: Add a stair building mode (specify side length, min 2x2)