Durante esta sesión vamos a acceder a los tipos de bloque que hay en Minecraft mediante programación en nuestro servidor de Scriptcraft.
Los bloques de Minecraft es una recopilación de materiales a los que podremos acceder y que podremos manipular para crear nuestros propios programas.
Atendiendo a la documentación que nos proporcionan, vamos a realizar distintas maneras de acceder a los bloques.
Por un lado podemos acceder a través de la variable global blocks. Accediendo a esta variable seguida de un punto y el nombre del material, podremos seleccionar cuál es el tipo de bloque con el que queremos operar.
Pero por otro lado, también podemos acceder a cada uno de los bloques mediante un número que es el que se corresponde en la enumeración de cada tipo. Esto nos ayudará si no queremos aprendernos todos los nombres, o por si necesitamos acceder a ellos en bucle.
Los bucles también los vamos a aprender con la estructura for.
La estructura for, es un bucle de control con el que podemos repetir acciones medidas con un contador. La estructuras for más utilizada es la forma incremental:
for (var i = 0; i < size-1; i++) { };
Para crear estos materiales en nuestro mundo deberemos de hacer uso de los Drones.
Un Drone es una localización en el espacio de Minecraft que podemos manipular como si de un bloque invisible se tratara, pero con una serie de funciones definidas para moverse en el espacio y crear bloques hayá por donde pasa.
Esto nos permite programar distintos tipos de estructuras de forma programada, aunque hay que pensar muy bien qué es lo que se hace.
Las funciones definidas de movimiento son las siguientes:
- up()
- down()
- fwd()
- back()
- left()
- right()
- turn()
Dentro de los paréntesis podemos escribir el número de bloques de desplazamiento que se ejecuta, por defecto, si no se escribe nada, se desplaza una unidad en el espacio de Minecraft.
Para crear el material se hace uso de box, pero existen otras muchas opciones para crear formas simples:
- box()
- box0()
- boxa()
- sphere()
- sphere0()
- hemisphere()
- hemisphere0()
- cylinder()
- cylinder0()
- prism()
- prism0()
Y otras muchas para crear formas complejas:
- signpost()
- trees Methods
- oak()
- spruce()
- birch()
- jungle()
- castle()
- chessboard()
- fort()
- temple()
- cottage()
- cottage_road()
- dancefloor()
- door()
- door2()
- hangtorch()
Y otras aún mucho más complejas como:
- blocktype()
- lcdclock()
- maze()
Para utilizar cada uno de estas instrucciones, solo hay que saber qué material queremos crear como parámetro de entrada de estas funciones.
Así que solo hay que probar para aprender más. 😉