Yarn: Describir las banderas de bits setBlockState actuales

Creado en 18 may. 2019  ·  3Comentarios  ·  Fuente: FabricMC/yarn

Estará abierto hasta que finalmente llegue la funcionalidad de comentarios, pero también espero listarlos en Fabric API, así que aquí va:

  • 1 corresponde a "enviar actualizaciones de vecinos en el servidor"
  • 2 - si 1, [en el servidor, marque el bloque como sucio para enviarlo al cliente; en el cliente, programe una actualización de render]
  • 4 - si es 1, omita la actualización de renderización del lado del cliente desde arriba
  • 8 - si es 1, fuerza la actualización de renderizado para que ocurra en el hilo principal
  • dieciséis - ???
  • 32 - omitir la caída de pilas de elementos (utilizado en Block.replaceBlock)
  • 64 - ¿el bloque es parte de una operación de "movimiento" (por ejemplo, mediante un pistón?), Según https://github.com/FabricMC/yarn/issues/634

¡Ahora necesito mejores descripciones / nombres!

También estoy bastante seguro de que updateNeighborStates es incorrecto y method_11637 y ambos están relacionados con dicha bandera 16.

enhancement

Comentario más útil

@asiekierka

0b0000000 // 0 - PREDETERMINADO / NINGUNO
0b0000001 // 1 - PROPAGATE_CHANGE
0b0000010 // 2 - NOTIFY_LISTENERS
0b0000100 // 4 - NO_REDRAW
0b0001000 // 8 - REDRAW_ON_MAIN_THREAD
0b0010000 // 16 - FORCE_STATE *
0b0100000 // 32 - SKIP_DROPS
0b1000000 // 64 - IS_MECHANICAL_UPDATE

  • method_11637 parece ser un método que permite a los bloques aplicar estados basados ​​en su entorno, en cuyo caso esta bandera se usaría para desactivar ese comportamiento y hacer que el estado pasado se use sin importar qué.

Ver: DebugStickItem

iWorld_1.setBlockState(blockPos_1, blockState_2, 18);

0b0010010 // 18 - FORCE_STATE | PROPAGATE_CHANGE

Editar: se renombró algunos métodos en función de los comentarios ( @ChloeDawn )

Todos 3 comentarios

Además, World.updateHorizontalAdjected -> World.updateNeighborComparators, World.updateListeners -> algo que ver con las actualizaciones de bloques de lado específico idk es lo que llama la bandera 2

@asiekierka

0b0000000 // 0 - PREDETERMINADO / NINGUNO
0b0000001 // 1 - PROPAGATE_CHANGE
0b0000010 // 2 - NOTIFY_LISTENERS
0b0000100 // 4 - NO_REDRAW
0b0001000 // 8 - REDRAW_ON_MAIN_THREAD
0b0010000 // 16 - FORCE_STATE *
0b0100000 // 32 - SKIP_DROPS
0b1000000 // 64 - IS_MECHANICAL_UPDATE

  • method_11637 parece ser un método que permite a los bloques aplicar estados basados ​​en su entorno, en cuyo caso esta bandera se usaría para desactivar ese comportamiento y hacer que el estado pasado se use sin importar qué.

Ver: DebugStickItem

iWorld_1.setBlockState(blockPos_1, blockState_2, 18);

0b0010010 // 18 - FORCE_STATE | PROPAGATE_CHANGE

Editar: se renombró algunos métodos en función de los comentarios ( @ChloeDawn )

Corregido en el # 1003 ya. ¡Gracias Yanis48 por señalarlo!

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

Bixilon picture Bixilon  ·  5Comentarios

quat1024 picture quat1024  ·  6Comentarios

Juuxel picture Juuxel  ·  5Comentarios

enbrain picture enbrain  ·  4Comentarios

haykam821 picture haykam821  ·  4Comentarios