3 votos

Cómo seleccionar entidades no dentro de un cilindro en minecraft

He construido un plano circular en minecraft , y estoy tratando de obligar a los jugadores a permanecer dentro de esta área. El círculo es 161x161 centrado alrededor de 0, 44, 0. Luego coloca un bloque de comandos en el centro, con el comando tp @a[rm=80,r=85] 0 45 0. Esto te teletransporta a todo el mundo más de 80 y menos de 85 bloques del bloque de comando de nuevo hacia el centro del círculo, creando básicamente un hemisferio (la esfera es cortado a la mitad por la circular plano) para moverse dentro.

Sin embargo, quiero en lugar de restringir el movimiento a un cilindro de y=44 a y=infinito. Con este método sólo se teletransportado al tu x y z coordenadas superado el límite de la 161x161 círculo, ignorando su coordenada. Usted sería capaz de estar de pie en el borde del círculo y volar tan alto como usted quería, sin ser teletransportado. Esto hace necesario mantener la misma propiedad de la orden anterior para no teletransportarse a los jugadores fuera de 85 bloques. Sólo teletransportarse a aquellos que tienen una x y z de cambio de entre el 80 y el 85 bloques ( 85>sqrt(x²+y²)>80 )

Traté de variaciones de los comandos que implican la dy argumento, pero esto sólo se quita el teleport todos juntos.

Nota: Si no es posible tener un infinito el límite de altura, la restricción para cualquier valor por encima de y=70 también funcionaría. Además, el ideal mínimo de y=44 puede ser cambiado, pero no el aumento.

1voto

Wim Ombelets Puntos 73

No creo que esto es exactamente posible. Los tres tipos de área relacionados con el objetivo del selector de argumentos son x/y/z, dx/dy/dz y r/rm. x/y/z se mueve el punto de partida, dx/dy/dz forma de un paralelepípedo y de r/rm forma una esfera. Si se combinan los dos, sólo puede seleccionar el área transversal de los dos. Esto nunca puede formar una esfera.

Pero usted puede aproximado. Desea orientar a los jugadores volar de todos modos, así que con la velocidad máxima en el Espectador que no les detecta exactamente en la frontera de todos modos (porque bloques de comandos/funciones están restringidas a 20/s y puede mover hasta 4 bloques en ese momento en el modo Espectador. Así que usted no necesita estar perfectamente exacta con él de todos modos. Aquí hay dos soluciones para una aproximación:

Solución 1, que se aproxime a la del manto: Se puede colocar una armadura de stands a lo largo del eje central del cilindro (cada 10 bloques debería ser suficiente), luego de dar a cada jugador dentro de un radio alrededor de ellos una etiqueta y, a continuación, teletransportarse a todos sin la etiqueta. No te olvides de quitar la etiqueta de todo el mundo (*) después! Esto hace que su espacio se vea un poco como una pirámide pastel (sin el agujero en el centro):

pyramid cake

Solución 2, la aproximación de la zona: Se pueden utilizar varios rectángulos de aproximar el círculo. Puede hacerlo como se hace en el límite de los cálculos:

rectangle approximation

o el uso de los rectángulos que usted consigue aquí (arrastre el punto), que probablemente iba a bajar la cantidad de rectángulos que usted necesita para la misma exactitud. De nuevo, la etiqueta de todo el mundo dentro de dx/dy/dz (y=0,dy=256), luego teletransportarse a todo el mundo sin una etiqueta y, a continuación, quitar la etiqueta. De esta manera su área sería como cuando alguien construye un círculo en Minecraft de bloques, pero usted puede elegir la resolución.

JugonesTop.com

Jugonestop es una comunidad para amantes del gaming. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X