How fallinglight-studio/colored-alphabet-blocks works
Colored Alphabet Blocks is a Minecraft mod that registers 26 letter blocks and an empty block, supports independent panel and glyph dyeing, and provides custom cutout rendering and a creative tab across Fabric, Forge, and NeoForge. The main workflow is choosing and placing a block, then dyeing its panel or—while sneaking—its glyph; client tint handlers render the colors. Loader-specific code also preserves old registry names during world migration. The README documents these capabilities; sampled source confirms registration, glyph-dye handling, tinting, and loader-specific migration mechanisms.
Main entry points: AlphabetDefinitions.java Block definitions · ColoredAlphabetBlocks/LetterBlock.java Fabric letter blocks · ColoredAlphabetBlocks/LetterBlock.java Forge letter blocks · neoforge/LetterBlock.java NeoForge letter blocks
Components 20
Block content
- Fabric registration
fabric/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetBlockFabric.java - Forge registration
forge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetBlock.java - NeoForge registration
neoforge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/neoforge/AlphabetBlockNeoForge.java - Block definitions
common/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetDefinitions.java - Block loot tables
common/src/main/resources/data/colored_alphabet_blocks/loot_table/blocks
Player interactions
- Fabric letter blocks
fabric/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/LetterBlock.java - Forge letter blocks
forge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/LetterBlock.java - NeoForge letter blocks
neoforge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/neoforge/LetterBlock.java - Fabric glyph dye
fabric/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetBlockFabric.java - Forge glyph dye
forge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetGlyphDyeHandler.java - NeoForge glyph dye
neoforge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/neoforge/AlphabetGlyphDyeHandler.java
Client presentation
- Fabric client tints
fabric/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetFabricClient.java - Forge client tints
forge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetForgeClient.java - NeoForge client tints
neoforge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/neoforge/AlphabetNeoForgeClient.java - Models and language
common/src/main/resources/assets/colored_alphabet_blocks
World migration
- Fabric ID migration
fabric/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/mixin/MappedRegistryMixin.java - Forge ID migration
forge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/AlphabetLegacyRemapHandler.java - NeoForge ID aliases
neoforge/src/main/java/com/aitshiroku/ColoredAlphabetBlocks/neoforge/AlphabetLegacyAliasHandler.java
Other components
- Player
- Minecraft runtime
Connections 23
- Fabric registration → Block definitions: reads entries
- Forge registration → Block definitions: reads entries
- NeoForge registration → Block definitions: reads entries
- Fabric registration → Fabric letter blocks: registers blocks
- Forge registration → Forge letter blocks: registers blocks
- NeoForge registration → NeoForge letter blocks: registers blocks
- Player → Fabric letter blocks: places or dyes
- Player → Forge letter blocks: places or dyes
- Player → NeoForge letter blocks: places or dyes
- Player → Fabric glyph dye: sneak-dyes glyph
- Player → Forge glyph dye: sneak-dyes glyph
- Player → NeoForge glyph dye: sneak-dyes glyph
- Fabric client tints → Fabric letter blocks: registers tint
- Forge client tints → Forge letter blocks: registers tint
- NeoForge client tints → NeoForge letter blocks: registers tint
- Minecraft runtime → Fabric client tints: loads client setup
- Minecraft runtime → Forge client tints: loads client setup
- Minecraft runtime → NeoForge client tints: loads client setup
- Minecraft runtime → Models and language: loads resources
- Minecraft runtime → Block loot tables: reads drops
- Fabric ID migration → Minecraft runtime: redirects lookups
- Forge ID migration → Minecraft runtime: remaps entries
- NeoForge ID aliases → Minecraft runtime: registers aliases