ambrosia13 / Immersive_Lights

Creative Commons Zero v1.0 Universal
0 stars 0 forks source link

How should I code colored light sources for charged light source blocks? #1

Open Ansrtion opened 3 months ago

Ansrtion commented 3 months ago

I want to add colored light sources for blocks like the respawn anchor, sea pickle, and candle, with their light intensity changing based on their charge level. However, my coding experience is limited, and I don't know how to modify the JSON files. Additionally, I'm unsure if the canvas-colored light branch supports this feature.

ambrosia13 commented 3 months ago

The documentation for the colored lights is under "Block Light API" in the PR: https://github.com/vram-guild/canvas/pull/428.

To make the light values change depending on charge level, you can locate what blockstate affects the charge level (you'll probably find this information when looking at the block in the F3 menu) and add in the variant overrides. For example, for the respawn anchor, you can make the default light be black (a.k.a. no light) and each respective charge level have increasing light intensities.

An example of this in "Immersive Lights" can be found in some blocks like redstone ore: https://github.com/ambrosia13/Immersive_Lights/blob/main/assets/minecraft/lights/block/deepslate_redstone_ore.json

https://github.com/spiralhalo/canvas/tree/light-prism should support the colored lights feature, but no other versions of canvas support it.

Ansrtion commented 3 months ago

I think it should be working normally. Variants charges are normal, and checking block properties with F3 is feasible. Thank you for your help