[Problema] Aiuto per commando /execute !!!

Scusate potreste darmi una mano per un codice di un command block che non riesco ad inserire.
E' un commando /execute e per me è come entrare in un nuovo mondo dato che non l'ho mai usato.
Sto creando una SkyCTM e dovrei programmare che per ognuna delle 12 lane ci sono degli effetti particellari quando viene piazzata sul monumento...
Mi potreste dare una mano? Ho provato diversi comandi e non so più che fare....

Il mio ultimo comando è stato:

/execute @a ~ ~ ~ detect 1003 188 214 minecraft:wool 14 /summon FireworksRocketEntity ~ ~1 ~ {FireworksItem:{id:fireworks,Count:1,tag:{Fireworks:{Explosions:[{Type:2,Colors:[2695679],FadeColors:[15466291]}]}}}}

(E' tarato per un blocco di lana rossa)
Lascia un Rep se sono utile...   Bananarap

E ricordati... FORZA ALLE PATATE VELENOSE...  
Ora non posso verificare il comando

1) lo hai messo in un repeating cb always active ?
2)ho guardato su mcstacker, l'id per il firework è "fireworks_rocket"
3) ti consiglio di fare il comando in 2 parti e poi metterle assieme: in un command block metti il comando /summon e lo testi se funziona, nell'altro metti un execute con alla fine say ciao. Se tutti e due i comandi riescono, cancelli il say e ci metti il summon firework (Modificato 14/06/2017, 06:58 da iHeroN. Motivo: Errore grammaticale )


 Ti sono stato utile?
Yeee! Aiutami con +1 rep Yeee! 


La mia mappa: SKY:REBUILD















@DocZeta
Prima della 1.11 l'ID è FireworksRocketEntity, non hai specificato la versione quindi do per buono quello che hai scritto.

Se la tua versione è superiore ad 1.11, l'ID è fireworks_rocket



Innanzitutto stai testando su OGNI GIOCATORE compresi quelli morti se nel blocco specificato c'è un blocco di lana rossa.

Ora, il comando che stai usando (sto dando per scontato che sia in repeat e che funzioni) eseguirà il /summon 20 volte al secondo, moltiplicato per tutti i giocatori del server se il blocco viene trovato.



Il comando execute si usa per far eseguire ad un'altra entità un comando.

In questo caso stai cercando un blocco che sarà sempre nella stessa precisa posizione, non ti serve un execute e tanto meno un execute detect.

Puoi benissimo nascondere un Repeating Command Block sotto la struttura del monumento ed eseguire un /testforblock da li con coordinate relative.

Ovviamente dovrai collegarci un Chain Conditional per fare in modo che il comando venga eseguito solo se il blocco viene trovato.

La sintassi del testforblock è la seguente:

testforblock <x> <y> <z> <blocco> [dataValue|state] [dataTag]

Quindi ciò che ti occorre è:

testforblock 1003 188 214 minecraft:wool 14

Ti consiglio di usare le coordinate relative in modo da non dover sempre rifare tutto se la struttura va spostata.

Le coordinate relative sono quelle con la tilde ~ ed indicano uno spostamento relativo positivo o negativo partendo dalla coordinata da cui si esegue il comando

testforblock ~-5 ~3 ~ minecraft:wool 14

Cercherà un blocco di lana rossa -5 sulla x, +3 sulla y e z invariata da dove si esegue il comando.



Un Chain Command Block impostato su Conditional eseguirà il suo comando se e solo se il Command Block la cui freccia punta verso il Chain Conditional è vero

In parole povere, esegue il comando solo se il command block precedente non fallisce; quindi nel tuo caso eseguirà il comando se trova il blocco.

Ti basterà inserire il summon che desideri all'interno del Chain Conditional per farlo funzionare come intendi.
Tuttavia non hai ancora finito, perché il summon continuerà imperterrito 20 volte al secondo se continua a trovare il blocco. In questo caso ti basterà disattivare il Repeating Command Block precedente utilizzando questo:

/blockdata <coordinate del Repeating Command Block che cerca la lana rossa, meglio relative> {auto:0b}
(Modificato 14/06/2017, 11:32 da Maca.)
 ♫~ Se ti sono stato d'aiuto puoi ringraziarmi cliccando su +1 REP ~♪
CBUser e CBDev dalla 1.8, taggami se hai problemi coi Command Block

[Immagine: U85qfto.png]
Clicca il logo per vedere il mio album di disegni ( ˘˘  )
2 utenti apprezzano questo post
14/06/2017, 11:25Maca ha scritto: @DocZeta
Prima della 1.11 l'ID è FireworksRocketEntity, non hai specificato la versione quindi do per buono quello che hai scritto.

Se la tua versione è superiore ad 1.11, l'ID è fireworks_rocket



