Minecraft-Java-Edition
你如何在資源包的 lang 文件中使用 Minecraft 1.16 的十六進制顏色程式碼?
當 Minecraft 1.16 發佈時,他們允許使用完整的十六進制顏色程式碼為聊天和命令文本著色。
見這裡:https ://www.reddit.com/r/Minecraft/comments/g6dxco/snapshot_20w17a_allows_hex_codes_to_be_used_as/
我實際上不知道它如何在命令或聊天中使用..
但我想知道如何在資源包的 lang 文件中使用它。
語言文件是指包含遊戲中所有內容的字元串的文件。通常您可以在其中使用 § 格式符號。但是,還沒有人解釋它是如何用於 lang 文件的。
修改後的lang文件圖片:
我問這個問題是因為有人提到它:https ://www.reddit.com/r/mcresourcepack/comments/htydza/how_to_i_use_new_hex_color_formatting_116_to_lang/
為了回答這個問題,我查看了FabricMC的映射程式碼,因此請注意,對程式碼的每個引用都沒有使用 mojang 的函式和方法的官方名稱,但是它們有據可查。
當 minecraft 載入 .lang 文件時,它只是將 .lang 文件中的每個字元串載入到記憶體中。當 minecraft 需要繪製文本時,它會呼叫 draw 函式,
net.minecraft.client.font.TextRenderer
而MatrixStack matrices, String text, float x, float y, int color
我們傳統上可以更改顏色的某些函式(例如聊天框)提供了一些餘地。大多數其他螢幕都有這些顏色的硬編碼值。