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

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

  • 0
Trial4life

NBT Tags 1.8

Domanda

Ciao a tutti,

ho notato che l'aggiornamento 1.8 ha cambiato radicalmente la modalità Adventure. Ora non è possibile piazzare/distruggere qualsiasi blocco. Ho fatto una ricerca e ho scoperto che è necessario utilizzare il comando

\give [player] [item name] [amount] {CanDestroy:["minecraft:[block name]"]}

per ottenere uno strumento che può distruggere il tipo di blocco specificato (stessa cosa per il tag {CanPlaceOn}).

C'è un modo per impostare una "regola" di default per una certa mappa? Ad esempio, vorrei dire al gioco che ogni pala può distruggere i blocchi di dirt e gravel (come nelle versioni precedenti del gioco). Così facendo posso semplicemente prendere una pala dall'inventario in modalità Creative, senza dover digitare il comando "\give" ogni volta che ho bisogno di una pala. Stessa cosa per la possibilità di piazzare blocchi (per esempio, mi piacerebbe essere in grado di mettere tutte le leve/pulsanti/pressure plates sui blocchi di Redstone Ore).

È possibile tutto ciò?

Grazie in anticipo!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

16 risposte a questa domanda

Recommended Posts

Non riesco a uscirne :(
Se uso

/give @p lever 1 0 {display:{Name:"Leva1"}}

ottengo una leva con un nome diverso, ma se poi uso il comando

/clear @p lever 0 1

la leva viene rimossa lo stesso! Invece ciò non deve accadere, per evitare di rimuovere altre leve che hanno i tag per il posizionamento sui blocchi (che sono state rinominate apposta).

Devo trovare un'altra soluzione quindi, vero?


Per esempio, sarebbe molto più semplice e immediato un comando che aggiunga un tag a TUTTE le leve possedute dal giocatore. È possibile farlo con entitydata?

entitydata @e[type=Item, [...] ] {CanPlaceOn:["redstone_ore"]}

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Non funziona... anche se mi dà la leva il nome resta sempre "Lever"
 

\give @p lever 1 0 {CustomName:"Leva1"}
E tra l'altro se gli do il tag CustomName, non posso dargli anche il tag CanPlaceOn, o sbaglio?

Mi sono sbagliato, leggendo qui la NBTag è Name, CustomName è per i mob.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Non funziona... anche se mi dà la leva il nome resta sempre "Lever"

\give @p lever 1 0 {CustomName:"Leva1"}

E tra l'altro se gli do il tag CustomName, non posso dargli anche il tag CanPlaceOn, o sbaglio?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Mmh credo di aver trovato il modo migliore allora.

Devo fare in modo che tutte le leve che si trovano nella mappa che sto facendo abbiano un nome (es. "Leva stanza 1"). Così, quando costruisco una leva, questa è senza nome e può essere rimossa con il comando "clear" (in modo da evitare di rimuovere le altre leve che hanno già il tag CanPlaceOn), e subito dopo ne viene data un'altra al giocatore con lo stesso tag, ma con nome diverso.

Ora, come faccio a fornire una leva che sia rinominata e allo stesso tempo che abbia il solito tag?

Devi applicare la NBTag CustomName!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Mmh credo di aver trovato il modo migliore allora.

Devo fare in modo che tutte le leve che si trovano nella mappa che sto facendo abbiano un nome (es. "Leva stanza 1"). Così, quando costruisco una leva, questa è senza nome e può essere rimossa con il comando "clear" (in modo da evitare di rimuovere le altre leve che hanno già il tag CanPlaceOn), e subito dopo ne viene data un'altra al giocatore con lo stesso tag, ma con nome diverso.

Ora, come faccio a fornire una leva che sia rinominata e allo stesso tempo che abbia il solito tag?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Hai sbagliato a scrivere il comando entitydata, la sua sintassi è:

entitydata <entity> <dataTag>

Su entity ci vanno i classici argomenti, nel tuo caso dovresti aggiungere un nome alla leva, in modo che sia richiamata:

entitydata @e[type=Item,name="Leva1"] {CanPlaceOn:["redstone_ore"]}

Oppure potresti far cancellare la leva e dargli, tramite give, una leva già modificata, se per te è più semplice; anzi ora che ci penso fai prima a fare così!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Allora ho provato con il filtro

/clear @p lever 0 0

e mi dice «Trial4life has 1 item that match the criteria»; successivamente utilizzo il comando

/entitydata lever {CanPlaceOn:["redstone_ore"]}

ma mi dice che l'UUID non è in un formato valido. Ho provato con

/entitydata @e[type=lever] {CanPlaceOn:["redstone_ore"]}

ma dice che il tipo "lever" non è valido. Non capisco come fare per richiamare nel valore "entity" del comando "/entitydata" la leva filtrata con il primo comando...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ok e fin qui ci sono... ma mettiamo che sto in modalità adventure, e ho preparato una crafting table apposta per costruire una leva da un bastone e da un blocco di cobblestone. È possibile, tramite qualche meccanismo, attribuire l'NBT tag a quella leva appena costruita in Adventure mode?

Umh, potresti rivelare che il giocatore abbia una leva e cambiargli subito la NBTag, per questo dovresti usare anche un nuovo comando 1.8

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ok e fin qui ci sono... ma mettiamo che sto in modalità adventure, e ho preparato una crafting table apposta per costruire una leva da un bastone e da un blocco di cobblestone. È possibile, tramite qualche meccanismo, attribuire l'NBT tag a quella leva appena costruita in Adventure mode?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ah un'altra cosa: è possibile prendere un blocco con il comando \give in modo che qualsiasi oggetto possa essere piazzato su di esso?
 
Se non si può fare, soerge un problema: sempre in modalità adventure, creo per esempio una leva su una crafting table; come faccio a crearla già con il tag che mi permette di piazzarla su un blocco specifico?

Puoi fare in modo che un blocco può essere piazzato solo sopra un blocco definito, per esempio puoi far piazzare un blocco di diamante solo sopra della terra.
In modalità avventura non puoi modificare le NBTag, per questo te lo devi preparare in creative: devi dare all'oggetto che vuoi far piazzare la NBTag CanPlaceOn, specificando il blocco su cui puoi farlo piazzare.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ah un'altra cosa: è possibile prendere un blocco con il comando \give in modo che qualsiasi oggetto possa essere piazzato su di esso?

 

Se non si può fare, soerge un problema: sempre in modalità adventure, creo per esempio una leva su una crafting table; come faccio a crearla già con il tag che mi permette di piazzarla su un blocco specifico?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Mmh... non avrei proprio idea di come crearlo questo libro... è complicato? Sapresti per caso linkarmi una guida?
 
Grazie ancora

Certo, qui la guida e qui lo strumento per aiutarti.

p.s. per mettere risolto devi mettere una miglior risposta!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Mmh... non avrei proprio idea di come crearlo questo libro... è complicato? Sapresti per caso linkarmi una guida?

 

Grazie ancora

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
No, non è possibile ciò, devi per forza specificare nel comando give. Un mio consiglio è crearti un libro modificato, in questo modo quando ti serve la pala apri il libro e te la dà con le NBTag che desideri.

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.