創作內容

0 GP

minecart json標題

作者:Potato man│2018-09-19 10:18:45│巴幣:0│人氣:49
看到很多地圖有彩色標題,然後我自學了一下,現在分享給大家。

title <玩家> title <JSON文本>
json文本的格式為:{"text":"文本內容","樣式":樣式參數}
如:
/title @a title {"text":"Hello World","color":"dark_blue"}
其中hello word是文字內容,cooler是樣式代碼,“dark_blue”是樣式參數
樣式代碼表,連結

JSON文本

/tellraw/title指令使用嚴格的JSON語法。
告示牌被放置或修改時,或在一本完成的書被「翻開」(書寫後第一次打開)時,記分板分數和目標選擇器會被解析成具體的值。這些結果不再更新,使用NBT編輯器修改已存在的告示牌或已翻開的書也不會起作用。解析的結果無法在告示牌上換行,或在書上換頁,超出的文字只會直接消失。
JSON文本的格式支持以下(大多是可選的)元素的JSON對象:

  • 基礎聊天組件對象

    • text:字符串,存儲在聊天框中直接出現的純文字。注意像是「@a」和「@p」的選擇器並不會轉譯成玩家名字;必須使用selector代替。使用轉義字符「\n」換行(回車)。

    • keybind:顯示用於執行特定操作的按鍵鍵位。例如,key.inventory會向玩家顯示打開物品欄的按鍵,若玩家使用默認設置,則會顯示「E」。

    • extra:附加對象的列表,格式與基礎對象相同。

      • 與基礎對象格式相同的附加對象(遞歸的)。注意所有對象的屬性都會被其子對象所繼承,除了textextratranslatewithscore。這表意味著子對象會保留與父對象相同的格式和事件,除非子對象明確聲明將其覆蓋。

    • color:渲染文字時使用的顏色。有效值有:「black」,「dark_blue」,「dark_green」,「dark_aqua」,「dark_red」,「dark_purple」,「gold」,「gray」,「dark_gray」,「blue」,「green」,「aqua」,「red」,「light_purple」,「yellow」,「white」和「reset」(取消父對象使用的顏色效果)。技術上來說,「bold」 (粗體)、「underline」(下劃線)、「italic」(斜體)、「strikethrough」(刪除線)和「obfuscated」(模糊處理)都是可接受的,不過建議使用下文提到的標籤來實現。

    • bold:布爾值(true/false) - 是否將文字渲染為粗體,默認為false。

    • underlined:布爾值(true/false) - 是否為文字添加下劃線,默認為false。

    • italic:布爾值(true/false) - 是否將文字渲染為斜體,默認為false。

    • strikethrough:布爾值(true/false) - 是否為文字添加刪除線,默認為false。

    • obfuscated:布爾值(true/false) - 是否將文字模糊處理,默認為false。

    • insertion:當玩家按住⇧ Shift並點擊文字時,此字符串會自動填入聊天編輯框中。不會覆蓋原有的文字。

    • clickEvent:當玩家點擊文字時產生的事件。

      • action:當點擊文字時所觸發的行為。有效值為「open_url」(在玩家的默認瀏覽器中打開value中的URL地址),「run_command」(以玩家的身份在聊天框中輸入value值並提交。可以用來執行指令,但是如果玩家沒有所需的權限,指令會失敗),「change_page」(只能用在完成的書中,如果該value頁存在,翻至該頁)和「suggest_command」(和「run_command」相似,但是文本只會出現在玩家的聊天輸入欄,並不會自動提交。與insertion不同,這會直接取代原先在聊天輸入框中的內容)。「open_file」和「twitch_user_info」用於遊戲自動生成的信息中(如截圖時顯示的信息),不能在指令和告示牌中使用。

      • value:前述指定的action使用到的URL地址、聊天內容或指令。注意,指令之前一定要加上「/」斜槓。

    • hoverEvent:當玩家將滑鼠指針懸浮在文字之上時顯示的說明提示。

      • action:說明提示的類型。有效值為「show_text」(顯示JSON文本)、「show_item」(顯示一個可帶NBT標籤的物品)、「show_achievement」(顯示成就描述或統計數據。普通成就顯示為綠色,終極成就顯示為深紫色,統計數據名稱顯示為灰色。成就的顯示會附加描述)和「show_entity」(顯示實體的名稱,還可能顯示其類型和UUID)。

      • value:此標籤的格式取決於action。注意,「show_text」是唯一接受對象作為value值的action;其它action對應的value值都是字符串,所以必須用引號包含。
        • "show_text":可以是字符串,或是與基礎對象格式相同的一個對象。注意,此對象的clickEventhoverEvent在說明提示中不會生效,但是它的格式和extra標籤仍然有效。
        • "show_item":與物品NBT標籤格式相同的的字符串。包含「id」標籤,和可選的「Damage」標籤和「tag」標籤(和/give指令所使用的「dataTag」標籤中的組合相同)。
        • "show_achievement":成就或統計數據的名稱。其格式與成就、統計數據記分板對象判據以及/achievement指令相同。
        • "show_entity":描述一個組合的字符串,包含字符串值「type」(例如「Zombie」)、「name」和「id」(要求為實體UUID,但接受任意字符串)。

    • translate:顯示文本的翻譯標識符,用於將文本翻譯至玩家使用的語言。此標識符與assets資料夾或資源包中的標識符一致。翻譯文本只會在text字符串被使用時顯示。

    • withtranslate所使用的聊天對象參數列表和/或字符串參數。
      • 該參數為當前語言翻譯文本中出現的參數賦值,參數依序排列(例如,列表中的第一個元素將會取代翻譯文本中的「%1$s」)。

    • score: 一個玩家在一個記分板目標里的分數。若該玩家沒有被該記分板目標追蹤,則什麼都不顯示。此參數存在時完全忽略texttranslate

      • name:要被顯示分數的玩家的名字。可使用選擇器(例如@p),以及記分板系統中存在的虛擬玩家名稱。另外,如果名稱為「*」,會顯示讀者自己的分數(例如,/tellraw @a {score:{name:"*",objective:"obj"}}將給每個在線玩家顯示他們自己在「obj」目標里的分數)。

      • objective:要顯示分數的記分板目標。

      • value:可選。如果存在,將以此覆蓋目標原先的分數。

    • selector:一個包含了一個選擇器(@p、@a、@r或@e)的字符串以及可選的選擇器參數。不像text,此處的選擇器將會被解析為正確的玩家/實體名。如果多於一個玩家/實體符合條件,其將會被以例如'名字1和名字2'或'名字1,名字2,名字3,和名字4'的形式顯示。此參數存在時完全忽略texttranslatescore。在/tellraw指令中使用此標籤時,點擊結果中的玩家名稱會出現私信該玩家的指令建議;按住⇧ Shift點擊玩家名稱會將名稱填入聊天框中;按住⇧ Shift點擊非玩家實體的名稱會將其UUID填入聊天框中。
