SHOW:
|
|
- or go back to the newest paste.
| 1 | --Wizard for making dynamoControls! | |
| 2 | - | --Made by civilwargeeky |
| 2 | + | --Made by MrJohnDowe |
| 3 | local enginesFile = "dynamoEngines" | |
| 4 | local peripheralsFile = "dynamoBatteries" | |
| 5 | - | local apiFile = "civilsMenuAPI" |
| 5 | + | local apiFile = "MenuAPI" |
| 6 | local fileName = "dynamoControl.lua" | |
| 7 | ||
| 8 | if not fs.exists(apiFile) then | |
| 9 | - | shell.run("pastebin get E4TJ2uCR "..apiFile)
|
| 9 | + | |
| 10 | sleep(0.5) | |
| 11 | shell.run("pastebin get ijBuuX0e "..apiFile)
| |
| 12 | end | |
| 13 | local menu = {}
| |
| 14 | os.run(menu, apiFile) --Loads the API | |
| 15 | ||
| 16 | local tArgs, onlyUpdate = {...}
| |
| 17 | if tArgs[1] == "update" then | |
| 18 | onlyUpdate = true | |
| 19 | end | |
| 20 | ||
| 21 | ||
| 22 | local function home() | |
| 23 | term.setCursorPos(1,1) | |
| 24 | term.clear() | |
| 25 | end | |
| 26 | ||
| 27 | if not onlyUpdate then | |
| 28 | home() | |
| 29 | print("Welcome to the dynamo control file creation wizard!")
| |
| 30 | print("This will guide you to making config files\n")
| |
| 31 | --Stage 1, Engines | |
| 32 | local basicSides = {"top", "bottom", "front", "back", "left", "right"}
| |
| 33 | print("To start, we will register the engines")
| |
| 34 | local file = fs.open(enginesFile,"w") | |
| 35 | local engines = 0 | |
| 36 | while true do | |
| 37 | engines = engines + 1 | |
| 38 | local rf, side, data, isColored | |
| 39 | print("New Engine "..tostring(engines).."\n")
| |
| 40 | print("How much power per tick does this engine produce?")
| |
| 41 | print("Or type 'quit' to end the engine section")
| |
| 42 | rf = read() | |
| 43 | if rf:sub(1,1):lower() == "q" then break end | |
| 44 | _, side = menu.menu("What side should is the output on?", "", basicSides)
| |
| 45 | local _, check = menu.menu("Is the output basic or colored?", "", {"Basic", "Colored"})
| |
| 46 | isColored = check == "Colored" | |
| 47 | if not isColored then | |
| 48 | local tab = {}
| |
| 49 | for i=15,1,-1 do table.insert(tab, i) end | |
| 50 | _, data = menu.menu("What strength should the output be?", "", tab, false, nil, "center", ">>>> "," <<<<")
| |
| 51 | else | |
| 52 | data = 1 | |
| 53 | print("Colored not supported yet :(")
| |
| 54 | end | |
| 55 | home() | |
| 56 | file.write(rf..",\""..side.."\","..data..","..tostring(isColored).."\n") | |
| 57 | end | |
| 58 | file.close() | |
| 59 | ||
| 60 | home() | |
| 61 | print("Now for the Energy Cells")
| |
| 62 | print("Assuming you are using TE ones, this could work for other mods, though\n")
| |
| 63 | sleep(2) | |
| 64 | local periphSides = peripheral.getNames() | |
| 65 | table.insert(periphSides,"Quit") | |
| 66 | local file = fs.open(peripheralsFile, "w") | |
| 67 | local periphs = 0 | |
| 68 | while true do | |
| 69 | periphs = periphs + 1 | |
| 70 | local side | |
| 71 | local rm | |
| 72 | rm, side = menu.menu("New Cell "..tostring(periphs), "Select which side/peripheral the cell is on, or select quit to quit", periphSides)
| |
| 73 | if rm == #periphSides then | |
| 74 | break | |
| 75 | else | |
| 76 | table.remove(periphSides,rm) | |
| 77 | end | |
| 78 | file.write("\""..side.."\"")
| |
| 79 | end | |
| 80 | file.close() | |
| 81 | end | |
| 82 | ||
| 83 | home() | |
| 84 | ||
| 85 | local should = menu.menu("","Thank you for using the Dynamo Control Station Wizard!\nWould you like to install dynamoControl?",{"Yes","No"},nil, nil, "center")
| |
| 86 | if should == 1 then | |
| 87 | if fs.exists(fileName) then | |
| 88 | - | shell.run("pastebin get 6gUUv3Ng "..fileName)
|
| 88 | + | |
| 89 | end | |
| 90 | shell.run("pastebin get eaTTtFwJ "..fileName)
| |
| 91 | local shouldAgain = menu.menu("Done","Would you like to replace startup and reboot?",{"Yes","No"},nil, nil, "center")
| |
| 92 | if shouldAgain == 1 then | |
| 93 | if fs.exists("startup") then
| |
| 94 | shell.run("rm startup")
| |
| 95 | end | |
| 96 | local file = fs.open("startup","w")
| |
| 97 | file.write("shell.run('"..fileName.."')")
| |
| 98 | file.close() | |
| 99 | shell.run("reboot")
| |
| 100 | end | |
| 101 | end |