"> Foro - clickEvent, dentro de un clickEvent. (1 command) en Bloques de comandos - Page 1 of 1
Julio 05, 2024, 05:59:07 pm
Visitante

Autor Tema:  clickEvent, dentro de un clickEvent. (1 command)  (Leído 1591 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Abril 29, 2015, 10:45:15 pm

MinatoKuun




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    .w.
  • Actividad

  • 0%
  • Logros

Más información


En este post mostraré como hacer que un cartel o tellraw, al darle click, nos ponga otro cartel o tellraw (Con texto diferente), y que esto se pueda repetir cuantas veces uno quiera. De tal manera que, por ejemplo, si el lore de un mapa es opcional, a quienes no les interese, no tendrán que ver una fila de infinitos carteles, en su lugar verán solo uno. (Además de que la magia negra de los comandos siempre llama más la atención)

En los carteles y tellraws se necesitan poner comillas para los textos que ponemos en ellos, y como se puede poner el clickEvent con un comando que también necesite comillas, no se podía dejar solo a estas como símbolo único, debido a que estas solo tienen una forma, no son como los paréntesis que tienen uno que abre y otro que cierra. Aquí se produce el mismo problema que cuando estás haciendo una cita de algún escritor, y una palabra la necesitas poner entre comillas, el texto queda como: "blablabla "palabra" blablabla", en esta situación no se sabe si se está marcando la palabra ("palabra") en unas comillas más grandes, o si se está marcando todo lo demás, excluyendo a palabra, para esto, ayudaron las letras cursivas, pero eso ya es otro tema. 

Volviendo a minecraft, los developers para solucionar esto, decidieron añadir el símbolo \ detrás de las comillas, por lo que el problema anterior en minecraf se resolvería así: "blablabla \"palabra\" blablabla", pero como en minecraft se puede repetir una y otra vez el poner textos dentro de otros, sería tan fácil como poner \\" en la siguiente? Pues no. Por alguna razón, los developers no quisieron, o no pudieron dejar esto con simplemente \\", y en su reemplazo está \\\". Me pareció extraño que se saltasen el 2, así que busqué en internet, y encontré que la siguiente cantidad de \ era de 7, luego de esa no encontré nada.

Así que decidí descubrirlo yo, probé cada vez con un \ más, hasta que descubrí que el siguiente número era 15. antes de seguir poniendo de uno en uno los \, decidí ponerme a pensar si había alguna relación entre la cantidad de \ ya descubierta (0, 1, 3, 7, 15), luego de un rato llegué a la conclusión es que todos están en la funcion f(x)=2x+1, reemplazando x por el resultado anterior. 

f(0) = 2*0 + 1 = 1
f(1) = 1*2 + 1 = 3
f(3) = 3*2 + 1 = 7
f(7) = 7*2 + 1 = 15
f(15) = 15*2 + 1 = 31
f(31) = 31*2 + 1 = 63

Puse a prueba la teoría, y efectivamente funcionó. Aquí hay un ejemplo de como quedaría al final:
Código: [Seleccionar]
/setblock ~ ~ ~-1 wall_sign 0 replace {Text2:"{text:\"1\",color:black,clickEvent:{action:run_command,value:\"/setblock ~ ~ ~ wall_sign 0 replace {Text2:\\\"{text:\\\\\\\"2\\\\\\\",color:red,clickEvent:{action:run_command,value:\\\\\\\"/setblock ~ ~ ~ wall_sign 0 replace {Text2:\\\\\\\\\\\\\\\"{text:\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"3\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",color:yellow,clickEvent:{action:run_command,value:\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"/setblock ~ ~ ~ wall_sign 0 replace {Text2:\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"{text:\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"4\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",color:green}\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"}}\\\\\\\\\\\\\\\"}\\\\\\\"}}\\\"}\"}}"}
*Al momento de poner 31 o más \, no es necesario hacerlo a mano, solo hay que copiar el anterior, pegarlo 2 veces y ponerlo uno más.
*No hay que olvidarse de que después de todos los \ se pone una comilla ("), siempre una.
*A los carteles se les puede modificar el color, y la forma de manera completamente normal. 

PD: Sé que se puede hacer que un cartel cambie, de maneras más fáciles, pero quería descubrir cómo funcionaba la cantidad de "\" que se deben poner :P  

Linkback: https://minecraftmin.net/index.php?topic=9880.0


Respuesta #1 Abril 30, 2015, 12:29:59 am

PulgaMasther22




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Los bloques de comando son mi vida :V
  • Actividad

  • 0%
  • Logros

Más información

Wow! Muy buen invento. Me parece MUY innovador ^^ Algo complicado de entender a simple vista, pero cuando le tomas "el truquillo" es muy fácil de aplicarlo.
Saludos! :D 



Respuesta #2 Mayo 09, 2015, 10:28:24 pm

xStrikerHD




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    "No me bailes, hablame" -FrasesEstupidas.com
  • Actividad

  • 0%
  • Logros

Más información

Wow! Muy buen invento. Me parece MUY innovador ^^ Algo complicado de entender a simple vista, pero cuando le tomas "el truquillo" es muy fácil de aplicarlo.
Saludos! :D

La verdad , tienes tanta razon con eso de simple vista , que me diste ganas de leermelo despues xd 
xStriker2003 / Muerte





Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

xx
Cofre con Items dentro 1.9

Iniciado por Claus3000

1 Respuestas
1224 Vistas
Último mensaje Junio 13, 2016, 08:00:43 pm
por CreepyPandi
xx
¿Cómo hago para tepearme a un lugar y estar dentro de una entidad?

Iniciado por Polonardo

2 Respuestas
2014 Vistas
Último mensaje Febrero 23, 2019, 04:48:50 pm
por MrAnsk
thumbup
Crear bloque dentro de otro bloque !

Iniciado por ipereyra

2 Respuestas
2730 Vistas
Último mensaje Abril 20, 2014, 02:09:06 am
por c4rl0sBR
exclamation
Dubstep Gun [not 1 Command]

Iniciado por lol_600

1 Respuestas
2221 Vistas
Último mensaje Diciembre 03, 2015, 09:41:27 am
por GhostInHotee