由於extra標籤的存在,以上格式可遞歸地嵌套成非常複雜與多功能的字符串。然而,JSON文本不必弄得如此複雜:幾乎所有的屬性都可選或會被忽略。
為了確保有效,每一個對象至少應該包含以下至少一個元素:texttranslatescoreselector(其餘的元素都是可選的)。為使用方便,整個對象可以只用一個字符串表示。此時,將這個字符串賦作text的值即可。例如,"This is raw text"{"text":"This is raw text"}是等價的。這種寫法在任何需要使用JSON文本的地方都是有效的(包括/tellraw裡面所用到的<raw json message>參數,extra列表中的元素,以及「show_text」hover_event中的value值)。
JSON文本也接受一個對象或字串的數組,數組與extra的處理方式大致相同(首個元素視作其後元素的父元素,繼承文字樣式)。它甚至接受多層嵌套的數組樹,並以深度優先遍歷。例如:
/tellraw @a ["Hello there, ",{"selector":"@p"},"."]/tellraw @a [[[["The "],[["quick ","brown "],[{"selector":"@p"}," jumps "],"over "],"the "],["lazy ","dog."]]]此表引用https://minecraft-zh.gamepedia.com/index.php?title=%E5%91%BD%E4%BB%A4&variant=zh-tw。
引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4134952
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 0 篇留言

我要留言提醒:您尚未登入,請先登入再留言

喜歡★mcmaker 可決定是否刪除您的留言,請勿發表違反站規文字。

後一篇:minecart 解密冒...

追蹤私訊切換新版閱覽

作品資料夾

chanxin95107所有老師們
翻譯菜鳥一枚,放了些蔚藍檔案的翻譯作品在小屋裡,有興趣的歡迎挑看選看( • ̀ω•́ )✧看更多我要大聲說6小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】