Configuración
Ocultar noticias
Ocultar búsqueda
Desactivar efectos del tema
Cambiar apariencia



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

*
[DMForge] V.- Añadir un objeto básico. Registro y modelado
« en: Abril 16, 2017, 06:17:30 pm »
Tras haber creado la clase genérica para los objetos ahora os voy a enseñar a añadir un nuevo objeto a la clase base y crear el .json necesario.
Antes de empezar:
Habrá que crear una textura en PNG para el objeto y meterla dentro de la carpeta textures/items.

Crear el objeto
Crear
Para crearlo hay que hacer más o menos lo mismo que con los bloques, se añade un atributo público, estático, final y de tipo Item.
Recomendación: Para facilitar la visualización, es recomendable poner barras de comentario que separen los distintos tipos de elementos, como en este caso, los materiales.

Inicializar
El siguiente paso es inicializarlo con la clase GenericItem que acabamos de crear.
Para ello podemos crear un nuevo grupo static o usar uno ya creado y utilizar uno de los constructores de la clase GenericItem para inicializarlo. En este caso he utilizado el que solo requiere nombre y pestaña de creativo (os enseñaré a crear nuestras propias pestañas en un par de tutoriales).

Renderizado en el inventario
El último paso, antes de pasar al JSON, es decirle al Forge que renderice el objeto en el inventario.
Aunque podríamos usar el método que creamos para los bloques, es mejor crear un nuevo método para separar la lógica:
Nuevamente, la primera línea es para guardar en una variable el renderizador del Minecraft y no tener que volver a escribir todo cada vez que añadimos un bloque. Podéis ponerlo tal cual.
La siguiente es la propia orden, estamos diciendo que registre el objeto (aluminum), con metadata 0 y que su textura del inventario es la que le pasamos.
Como véis, al tener el nombre accesible desde la clase GenericItem, no tenemos que ponerlo a mano. Hay que tener en cuenta que hay que anteponerle el id del mod y ":" para que el Minecraft vaya a la carpeta de nuestro mod y no a la suya propia.

Una vez creado este método hay que llamarlo en nuestro método init de la clase base, pero solo desde el lado cliente:

Modelo
Item
En los objetos solo necesitamos un .json con el mismo nombre que el mismo dentro de la carpeta models/item. Además, este es prácticamente idéntico para todos los objetos, solo habría que cambiar el nombre del objeto en la textura y el nombre del propio archivo.
En parent le indicamos que no tiene padre, que este archivo define completamente el funcionamiento.
Las siguientes tres líneas son la ruta a la textura.
Por último viene como se va a ver en tercera persona y en primera persona. Como esta parte está sacada tal cual de los del Minecraft, aquí os la dejo:
Código: [Seleccionar]
"display": {
"thirdperson": {
"rotation": [ -90, 0, 0 ],
"translation": [ 0, 1, -3 ],
"scale": [ 0.55, 0.55, 0.55 ]
},
"firstperson": {
"rotation": [ 0, -135, 25 ],
"translation": [ 0, 4, 2 ],
"scale": [ 1.7, 1.7, 1.7 ]
}
}

Con esto ya tenemos el objeto completamente creado. Como véis, es mucho más sencillo que los bloques.

Linkback: http://minecraftmin.net/index.php?topic=14601.0
« Última modificación: Abril 16, 2017, 06:28:30 pm por Alfomega »
https://i.imgur.com/cFX0ssZ.png


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
[DMForge] III.- Añadir un bloque. Registro y modelado

Iniciado por Alfomega

2 Respuestas
788 Vistas
Último mensaje Enero 18, 2018, 12:06:52 pm
por Alfomega
xx
[DMForge] VI.- Utilidades I. Registro y renderizado automático

Iniciado por Alfomega

0 Respuestas
244 Vistas
Último mensaje Abril 16, 2017, 06:52:07 pm
por Alfomega
xx
[DMForge] IV.- Objeto genérico (GenericItem.java)

Iniciado por Alfomega

2 Respuestas
798 Vistas
Último mensaje Enero 14, 2018, 06:49:31 pm
por zahkruin
xx
[DMForge] X.- Añadir objetos a los cofres de las estructuras.

Iniciado por Alfomega

0 Respuestas
90 Vistas
Último mensaje Enero 07, 2018, 02:54:49 pm
por Alfomega