Innanzitutto stai testando su OGNI GIOCATORE compresi quelli morti se nel blocco specificato c'è un blocco di lana rossa.

Ora, il comando che stai usando (sto dando per scontato che sia in repeat e che funzioni) eseguirà il /summon 20 volte al secondo, moltiplicato per tutti i giocatori del server se il blocco viene trovato.



Il comando execute si usa per far eseguire ad un'altra entità un comando.

In questo caso stai cercando un blocco che sarà sempre nella stessa precisa posizione, non ti serve un execute e tanto meno un execute detect.

Puoi benissimo nascondere un Repeating Command Block sotto la struttura del monumento ed eseguire un /testforblock da li con coordinate relative.

Ovviamente dovrai collegarci un Chain Conditional per fare in modo che il comando venga eseguito solo se il blocco viene trovato.

La sintassi del testforblock è la seguente:

testforblock <x> <y> <z> <blocco> [dataValue|state] [dataTag]

Quindi ciò che ti occorre è:

testforblock 1003 188 214 minecraft:wool 14

Ti consiglio di usare le coordinate relative in modo da non dover sempre rifare tutto se la struttura va spostata.

Le coordinate relative sono quelle con la tilde ~ ed indicano uno spostamento relativo positivo o negativo partendo dalla coordinata da cui si esegue il comando

testforblock ~-5 ~3 ~ minecraft:wool 14

Cercherà un blocco di lana rossa -5 sulla x, +3 sulla y e z invariata da dove si esegue il comando.



Un Chain Command Block impostato su Conditional eseguirà il suo comando se e solo se il Command Block la cui freccia punta verso il Chain Conditional è vero

In parole povere, esegue il comando solo se il command block precedente non fallisce; quindi nel tuo caso eseguirà il comando se trova il blocco.

Ti basterà inserire il summon che desideri all'interno del Chain Conditional per farlo funzionare come intendi.
Tuttavia non hai ancora finito, perché il summon continuerà imperterrito 20 volte al secondo se continua a trovare il blocco. In questo caso ti basterà disattivare il Repeating Command Block precedente utilizzando questo:

/blockdata <coordinate del Repeating Command Block che cerca la lana rossa, meglio relative> {auto:0b}


Grazie mille ora ci provo se non riesco di posso contattare in privato? Mi sei stato molto utile comunque ( utilizzo la 1.11.2)
Lascia un Rep se sono utile...   Bananarap

E ricordati... FORZA ALLE PATATE VELENOSE...  
14/06/2017, 15:44DocZeta ha scritto: Se non riesco di posso contattare in privato?
@DocZeta è preferibile se continui nella discussione, così se altri hanno il tuo stesso problema possono risolverlo quiWink
15/06/2017, 16:35pietro140502 ha scritto:
14/06/2017, 15:44DocZeta ha scritto: Se non riesco di posso contattare in privato?
@DocZeta è preferibile se continui nella discussione, così se altri hanno il tuo stesso problema possono risolverlo quiWink

Hai perfettamente ragione... praticamente sono arrivato al punto che mettendo i tre command block spawnano un fotto di rocket e non so come fare
Lascia un Rep se sono utile...   Bananarap

E ricordati... FORZA ALLE PATATE VELENOSE...  
Nell'MP che mi hai mandato la configurazione che hai usato è questa:

[Immagine: mn26uP7r.png]

Il condizionale deve "ascoltare" dal repeating, quindi è posizionato al contrario.

Ora, nel repeating sta sicuramente il /testforblock per trovare il blocco di lana

Nell'impulse sta il /blockdata sulle coordinate del repeating, per impostarlo su {auto:0b}

Infine, nel chain conditional sta il summon impazzito; ricorda che il conditional è al contrario.


Si genera un numero spropositato di firework perché il Chain Conditional sta "ascoltando" dall'impulse e venendo attivato dal repeating.

