Forum - Minecraft ITALIA
[Domanda] Rilevare un player in una zona - Versione stampabile

+- Forum - Minecraft ITALIA (https://www.minecraft-italia.it/forum)
+-- Forum: Generale - Parliamo di Minecraft (https://www.minecraft-italia.it/forum/f-generale-parliamo-di-minecraft)
+--- Forum: Command Block (https://www.minecraft-italia.it/forum/f-command-block)
+--- Discussione: [Domanda] Rilevare un player in una zona (/t-domanda-rilevare-un-player-in-una-zona)



Rilevare un player in una zona - Mik_LOM - 19/02/2019

SALVE BELLA GENTETNEG

Volevo sapere se esiste un comando, detect o simile, in grado eseguire un comando quando un player passa per una determinata coordinata o entra in un'area? 1.12.2

Per esempio, se io passo per le coordinate x y z uccidimi

In sostanza un execute detect solo con le coordinate al posto dei blocchi.

Spero sappiate darmi un aiuto, o in caso contrario taggate in questo post qualche genio tipo @commandLeo


GRAZIEIZARG Smile


RE: Rilevare un player in una zona - DragonHeart104 - 20/02/2019

Per 1.12 c'è /testfor da mettere in un command block a ripetizione


RE: Rilevare un player in una zona - Mik_LOM - 20/02/2019

20/02/2019, 08:36DragonHeart104 ha scritto: Per 1.12 c'è /testfor da mettere in un command block a ripetizione

Ok ma che devo scrivere? Tongue


RE: Rilevare un player in una zona - DragonHeart104 - 20/02/2019

In un command block a ripetizione sempre attivo metti il seguente comando:

/testfor @a[x=,y=,z=,r=0]


Dopo = devi mettere le cordinate del blocco dove vuoi che si attivi il comando, "r" invece è il raggio in tutte e tre le direzioni in cui si attiva il comando, con 0 prende solo il blocco da te scelto

Di seguito al command block a ripetizione metti un command block a catena, condizionale, sempre attivo con il comando che vuoi attivare


RE: Rilevare un player in una zona - Mik_LOM - 21/02/2019

20/02/2019, 15:40DragonHeart104 ha scritto: In un command block a ripetizione sempre attivo metti il seguente comando:

/testfor @a[x=,y=,z=,r=0]


Dopo = devi mettere le cordinate del blocco dove vuoi che si attivi il comando, "r" invece è il raggio in tutte e tre le direzioni in cui si attiva il comando, con 0 prende solo il blocco da te scelto

Di seguito al command block a ripetizione metti un command block a catena, condizionale, sempre attivo con il comando che vuoi attivare

Ok grazie mille, ma se metto il raggio, mi seleziona un area con centro il command block o la coordinata inserita? E poi il comando da eseguire con il verificarsi della condizione lo posso scrivere di seguito oppure in un altro command block dipendente dal precedente?


RE: Rilevare un player in una zona - Mik_LOM - 21/02/2019

Approfito di questa discussione per chiedere se si può fare la stessa cosa per rivelare quando un player è morto, ovvero se un player muore esegui un comando.

Grazie per ogni rispoata! Big Grin


RE: Rilevare un player in una zona - DragonHeart104 - 21/02/2019

L'area selezionata con il raggio ha centro nelle cordinate che scegli te.

Mentre il comando che vuoi eseguire lo devi mettere in un altro command block, di seguito al primo, a catena, condizionale e sempre atrivo

21/02/2019, 19:12Mik_LOM ha scritto: Approfito di questa discussione per chiedere se si può fare la stessa cosa per rivelare quando un player è morto, ovvero se un player muore esegui un comando.

Grazie per ogni rispoata!  Big Grin

Per rilevare quando un giocatore muore bisogna utilizzare il comando /scoreboard con l'obiettivo appropriato, che in breve aggiunge un punteggio per ogni morte e con il comando /execute puoi far attivare un comando qualsiasi quando ad esempio un giocatore ha punteggio uno, ovvero è morto una volta


RE: Rilevare un player in una zona - Mik_LOM - 22/02/2019

Si ha senzo... Ma come faccio a rilevare quando la scoreboard è incrementata?
Perche seguendo il tuo consiglio il comando verrebbe eseguito solo la prima volta, mentre a me servirebbe ogni volta che il player muore.

Per esempio ogni volta che muoio appare un messaggio in chat "eih sei un pirla".


RE: Rilevare un player in una zona - DragonHeart104 - 23/02/2019

Puoi fare in due modi:

Ogni volta che il giocatore muore il punteggio aumenta di uno, così puoi mettere un messaggio diverso per ogni morte

Se invece vuoi attivare sempre la stessa scritta, basta mettere un altro command block di seguito, a catena, condizionale e sempre attivo in cui rimetti il punteggio dell'obiettivo a zero. Ciò lo fai con un altro /scoreboard

Nn mi ricordo i comandi per 1.12 e ora nn posso provarli al pc, appena posso ti mando i comandi completi


RE: Rilevare un player in una zona - Mik_LOM - 23/02/2019

23/02/2019, 07:36DragonHeart104 ha scritto: Puoi fare in due modi:

Ogni volta che il giocatore muore il punteggio aumenta di uno, così puoi mettere un messaggio diverso per ogni morte

Se invece vuoi attivare sempre la stessa scritta, basta mettere un altro command block di seguito, a catena, condizionale e sempre attivo in cui rimetti il punteggio dell'obiettivo a zero. Ciò lo fai con un altro /scoreboard

Nn mi ricordo i comandi per 1.12 e ora nn posso provarli al pc, appena posso ti mando i comandi completi



Aahh quindi dovrei crearmi una scoreboard deadCount inizializzata a 0 e ogni volta che muoio va a 1 e attiva un comando, e subito dopo ritorna a 0.
Si nel caso del messaggio sarà sempre uguale ma non mi interessa, quello è un esempio, a me serviva che eseguiva un comando /setblock quindi mi va benissimo.

Grazie mille problemi risolti Big Grin Big Grin