Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Automata banyaszo Turtle v1.0--
- --By Matteo--
- --MC: LeslieHUN--
- --2012. 11.18--
- --[[
- ----------------------------------------
- 0.1 -Banyaszas.
- 0.2 -Minden inditasnal tankol.
- 2012.11.19
- 0.3 -HotFIX: ha nincs elotte block
- akkor is banyasz maga felett.
- 0.4 -Fordulokent elmegy es
- kiuriti magat a chest-be.
- 0.5 -Ha soder hullik ra, erzekeli
- es kibanyassza.
- -Csak akkor tankol, ha 2000 ala
- esik az uzemanyag szint.
- 0.6 -Maga alatt is banyasz.
- A tankolas fordulonkent van, nem
- indulasonkent.
- 2012.11.20
- 0.7 -Install parancsal, megcsinalja
- maganak a dokkolo helyet. 6x6
- 3chest 2tabla tartalom leirassal.
- -Tankolas opcio pontositva. Akkor
- tankol, ha 100 ala esik az
- uzemanyag szint. Masodik chestbol
- kiveszi maganak a szenet, ha a
- slot1 ben 30 ala esik a szen.
- 2012.11.24
- 0.8 -HotFix: Tankilasok finomitva.
- -Ha menetkozben kifogy, egyet
- tankol.
- -Install resznel leellenorzi a
- slotok darabszamat. Ha hianyzik
- kiirja, hogy mi Ês honnan.
- -Indulasnal kulon parancs resz.
- -Program menet, sorrend pontositva.
- 2012.11.25
- 0.9 -Fokent kulalak es felhasznalo
- barat javitasok.
- -Min es max hatar a szelesseg es
- hosszusagnal.
- -Csak szamot lehet mar megadni.
- -"Menuk" jobban el vannak rendezve
- -Ha tankol, de kifogyott a szen,
- jelzi es var.
- -Ha nem tud elolre lepni, leellenorzi
- az uzemanyagszintet, ha kell tankol.
- 1.0-Menu rendszer berakva
- ----------------------------------------
- Kijavitando hibak:
- -Ha az "uritesi" savban neki megy
- valaminek, ott urit.
- -MOB okat nem erzekeli.
- -Ha valahol leall kezzel kell a
- helyere vinni. (GPS megirasa kell)
- ----------------------------------------
- ]]--
- --[[ Functions ]]--
- function clear()
- term.clear()
- term.setCursorPos(1,1)
- end
- function printF()
- term.setCursorPos(3,1)
- print("--Automata banyaszo Turtle v1.0--")
- term.setCursorPos(13,2)
- print("--By Matteo--")
- term.setCursorPos(35,12)
- print("V1.0")
- term.setCursorPos(1,5)
- end
- function telepitAera()
- clear()
- turtle.select(1)
- while szendarab ~= 3 do
- printF()
- print("1. Lepes")
- print("")
- szendarab = turtle.getItemCount(1)
- szenkell = 3 - szendarab
- print("Elso sor, elso slotba, rakj 3db darab szenet.")
- print("Meg ennyi kell: "..szenkell)
- term.setCursorPos(1,10)
- print("Ha beraktad, folytatodik a telepites")
- sleep(0.5)
- clear()
- end
- ladadarab = turtle.getItemCount(2)
- turtle.select(2)
- while ladadarab ~= 3 do
- printF()
- print("2. Lepes")
- print("")
- ladadarab = turtle.getItemCount(2)
- ladakell = 3 - ladadarab
- print("Elso sor, masodik slotba, rakj 3db ladat (chest).")
- print("Meg ennyi kell: ".. ladakell)
- term.setCursorPos(1,10)
- print("Ha beraktad, folytatodik a telepites")
- sleep(0.5)
- clear()
- end
- signdarab = turtle.getItemCount(3)
- turtle.select(3)
- while signdarab ~= 1 do
- printF()
- print("3. Lepes")
- print("")
- signdarab = turtle.getItemCount(3)
- signkell = 1 - signdarab
- print("Elso sor, harmadik slotba, rakj egy tablat (sign).")
- print("Meg ennyi kell: ".. signkell)
- term.setCursorPos(1,10)
- print("Ha beraktad, folytatodik a telepites")
- sleep(0.5)
- clear()
- end
- signdarab = turtle.getItemCount(4)
- turtle.select(4)
- while signdarab ~= 1 do
- printF()
- print("4. Lepes")
- print("")
- signdarab = turtle.getItemCount(4)
- signkell = 1 - signdarab
- print("Elso sor, negyedik slotba, rakj egy tablat (sign).")
- print("Meg ennyi kell: ".. signkell)
- term.setCursorPos(1,10)
- print("Ha beraktad, folytatodik a telepites")
- sleep(0.5)
- clear()
- end
- if fuel == 0 then
- while turtle.getItemCount(1) == 0 do
- printF()
- print("Kerlek ellenorizd, hogy az 1-es slotban van-e szenem.")
- print("Rakj 2db szenet es nyomj egy entert")
- read()
- clear()
- end
- turtle.select(1)
- print("Tankoltam.")
- turtle.refuel(1)
- sleep(1)
- end
- clear()
- printF()
- print("Epites elkezdodott, kerlek vard meg mig kesz lesz.")
- for i = 1, 4, 2 do
- for i = 1, 5 do
- lepesE()
- end
- turnL()
- for i = 1, 5 do
- lepesE()
- end
- turnR()
- end
- itemInstall()
- end
- function itemGo()
- turtle.turnLeft()
- turtle.forward()
- turtle.turnRight()
- end
- function itemInstall()
- turtle.turnRight()
- turtle.select(2)
- for i = 1, 3 do
- lepesE()
- end
- for i = 1, 2 do
- turtle.place()
- itemGo()
- end
- turtle.select(3)
- turtle.place([[Kibanyaszott
- block-ok
- -------->]])
- itemGo()
- turtle.select(2)
- turtle.place()
- itemGo()
- turtle.select(4)
- turtle.place([[Uzemanyag nekem
- (szen)
- ------->]])
- turtle.turnRight()
- for i = 1, 4 do
- turtle.forward()
- end
- turtle.turnLeft()
- dropAll()
- turtle.turnRight()
- turtle.turnRight()
- for i = 1, 3 do
- turtle.forward()
- end
- turtle.turnRight()
- clear()
- banyaszas()
- end
- function reFuel()
- fuel = turtle.getFuelLevel()
- if fuel < 100 then
- turtle.select(1)
- while not turtle.refuel(1) do
- clear()
- printF()
- print("Nincs szen az egyse slotban")
- sleep(3)
- end
- print("Tankoltam.")
- end
- end
- function getFuel()
- local fuelslot = turtle.getItemCount(1)
- turtle.turnRight()
- turtle.select(1)
- turtle.turnLeft()
- if fuelslot < 10 then
- for i = 1, 3 do
- turtle.forward()
- end
- turtle.turnRight()
- while not turtle.suck() do
- clear()
- printF()
- print("Nincs a ladaban szen. Kerlek toltsd fel")
- print("Ha feltoltotted, kiveszem.")
- sleep(3)
- end
- clear()
- printF()
- turtle.turnRight()
- for i = 1, 3 do
- turtle.forward()
- end
- end
- end
- function dropAll()
- local slot = 2
- while slot ~= 17 do
- turtle.select(slot)
- turtle.drop()
- slot = slot+1
- end
- end
- function targetC()
- lepes = 0
- turtle.turnRight()
- while turtle.forward() do
- clear()
- printF()
- lepes = lepes + 1
- print("Lepesek a chest-ig: "..lepes)
- end
- while not turtle.forward() do
- dropAll()
- turtle.turnLeft()
- getFuel()
- turtle.turnLeft()
- end
- clear()
- printF()
- print("Ennyit megyek vissza: "..lepes)
- for i = 2, lepes do
- turtle.forward()
- end
- turtle.turnRight()
- end
- function digDown()
- while turtle.detectDown() do
- turtle.digDown()
- end
- end
- function lepesE()
- while not turtle.forward() do
- turtle.dig()
- if turtle.getFuelLevel() == 0 then
- turtle.select(1)
- reFuel()
- end
- end
- sleep(0.4)
- while turtle.detectUp() do
- turtle.digUp()
- sleep(0.4)
- end
- end
- function turnL()
- turtle.turnLeft()
- lepesE()
- turtle.turnLeft()
- end
- function turnR()
- turtle.turnRight()
- lepesE()
- turtle.turnRight()
- end
- function banyaszas()
- while true do
- clear()
- local fuel = turtle.getFuelLevel()
- printF()
- term.setCursorPos(1,5)
- print("Online")
- print("Uzemanyag szint: "..fuel)
- print("")
- write("Szelesseg: ")
- szeles = read()
- if szeles < "51" and szeles > "1" then
- write("Hossz: ")
- local hosszu = read()
- if hosszu < "51" and hosszu > "1" then
- hosszu = hosszu-1
- szeles = szeles-1
- for i = 1, szeles, 2 do
- for i = 1, hosszu do
- digDown()
- lepesE()
- digDown()
- end
- turnL()
- for i = 1, hosszu do
- digDown()
- lepesE()
- digDown()
- end
- reFuel()
- turnR()
- targetC()
- end
- term.clear()
- term.setCursorPos(1,1)
- else
- clear()
- printF()
- print("")
- print("Hosszusagnak 2 es 50 kozottinek kell lennie")
- sleep(3)
- banyaszas()
- end
- else
- clear()
- printF()
- print("")
- print("Szelesseg 2 es 50 kozott kell lennie")
- sleep(3)
- banyaszas()
- end
- end
- end
- function helpP()
- clear()
- printF()
- print("Install : Dokkolo epites.")
- print("Banya program : Banyaszo program.")
- print("Help : Menu leirasok.")
- print("Leiras : Leiras a programrol")
- print("")
- print("Tovabb lepeshez nyomj egy entert")
- read()
- end
- function InstallP()
- clear()
- printF()
- print("A kovetkezo dolgok legyenek nalad:")
- print(" - 5db szen")
- print(" - 3db lada (chest)")
- print(" - 2db tabla (sign)")
- print("Ha ezek megvannak kerlek, nyomj egy entert.")
- read()
- clear()
- telepitAera()
- end
- function Leiras()
- end
- --[[ Main program ]]--
- --[[while true do //v0.9 es menu nelkuli
- clear()
- printF()
- print("")
- term.setCursorPos(1,12)
- print("Parancsok: help")
- term.setCursorPos(1,5)
- write("Program: ")
- program = read()
- if program == "install" then
- clear()
- printF()
- print("A kovetkezo dolgok legyenek nalad:")
- print(" - 5db szen")
- print(" - 3db lada (chest)")
- print(" - 2db tabla (sign)")
- print("Ha ezek megvannak kerlek, nyomj egy entert.")
- read("")
- clear()
- telepitAera()
- elseif program == "help" then
- clear()
- printF()
- print("install: Dokkolo epites.")
- print("banya: Banyaszo program.")
- term.setCursorPos(1,12)
- print("Tovabb lepeshez nyomj egy [entert]")
- read("")
- clear()
- elseif program == "banya" then
- banyaszas()
- else
- clear()
- printF()
- print("Helytelen parancs, kerlek hasznald a [help] parancsot")
- print("Tovabb lepeshez nyomj egy [entert]")
- read("")
- end
- end
- ]]--
- --[[ Menu ]]--
- --[[ Local Variables ]]--
- local termWidth, termHeight = term.getSize()
- local selectedItem = 1
- local runing = true
- --[[ Menu Metods ]]--
- function Choice1()
- InstallP()
- end
- function Choice2()
- banyaszas()
- end
- function Exit()
- runing = false
- end
- function Help()
- helpP()
- --[[ print(visszaMenu)
- event, key = os.pullEvent("key")
- onKeyPressed(key, visszaMenu)]]--
- end
- function Leiras()
- clear()
- printF()
- term.setCursorPos(1,4)
- print([[A program a banyaszasra keszult. A turtle horizontalis pozicioban, 3block magassabban banyasz.
- Azert igy mert, a legtobb gyemantot igy lehet gyujteni a kb 9-12 bolck magassagban.]])
- print("")
- print("")
- print("--Press Enter Key to Continue--")
- read()
- print([[ A programot kizarolag hobbi celbol keszitettem.
- Modositas nelkul szabadon terjesztheto. Terjesztesnel fel kell tuntetni a keszitot illetve a verziot.
- Keszlitette: K.Laszlo Alias -Matteo-
- Minecraft nev: LeslieHUN]])
- print("")
- print("--Press Enter Key to Continue--")
- read()
- end
- --[[[//hamarosan also menuk
- function tovabb()
- main()
- end
- function vissza()
- main()
- end
- ]]--
- --[[ Menu Definitions ]]--
- local mainMenu = {
- [1] = { text = " Install ", handler = Choice1 },
- [2] = { text = "Banya program", handler = Choice2 },
- [3] = { text = " Help ", handler = Help },
- [4] = { text = " Leiras ", handler = Leiras },
- [5] = { text = " Exit ", handler = Exit }
- }
- --[[local visszaMenu = { --//also menuk
- [1] = { text = "Tovabb", handler = tovabb },
- [2] = { text = "Vissza", handler = vissza }
- }
- ]]--
- --[[ Printing Methods ]]--
- function printMenu ( menu )
- for i = 1, #menu do
- if i == selectedItem then
- term.setCursorPos(10,(i+5))
- print(">> "..menu[i].text.." <<")
- else
- term.setCursorPos(10,(i+5))
- print(" "..menu[i].text)
- end
- end
- end
- --[[ Handler Method ]]--
- function onKeyPressed( key, menu )
- if key == keys.enter then
- onItemSelected(menu)
- elseif key == keys.up then
- if selectedItem > 1 then
- selectedItem = selectedItem - 1
- end
- elseif key == keys.down then
- if selectedItem < #menu then
- selectedItem = selectedItem + 1
- end
- end
- end
- function onItemSelected( menu )
- menu[selectedItem].handler()
- end
- --[[ Main Methods ]]--
- function main()
- while runing do
- clear()
- printF()
- term.setCursorPos(10,5)
- printMenu(mainMenu)
- event, key = os.pullEvent("key")
- onKeyPressed(key,mainMenu)
- end
- end
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement