Vai al contenuto
Il server del mese è
Visita la nostra nuova lista server!

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

  • 0
xGalaxy97x

Computercraft Melee Turtle... Aiuto!

Domanda

Ciao a tutti ragazzi, oggi volevo programmare la mia tartaruga con la spada di Diamante, che allo startup, faceva questo ciclo
[CODE]
while true do
turtle.attack()
end

[/CODE]
ma c'è un problema: questa turtle l'ho messa sotto uno Spawn di Scheletri... e dato che ogni tanto si riempie il suo inventario, lascia cadere le cose a terra e questo non mi piace... Allora volevo inserire nello startup che ogni 300 secondi (5 minuti), si girasse di 180°, mettesse tutto quello che ha nell'inventario in una cesta dietro di essa, e poi si rigirasse nuovamente di 180° per tornare alla posizione di partenza e continuare a killare... Ma non so come impostare questo "ciclo"... Io vorrei che ogni 5 minuti, la mia tartaruga facesse
[CODE]
turtle.turnLeft()
turtle.turnLeft()
[/CODE]
depositasse tutto, e poi ancora

[CODE]
turtle.turnLeft()
turtle.turnLeft()
[/CODE]
... Chi mi può scrivere il codice per fare ciò? Non riesco a scriverlo... Grazie mille in anticipo a tutti!!!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Recommended Posts

[quote name='EnderLoco' timestamp='1359924848' post='650683']
Quindi?
[/quote]

Come quindi? o.O Ma ai capito cosa avevo chiesto io? xD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='xGalaxy97x' timestamp='1359802256' post='649033']
Senza reboot continuano a girare all'infinito...
[/quote]

Ah, giusto. Sostituisci il reboot con
[CODE]
count = 0
[/CODE]

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='N1xx1' timestamp='1359811239' post='649123']
Ah, giusto. Sostituisci il reboot con
[CODE]
count = 0
[/CODE]
[/quote]

Ma dove lo devo mettere questo
[CODE]
count = 0
[/CODE]
??? Cioè prima di quale END??? Ecco il codice...

[CODE]
shell.run("id")
print("")
print("----------------------------")
print("Sono pronto a killare TUTTI!")
print("----------------------------")
print("")
local count = 0
while true do
turtle.attack()
-- Se la Turtle non riesce a prendere un oggetto
if not turtle.suck() then
-- Controlla se l'inventario è pieno o non c'è nulla da raccogliere
for i=1, 16 do
if turtle.getItemCount(i) > 0 then
-- Aumenta di 1 la variabile che conta gli slot pieni
count = count+1
end
end
if count == 16 then
turtle.turnLeft()
turtle.turnLeft()
for i=1, 16 do
turtle.select(i)
turtle.drop(64)
end
turtle.turnLeft()
turtle.turnLeft()
-- Riavvia il tutto in modo da poter ricominciare
os.reboot()
end
end
end
[/CODE]

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[CODE]
shell.run("id")
print("")
print("----------------------------")
print("Sono pronto a killare TUTTI!")
print("----------------------------")
print("")
local count = 0
while true do
turtle.attack()
-- Se la Turtle non riesce a prendere un oggetto
if not turtle.suck() then
-- Controlla se l'inventario è pieno o non c'è nulla da raccogliere
for i=1, 16 do
if turtle.getItemCount(i) > 0 then
-- Aumenta di 1 la variabile che conta gli slot pieni
count = count+1
end
end
if count == 16 then
turtle.turnLeft()
turtle.turnLeft()
for i=1, 16 do
turtle.select(i)
turtle.drop(64)
end
turtle.turnLeft()
turtle.turnLeft()
count = 0
end
end
end
[/CODE]

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='N1xx1' timestamp='1359888950' post='649879']
[CODE]
shell.run("id")
print("")
print("----------------------------")
print("Sono pronto a killare TUTTI!")
print("----------------------------")
print("")
local count = 0
while true do
turtle.attack()
-- Se la Turtle non riesce a prendere un oggetto
if not turtle.suck() then
-- Controlla se l'inventario è pieno o non c'è nulla da raccogliere
for i=1, 16 do
if turtle.getItemCount(i) > 0 then
-- Aumenta di 1 la variabile che conta gli slot pieni
count = count+1
end
end
if count == 16 then
turtle.turnLeft()
turtle.turnLeft()
for i=1, 16 do
turtle.select(i)
turtle.drop(64)
end
turtle.turnLeft()
turtle.turnLeft()
count = 0
end
end
end
[/CODE]
[/quote]

Non funziona... ogni volta che killa un mob, si gira a depositare tutto... xD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='xGalaxy97x' timestamp='1359891556' post='649956']
Non funziona... ogni volta che killa un mob, si gira a depositare tutto... xD
[/quote]

Sicuro di averlo scritto correttamente?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='N1xx1' timestamp='1359921086' post='650616']
Sicuro di averlo scritto correttamente?
[/quote]

Certo, eccolo qui... [url="http://pastebin.com/rFg9Q6WY"]http://pastebin.com/rFg9Q6WY[/url]

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='xGalaxy97x' timestamp='1359891556' post='649956']


Non funziona... ogni volta che killa un mob, si gira a depositare tutto... xD
[/quote]

Quindi?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='N1xx1' timestamp='1359752254' post='648864']
Non capisco a che serve il reboot.

Il ciclo while continuerà anche dopo aver scaricato.
[/quote]

Senza reboot continuano a girare all'infinito...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='EnderLoco' timestamp='1359990890' post='651168']
Quindi cosa ti cambia ?
[/quote]

Io avrei voluto che ogni 5 minuti si girasse a depositare il tutto... xD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Per il semplice motivo che volevo un programma che faceva questa cosa xD Non posso volere un programma che per 5 minuti attacca e dopo questi 5 minuti si gira e deposita il tutto? xD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Messaggio Automatico

Questa discussione è stata sposta da"[url='http://www.minecraftitalia.net/forum/index.php?showforum=10']Mods[/url]" a "[url='http://www.minecraftitalia.net/forum/index.php?showforum=187']Domande e Consigli[/url]".

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Non capisco a che serve il reboot.

Il ciclo while continuerà anche dopo aver scaricato.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='Chris54721' timestamp='1359744052' post='648723']
Il secondo lo metti alla penultima riga, così viene eseguito sempre, il primo a questo punto lo puoi anche eliminare.
[/quote]

Worka, il problema è che è MOLTO difficile stoppare il programma... dato che ogni secondo lo schermo della turtle diventa nero... :S

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='xGalaxy97x' timestamp='1359739785' post='648648']
Cioè metto 2 os.reboot()???
[/quote]

Il secondo lo metti alla penultima riga, così viene eseguito sempre, il primo a questo punto lo puoi anche eliminare.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
[quote name='xGalaxy97x' timestamp='1359738118' post='648616']
Non so perchè ma non funziona... continua a killare senza scaricare...
EDIT: Funziona alla grande... l'unica cosa è che continua a killare... non si gira e svuota... se ci sono items vicino a lei, vanno DIRETTAMENTE nella chest dietro di essa... xD a me sta bene, ma non capisco come fa... Hahhaha
[/quote]

Ma come fa? A me si deve girare ogni volta .-. Vabbè, meglio così xD

[quote name='xGalaxy97x' timestamp='1359738838' post='648628']
Questo non è lo stesso? ho aggiunto solamente qualche print iniziale....
[url="http://pastebin.com/AX51CPQg"]http://pastebin.com/AX51CPQg[/url]
[/quote]

Sì, dovrebbe funzionare in teoria.
Non per spammare, ma sto creando un OS per la ComputerCraft. Se ti va dai un'occhiata al post, lo trovi nella sezione Mod. ;)

Comunque, se aggiungi un os.reboot() prima dell'ultimo end dovrebbe sbuggarsi completamente ;)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Questo non è lo stesso? ho aggiunto solamente qualche print iniziale....
[url="http://pastebin.com/AX51CPQg"]http://pastebin.com/AX51CPQg[/url]

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Sicuro? A me funziona bene...non è che per caso hai copiato il codice di prima?

Per evitare inconvenienti, te lo metto su Pastebin così che tu lo possa copiare facilmente. In alternativa copia il codice del mio post precedente.

[url="http://pastebin.com/3Y1zYFEY"]http://pastebin.com/3Y1zYFEY[/url]

EDIT: Effettivamente ho notato che qualche volta si bugga. Ma basta un riavvio della turtle e funziona tutto.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Non so perchè ma non funziona... continua a killare senza scaricare...
EDIT: Funziona alla grande... l'unica cosa è che continua a killare... non si gira e svuota... se ci sono items vicino a lei, vanno DIRETTAMENTE nella chest dietro di essa... xD a me sta bene, ma non capisco come fa... Hahhaha

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

×
×
  • Crea Nuovo...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.