Ruotando il conditional di 180° (In modo che la freccia punti VERSO l'impulse), si genereranno firework solo finché il blocco viene trovato dal repeating.

Per concludere il circuito devi quindi "girare" il chain conditional e impostare l'impulse in chain, sempre seguendo la regola delle frecce.

Il risultato finale sarà:

<C <C <R

Dove il command block sottolineato è quello in conditional.
 ♫~ Se ti sono stato d'aiuto puoi ringraziarmi cliccando su +1 REP ~♪
CBUser e CBDev dalla 1.8, taggami se hai problemi coi Command Block

[Immagine: U85qfto.png]
Clicca il logo per vedere il mio album di disegni ( ˘˘  )
15/06/2017, 19:28Maca ha scritto: Nell'MP che mi hai mandato la configurazione che hai usato è questa:

[Immagine: mn26uP7r.png]

Il condizionale deve "ascoltare" dal repeating, quindi è posizionato al contrario.

Ora, nel repeating sta sicuramente il /testforblock per trovare il blocco di lana

Nell'impulse sta il /blockdata sulle coordinate del repeating, per impostarlo su {auto:0b}

Infine, nel chain conditional sta il summon impazzito; ricorda che il conditional è al contrario.


Si genera un numero spropositato di firework perché il Chain Conditional sta "ascoltando" dall'impulse e venendo attivato dal repeating.

Ruotando il conditional di 180° (In modo che la freccia punti VERSO l'impulse), si genereranno firework solo finché il blocco viene trovato dal repeating.

Per concludere il circuito devi quindi "girare" il chain conditional e impostare l'impulse in chain, sempre seguendo la regola delle frecce.

Il risultato finale sarà:

<C <C <R

Dove il command block sottolineato è quello in conditional.

Grazie mille Maca mi sei stato molto d'aiuto oltre per capire questo procedimento anche per entrare nel mondo dei commandblock quindi gg e buon game...
L'unico errore che potresti aver fatto... a me il circuito va solo se il secondo commandblock è impostato su conditional

<C. <C. <I (.= conditional)

[Immagine: zbp3gWE] (Modificato 15/06/2017, 20:46 da DocZeta.)
Lascia un Rep se sono utile...   Bananarap

E ricordati... FORZA ALLE PATATE VELENOSE...  
Oh già, perdonami.

Se l'ultimo non è impostato su conditional non va semplicemente perché viene eseguito il blockdata che "ferma" il repeat a prescindere dal fatto che il blocco sia trovato o meno.

Per trovare gli altri blocchi di lana colorata non serve un altro repeat: usa semplicemente un chain NON condizionale sempre attivo con dentro il /testforblock e i due chain condizionali, ripeti quante volte occorre.
 ♫~ Se ti sono stato d'aiuto puoi ringraziarmi cliccando su +1 REP ~♪
CBUser e CBDev dalla 1.8, taggami se hai problemi coi Command Block

[Immagine: U85qfto.png]
Clicca il logo per vedere il mio album di disegni ( ˘˘  )
15/06/2017, 22:37Maca ha scritto: Oh già, perdonami.

Se l'ultimo non è impostato su conditional non va semplicemente perché viene eseguito il blockdata che "ferma" il repeat a prescindere dal fatto che il blocco sia trovato o meno.

Per trovare gli altri blocchi di lana colorata non serve un altro repeat: usa semplicemente un chain NON condizionale sempre attivo con dentro il /testforblock e i due chain condizionali, ripeti quante volte occorre.

Si ma il fatto è che io cambio codice del fuoco d'artificio per ogni lana e anche se risulta un procedimento più lungo preferisco farlo dato che almeno così funziona...

Grazie comunque Maca
Lascia un Rep se sono utile...   Bananarap

E ricordati... FORZA ALLE PATATE VELENOSE...  
Ma infatti ho detto che puoi tenere tutto in una sola chain.

Ora la tua situazione è questa:

<C <C <R

Dove gli ultimi due sono conditional. Questo blocco di 3 lo chiamiamo "PROCEDURA", per convenienza diciamo che è "la procedura della lana rossa"

Ora, puoi usare più di un repeating command block, ma potrebbe dare alcuni problemi di sincronizzazione e lag.

Quindi, creiamo la procedura della lana verde:

<C <C <R

Il suo scopo è identico alla procedura della lana rossa e il comando iniziale è lo stesso; possiamo UNIRE le due procedure cambiando il repeat segnato in rosso in un Chain non condizionale.

OVVIAMENTE potrai cambiare il codice del fuoco d'articificio nel chain conditional segnato in blu.

Ripeti questo procedimento tutte le volte che ti occorre.

Possiamo schematizzare le procedure così:

{Lana Blu} < {Lana Gialla} < {Lana Arancione} < {Lana Verde} < {Lana Rossa}


Ogni procedura è fatta così: { <C <C <C } eccetto la procedura Lana Rossa che è quella iniziale (l'unica col repeating) { <C <C <R } (Modificato 16/06/2017, 10:21 da Maca.)
 ♫~ Se ti sono stato d'aiuto puoi ringraziarmi cliccando su +1 REP ~♪
CBUser e CBDev dalla 1.8, taggami se hai problemi coi Command Block

[Immagine: U85qfto.png]
Clicca il logo per vedere il mio album di disegni ( ˘˘  )
Discussioni simili
Risposta di wither333
7 ore fa
Risposta di jack0217
09/12/2018, 11:30
Risposta di DCLMTT2004
21/11/2018, 15:24
Risposta di Oscarx
07/11/2018, 19:12
Risposta di CommandLeo
15/10/2018, 14:04

Utente(i) che stanno guardando questa discussione: 1 Ospite(i)