創作內容

3 GP

【Minecraft】Tellraw指令使用方法-進階篇(下)

作者:岩壁巨人拍立得│2018-03-03 11:20:08│巴幣:6│人氣:2093
大家好,這裡是岩壁巨人
這篇大概是最後一篇了吧(#
把所有的json語法介紹完之後,最後我會再做個統整。

還記得上次的回家作業嗎
題目:



左鍵名字→密頻
Shift+左鍵名字→插入名字
Shift+左鍵文字→插入文字


使用目標選擇器的答案:

/tellraw @a [{"text":"[ "},{"translate":"%s","with":[{"selector":"@p"}],"color":"yellow","insertion":"@p"},{"text":" ] "},{"text":"微婆 會養會疼 要真心 有點裝 人要正 要的來2-18","insertion":"微婆 會養會疼 要真心 有點裝 人要正 要的來2-18"}]

不使用目標選擇器的答案:

/tellraw @a [{"text":"[ \u00a76LZK\u00a7R ]","insertion":"LZK","clickEvent":{"action":"suggest_command","value":"/msg LZK"}},{"text":"微婆 會養會疼 要真心 有點裝 人要正 要的來2-18","insertion":"微婆 會養會疼 要真心 有點裝 人要正 要的來2-18"}]

其實很簡單對吧(笑
不過複製文字的部分目前只能利用這樣的方式,未來或許有可能自定義,這樣在製作多人地圖或者開放多人伺服器的時候也許會方便很多。

上一次介紹到"clickEvent"這個語法
接下來要介紹另一個性質很類似的東西

"hoverEvent" :

帶有這個語法的文本,當鼠標指向這個文本的時候會觸發某些事件

這個組件跟clickEvent一樣
包著兩個小東西 一個是"action"一個是"value"
action是鼠標指著文本時觸發的事件
value則是這個事件的內容

它的action有4個
1. show_text  秀出文字
2. show_achievement 秀出進度(還有統計)
3. show_item 秀出物品
4. show_entity 秀出實體

show_text :

主要是讓你用來顯示字串,value裡面的內容就是json語法
不過請注意以下語法不能放在這個裡面:
clickEvent、hoverEvent、selector、score(擁有明確的數值才可以)

範例:

/tellraw @a {"text":"[地圖作者資訊]","hoverEvent":{"action":"show_text","value":[{"text":"\u00a76LZK"},{"text":"\n\u00a7R技術人員,負責地圖內所有的紅石機關及指令"}]}}

製作地圖時可以利用hoverEvent來讓玩家查看作者資訊


可惜的是目標選擇器語法無效

/tellraw @a {"text":"[地圖作者資訊]","hoverEvent":{"action":"show_text","value":[{"translate":"%s ","with":[{"selector":"@p"}],"color":"gold"},{"text":"\n\u00a7R技術人員,負責地圖內所有的紅石機關及指令"}]}}




show_achievement :

可以顯示出遊戲進度
這個指令我怎麼測試就是顯示不出來
不知道是不是因為1.12移除了成就,變成"進度"的關係還尚待研究。

show_item:

用來顯示某個物品
他的value只能是NBT格式,而且物品的數量至少要是1,數據值也要打出來才會顯示

範例
製作地圖的時候可以用來顯示玩家已找到的線索




/tellraw @a {"text":"[已知線索]","hoverEvent":{"action":"show_item","value":"{id:\"minecraft:pumpkin_pie\",Damage:0,Count:1,tag:{display:{Name:\"過期的南瓜派\",Lore:[\"上面被刻了「3」、「First」\"]},ench:[{id:33}]}}"}}

順便解釋一下這裡面的NBT

id →物品id  不能是數字形式
Damage → 數據值 例如白色羊毛是0 橘色羊毛是1 (遊戲中按F3+H可查看方塊數據值)
Count →物品數量
tag →該物品的附加NBT格式
Name、Lore →物品名稱跟敘述
ench →附魔

show_entity

顯示實體名稱、實體形式(type)和UUID的高級事件
要先把進階標籤提示打開(F3+H)才看得見
一般來說用不太到 因為這個事件的value都是字串,你還不如直接用show_text就好


舉個例子:



/tellraw @a {"text":"爆炸生物","hoverEvent":{"action":"show_entity","value":"{name:\"苦力怕\",type:\"Creeper\"}"}}

其實就跟show_text差不多
只是文本是以NBT形式存在而不是json

hoverEvent差不多就是這些東西

最後再跟大家介紹"extra"這個語法
extra
額外的、附加的


就想像成安插在文本裡面的另一個tellraw

舉個例子:



/tellraw @a {"text":"\u00a74Someone ","extra":[{"text":"\u00a74\u00a7Kwatching "}," \u00a74you......"]}

extra 裡面可以放進任何我之前介紹過的語法,包括clickEvent和hoverEvent
唯一不同的地方是: 中括號是一定要加的
不像tellraw本身,裡面若放入多種語法,才要以中括號全部包起來

extra也能拿來做很狂的事情
像是extra裡面放extra:

/tellraw @a {"text":"test00","extra":[{"text":" test01","extra":[{"text":" test02","extra":[{"text":" test03","extra":[{"text":" test04","extra":[{"text":" test05","extra":[{"text":"\ntest06","extra":[{"text":" test07","extra":[{"text":" test08","extra":[{"text":" test09","extra":[{"text":" test10","extra":[{"text":" test11"}]}]}]}]}]}]}]}]}]}]}]}}




括號的數量非常可觀呢

那麼問題來了,上面我在介紹hoverEvent時有講到:
show_text的值是json,但是不能包含clickEvent、hoverEvent、selector還有數字以外的score

於是我建立了一個「假說」:
show_text的值若是extra,則extra中的這些語法不在此限

「實驗」:

將上面執行結果不如預期的指令拿來做修改

/tellraw @a {"text":"[地圖作者資訊]","hoverEvent":{"action":"show_text","value":[{"translate":"%s ","with":[{"selector":"@p"}],"color":"gold"},{"text":"\n\u00a7R技術人員,負責地圖內所有的紅石機關及指令"}]}}

修改成


/tellraw @a {"text":"[地圖作者資訊]","hoverEvent":{"action":"show_text","value":[{"text":"","extra":[{"translate":"%s ","with":[{"selector":"@p"}],"color":"gold"}]},{"text":"\n\u00a7R技術人員,負責地圖內所有的紅石機關及指令"}]}}

「實驗結果」:



「結論」:

extra不能排除語法上的限制

那教學文就到這邊囉ˊˇˋ如果還有問題歡迎留言告訴我
我還在想下次要介紹什麼
下台一鞠躬

json文本自製表格↓ 歡迎下載






引用網址:https://home.gamer.com.tw/TrackBack.php?sn=3907292
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 0 篇留言

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

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

前一篇:【Minecraft】T...

追蹤私訊切換新版閱覽

作品資料夾

aaa1357932大家
各位有空可以來我家看看畫作或聽聽我的全創作專輯!看更多我要大聲說11小時前


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

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