Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Début du Programme ShirOS
- -- Déclaration des variables
- local modemSide = "right"
- local modem = peripheral.wrap(modemSide)
- local channelMain = 0
- local channeSend
- local monitorSide = "left"
- local monitor = peripheral.wrap(monitorSide)
- local redstoneSide = "back"
- local redstoneSide2 = "bottom"
- local pass
- local key
- local key2
- local openClose = 0
- local aux = 0
- local alert = 0
- local task1 = "Oil - Vannes Fermées"
- local task2 = "Fuel - Vannes Fermées"
- local task3 = ""
- local task4 = ""
- local task5 = ""
- local task6 = ""
- -- Complément du ShirOS
- local function monitorAff(m,task1,task2,task3,task4,task5)
- m.clear()
- m.setCursorPos(1, 1)
- m.setTextScale(0.5)
- m.write("Liste des Tâches actives :")
- m.setCursorPos(1, 2)
- m.write(" | "..task1)
- m.setCursorPos(1, 3)
- m.write(" | "..task2)
- m.setCursorPos(1, 4)
- m.write(" | "..task3)
- m.setCursorPos(1, 5)
- m.write(" | "..task4)
- m.setCursorPos(1, 6)
- m.setTextColor( colors.red )
- m.write(" | "..task5)
- m.setTextColor( colors.white)
- m.setCursorPos(1, 7)
- m.write(" | ")
- m.setCursorPos(1, 8)
- m.write(" | ")
- m.setCursorPos(1, 9)
- m.write(" | "..task6)
- end
- -- Code du ShirOS
- term.clear()
- term.setCursorPos(1, 1)
- -- Page de Connexion
- while true do
- term.clear()
- term.setCursorPos(1, 1)
- print("/*------------------------------------------*/")
- print("/-- Connexion au gtOS --/")
- print("/*------------------------------------------*/")
- print("")
- print("Veuillez saisir le mot de passe : ")
- term.setTextColor( colors.yellow )
- pass = read("*")
- term.setTextColor( colors.white)
- if pass == "GTurbo" then
- -- Lancement du ShirOS
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- while true do
- sleep(0.5)
- term.clear()
- term.setCursorPos(1, 1)
- print("/*-----------------------------------------------*/")
- print("gtOS 1.1 Bonjour Mr. GTurbo ")
- print("/*-----------------------------------------------*/")
- print("")
- print("Actions :")
- print("")
- print(" 1. Contrôle des Tanks")
- print(" 2. Arret d'Urgence")
- print(" 3. Production d'Obsidienne")
- print(" 4. Actualiser les Tâches")
- print(" ...")
- print(" 9. Quitter")
- print("")
- term.setTextColor( colors.yellow )
- key = read()
- term.setTextColor( colors.white)
- if key == "1" then
- -- Contrôle des Tanks
- while true do
- sleep(0.5)
- term.clear()
- term.setCursorPos(1, 1)
- print("/*-----------------------------------------------*/")
- print("gtOS 1.1 Contrôle des Tanks ")
- print("/*-----------------------------------------------*/")
- print("")
- print("Actions :")
- print("")
- print(" 1. Ouvrir/Fermer les vannes (Oil)")
- print(" 2. Ouvrir/Fermer les vannes (Fuel)")
- print(" 3. Validation du mode Aux.")
- print(" ...")
- print(" 9. Quitter")
- print("")
- term.setTextColor( colors.yellow )
- key2 = read()
- term.setTextColor( colors.white)
- if key2 == "1" then
- -- Ouvrir/Fermer les vannes (Oil)
- channelSend = 101
- if openClose == 0 then
- task1 = "Oil - Vannes Ouvertes"
- modem.transmit(channelSend,channelMain,true)
- openClose = 1
- else
- task1 = "Oil - Vannes Fermées"
- modem.transmit(channelSend,channelMain,false)
- openClose = 0
- end
- print(" Choix validé")
- print(" La liste des tâches va être mis à jour")
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- elseif key2 == "2" then
- -- Vannes de Fuel
- channelSend = 102
- if openClose == 0 then
- task2 = "Fuel - Vannes Ouvertes"
- modem.transmit(channelSend,channelMain,true)
- openClose = 1
- else
- task2 = "Fuel - Vannes Fermées"
- modem.transmit(channelSend,channelMain,false)
- openClose = 0
- end
- print(" Choix validé")
- print(" La liste des tâches va être mis à jour")
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- elseif key2 == "3" then
- -- Validation du mode Aux.
- channelSend = 103
- if aux == 0 then
- task3 = "Mode Générateur Aux. activé"
- print(" Validation Confirmée")
- modem.transmit(channelSend,channelMain,true)
- aux = 1
- else
- task3 = ""
- print(" Désactivation")
- modem.transmit(channelSend,channelMain,false)
- aux = 0
- end
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- --Quitter
- elseif key2 == "9" then
- break
- else
- print(" Erreur")
- end
- end
- elseif key == "2" then
- -- Arrêt d'urgence'
- channelSend = 104
- if alert == 0 then
- print(" Arret d'Urgence en cours")
- print(" La liste des tâches va être mis à jour")
- task4 = "Arret d'Urgence enclenché"
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- alert = 1
- modem.transmit(channelSend,channelMain,true)
- else
- print(" Redemarage en cours")
- task4 = ""
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- alert = 0
- modem.transmit(channelSend,channelMain,false)
- end
- elseif key == "3" then
- -- Lancement de la prod. d'obsi'
- while true do
- sleep(0.5)
- term.clear()
- term.setCursorPos(1, 1)
- channelSend = 105
- print("/*-----------------------------------------------*/")
- print("gtOS 1.1 Production d'Obsidienne ")
- print("/*-----------------------------------------------*/")
- print("")
- print("Voulez-vous lancer la production : ")
- print("")
- print(" 1. Lancer")
- print(" ...")
- print(" 9. Quitter")
- print("")
- term.setTextColor( colors.yellow )
- key2 = read()
- term.setTextColor( colors.white)
- -- Lancement de la production
- if key2 == "1" then
- modem.transmit(channelSend,channelMain,1)
- print(" Lancement de la production")
- print(" Travail en cours ...")
- task6 = "Production d'Obsidienne : Production en cours"
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- sleep(2)
- else
- break
- end
- end
- end
- -- Notif Alerte
- if rs.getInput(redstoneSide) == true then
- task5 = "Demande de Confirmation (Générateur Aux.)"
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- else
- task5 = ""
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- end
- -- Reset Task Obsi
- if rs.getInput(redstoneSide2) == true then
- task6 = ""
- monitorAff(monitor,task1,task2,task3,task4,task5,task6)
- end
- -- Quitter
- if key == "9" then
- channelSend = 106
- modem.transmit(channelSend,channelMain,false)
- os.reboot()
- end
- end
- else
- term.setTextColor( colors.red )
- print(" Mot de passe incorrect !")
- term.setTextColor( colors.white)
- sleep(2)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement