Selettori

Cosa sono i selettori e a cosa servono?

I selettori servono per dire al gioco su quali entità eseguire i comandi. Ci sono 4 selettori fondamentali:

  • @p: indica il giocatore più vicino
  • @r: indica un giocatore a caso
  • @a: indica tutti i giocatori
  • @e: indica tutte le entità

Ai selettori possono essere aggiunti degli argomenti che modificano il comportamento del selettore. Ecco l'elenco di tutti gli argomenti per i selettori:

Importante: non è possibile inserire spazi negli argomenti del selettore. Es. @e[name=Mario Rossi] non funziona.

Posizione:

  • x, y e z: coordinate
  • r e rm: raggio massimo e raggio minimo
  • dx, dy e dz: volume

Scoreboard (da sostituire "nome" con il nome della scoreboard):

  • score_nome e score_nome_min: punteggio massimo e minimo
  • tag: tag scoreboard
  • team: nome del team

Caratteristiche:

  • c: quantità
  • l e lm: livello di esperienza massimo e minimo
  • m: modalità di gioco
  • name: nome dell'entità
  • rx e rxm: rotazione verticale massima e minima
  • ry e rym: rotazione orizzontale massima e minima
  • type: tipo di entità

Esempio di come possono essere utilizzati i selettori:

Posizione:

  • Per le coordinate si possono usare numeri relativi ma non si possono usare i decimali e le tilde. Si possono usare opzionalmente con un raggio per determinare una pozione specifica. Esempio: @a[x=10,y=100,z=-10,r=1] indicherà tutti i giocatori nel raggio di un blocco dalle coordinate 10 100 -10.
  • Per i raggi vanno usati numeri interi, e sono relativi al punto di esecuzione del comando. Esempio: @p[r=50] indicherà il giocatore più vicino nel raggio di 50 blocchi, se non ce ne sarà nessuno il comando non verrà eseguito.
  • Per il volume vanno usati numeri interi e non indicano le coordinate, ma la distanza dal punto di escuzione. Esempio: @a[x=10,y=10,z=10,dx=5,dy=5,dz=5] indicherà tutti i giocatori presenti nella zona che va dalle coordinate 10 10 10 alle coordinate relative 5 5 5.

Scoreboard:

  • Per i punteggi si possono usare numeri relativi. Esempi: @a[score_skill=5] indicherà tutti i giocatori con un punteggio di massimo (<=) 5, @a[score_skill_min=5] indicherà tutti i giocatori con un punteggio di minimo (=>) 5, e @a[score_skill=5,score_skill_min=10] indicherà tutti i giocatori con un punteggio che può andare da 5 a 10 (inclusi).
  • Per le tag ci sono 4 possibili metodi: @a[tag=cbuser] indicherà tutti i giocatori con la tag cbuser, @a[tag=!cbuser] indicherà tutti i giocatori senza la tag cbuser, @a[tag=] indicherà tutti i giocatori che non hanno nessuna tag e @a[tag=!] indicherà tutti i giocatori che hanno almeno una tag.
  • Per i team è come per le tag, con 4 metodi: @a[team=cbusers], @a[team=!cbusers], @a[team=] e @a[team=!].

Caratteristiche:

  • Per la quantità si possono usare i numeri relativi: con i positivi partirà a contare dalle entità più vicine, con i negativi dalle più lontane (che sono caricate in quel momento). Con i selettori fondamentali @p e @r la quantità è settata a 1 di default (infatti @p = @a[c=1]). Nel caso due entità si trovino alle stesse identiche coordinate il gioco conterà per prima l'entità che esiste da più tempo (con i numeri negativi accade il contrario). Esempio: @r[c=2] indicherà 2 giocatori scelti a caso e @a[c=-7] indicherà i 7 giocatori più lontani.
  • Per il livello di esperienza vanno usati numeri interi e funzionano come i punteggi: @a[lm=10,l=20] indicherà tutti i giocatori che hanno un livello compreso tra 10 e 20 (inclusi).
  • Per le modalità di gioco possono essere usati le stesse parole/lettere/numeri del comando /gamemode ma c'è anche la possibilità di usare -1, che indica qualsiasi modalità (nonostante sia più conveniente lasciare il campo vuoto). È anche possibile usare la negazione (!). Esempi: @a[m=1] indicherà tutti i giocatori in creative e @a[m=!0] tutti i giocatori non in survival.
  • Per il nome si possono usare anche le negazioni (!). Esempi: @a[name=!Gino] indicherà tutti i giocatori che non si chiamano Gino e @e[name=PlaceHolder] indicherà tutte le entità che si chiamano PlaceHolder.
  • Per le rotazioni si possono usare numeri relativi e possono essere usate da sole o con il relativo massimo/minimo. Esempi: @a[rxm=-10,rx=20] indicherà tutti i giocatori con una rotazione verticale che può andare da -10 a 20 (inclusi), @a[rym=50,ry=-60] indicherà tutti i giocatori con una rotazione orizzontale che può andare da 50 a -60 (inclusi) e @a[rxm=-10,rx=20,rym=50,ry=-60] indicherà tutti i giocatori che rientrano sia in uno che nell'altro campo.
  • Per il tipo di entità vanno usati gli id e può essere utilizzata la negazione (!). Con i selettori fondamentali @p, @a e @r il tipo è settato a player di default, ma con @r se si specifica il tipo è possibile cambiare il suo comportamento in modo che selezioni anche entità. Inoltre @e[type=player] = @a e @e[type=player,c=1] = @p. Esempi: @e[type=pig] indicherà tutti i maiali, @e[type=!cow] indicherà tutte le entità tranne le mucche e @r[type=!player] indicherà un entità casuale che non sia un player.