ComputerCraft – Come programmare una porta automatica con allarme intruso

GD Star Rating
loading…

Giocate su un server e volete che nessuno entri nella vostra casa? Bene allora con la computercraft possiamo bloccare l’accesso e mettere un allarme!!!

 

Tale necessità è parecchio di interesse per chi ha un server privato con molto amici un pochettino “invadenti”.. per risolvere il problema mi sono imbattutto in diversi video che parlano del problema e ne ho trovato qualcuno che lo risolve con la Computercraft. Il video in questione (indicato sotto) trascrive due parti di codice da fare con la Computercraft ma ci limiteremo a selezionare la parte di nostro interesse. Se qualcuno è intenzionato a capire come implementare la parte di codice relativo alla visualizzazione degli iscritti, basta andare in questa pagina.

Premettiamo che per far funzionare il tutto basta la computercraft ma abbiamo voluto inserire altri oggetti (secondari) potendo utilizzare i pacchetti inclusi su Feed The Beast. Utilissima utility per avere le migliori mod per minecraft.

Per impostare il codice ci servono i seguenti oggetti:

Nome oggetto Immagine MOD Fondamentale
Computer (meglio
se advanced)
Computercraft Advanced Computer

Computercraft Advanced Computer

Computercraft Si
Monitor (se volete i colori

deve essere advanced)

Computercraft Monitor

Computercraft Monitor

Computercraft Si
Player Detector
Player Detector - MiscPeripherals

Player Detector – MiscPeripherals

MiscPeripherals Si
Howler Alarm
Howler Alarm

Howler Alarm

 IC2 NuclearControl Solo per

il suono

Red Alloy Wire
Red Alloy Wire - by Youtubemark Magazine

Red Alloy Wire

 RedPower No, potete utilizzare

altri conduttori

Red Lamp
RedPower - Red Lamp

RedPower – Red Lamp

RedPower No, serve solo

come segnale

luminoso

Red Cage Lamp
Red Cage Lamp - RedPower - by Youtubemark Magazine

Red Cage Lamp – RedPower

 RedPower No, serve solo

come segnale

luminoso

Possibilmente mettete anche un lettore di floppy per salvare le copie del programma qualora dovesse succedere qualche accidentale picconata con diamond grill sul computer!

Il codice che verrà riportato di seguito trova la sua funzionalità in un server in cui non volete che qualcuno entri a vostra insaputa in casa vostra. Oppure semplicemente per permettere solo ad alcuni di farvi visita. E se qualcuno che non volete ci prova? La porta si chiude e scatta l’allarme intruso che si sente anche a distanza!!

Poniamo il caso che nel server siete presenti in 3:

  • Ciccio88
  • PongoDJ
  • FulvioYTM

Primo passo è sapere i corretti nomi dei presenti facendo attenzione anche alle maiuscole. Infatti il sistema è “case sensivity” ovvero le lettere minuscole e le stesse maiuscole sono differenti per il computer.

Una volta assemblati i componenti come in foto:

Assemblaggio pezzi - chiusura porta e allarme - computercraft

Assemblaggio pezzi – chiusura porta e allarme – computercraft

Ovvero il Computer deve avere alla SUA sinistra un monito (4×3), alla SUA destra il Player Detector a sua volta con la porta di ferro alla SUA destra. Per semplicità ho posizionato sopra il monitor una Red Lamp con frontale una Red Gage Lamp. Dietro ho disposto l’allarme e la Red Alloy Wire come in figura:

Collegamento allarme - chiusura porta e allarme - computercraft

Collegamento allarme – chiusura porta e allarme – computercraft

Come si può notare il collegamento è abbastanza semplice, l’importante è sapere la posizione della Red Alloy che in questo caso è “back”. Ricapitolando il monitor è, rispetto al computer, a sinistra “right” ed il Player Detector a destra “left” (che, a sua volta, trasmette corrente alla porta di ferro da aprire).

Digitate il nome della vostra funzione (se usate “startup” sappiate che si avvia da sola ad ogni avvio del computer).

Codice:

 

elencoAmmessi = {"Ciccio88", "PongoDJ", "FulvioYTM"}

function scanTable(table, search)
for i=1, #table do
if table[i]==search then
return true
end
end
return false
end

local monitor = peripheral.wrap("right")
term.clear()
print("Premi C per avviare il programma")
print("Premi X per interrompere")

function interfaccia(comando)
if comando == "c" or comando=="C" then
term.clear()
monitor.clear()
print ("\n\n Programma avviato")
sleep (2)
end

if comando == "x" or comando == "X" then
term.clear()
print ("Uscita in corso")
sleep(1)
os.shutdown()
end
end

function faiEntrare(player)
monitor.clear()
monitor.setCursorPos(2,2)
monitor.setTextScale(2.5)
monitor.write("Ciao "..player)
monitor.setCursorPos(2,4)
monitor.setTextScale(2.5)
monitor.write("Entra pure")
redstone.setOutput("left", true)
sleep(4)
redstone.setOutput("left", false)
monitor.clear()
end

function allarme(player)
monitor.clear()
monitor.setCursorPos(2,2)
monitor.setTextScale(2.5)
monitor.write(player)
monitor.setCursorPos(2,4)
monitor.setTextScale(2.5)
monitor.write("Non puoi entrare")
redstone.setOutput("back", true)
sleep(4)
redstone.setOutput("back",false)
monitor.clear()
end

-- Comunicazione con il Player detector
while true do
event, player = os.pullEvent()
if event == "player" then
ammesso = scanTable(elencoAmmessi, player)
if ammesso == true then
faiEntrare(player)
end

if ammesso == false then
allarme(player)
end
elseif event == "char" then
interfaccia(player)
end
end

 

Note:

La prima voce, elencoAmmessi, è una “table” ovvero una variabile contenete più valori (come un Array). Lì metterete i nomi corretti (attenti alle maiuscole) tra virgolette. Il tutto racchiuso dentro parentesi grafe. Dentro la variabile verranno inseriti solo i player a cui volete dare accesso. Se volete essere gli unici ad accedere basta mettere solo il proprio nik.

I comandi:

monitor.setCursorPos(2,2)
monitor.setTextScale(2.5)

servono a definire il primo la posizione del testo (due VIRGOLA due) e il secondo da dimensione del testo (due PUNTO due). Potreste anche variare o eliminare tali voci senza condizionare la funzionalità del codice.

Se avete bisogno di dettagli sul codice, posso realizzarvi un video che vi spiega passo passo tutto il codice. Scrivetelo nei commenti!

emaGForce

Fonti (click per aprire)

Keledan75 – http://www.youtube.com/user/keledan75

Codici vari su internet


Ti è piaciuto l’articolo?
Allora seguici su Facebook
cliccando su MI PIACE!

Powered by Youtubemark.com | Youtuber, vuoi collaborare? Clicca qui! | Vuoi promuoverti attraverso Youtube? Clicca qui!

GD Star Rating
loading…

ComputerCraft – Come programmare una porta automatica con allarme intruso, 8.3 out of 10 based on 6 ratings

Commenti su Facebook

Commenti su Facebook

emaGForce

Faccio video di vari tipi con il desiderio di condividere le soluzioni che propongo per i videogiochi. Non sono un maestro ma, sicuramente, un grande curioso delle novità e con la voglia di testare tutto!

social