第十五章 發(fā)送消息
在Minecraft,如何與玩家交流,那肯定是在聊天框打字了。
但是如果得像服務(wù)器里“自動(dòng)化”,那么命令方塊肯定就派上用場(chǎng)了。
之前說過命令方塊有三種文本輸出形式。第一種是聊天欄顯示運(yùn)行結(jié)果;第二種是命令方塊界面顯示運(yùn)行結(jié)果;第三種是給命令方塊取名。
但前兩種都是只能管理員查看,第三種又太短,且不美觀。這時(shí)候我們就需要可以發(fā)送消息的指令。在Minecraft中,可以發(fā)送消息的指令有很多種,但功能都差不多,接下來就來一一講一下,這里先全部列出來:
/say <消息>
/tell
/tellraw
/w
/me
/msg
/teammsg
/tm(?)
首先第一個(gè)是/say。say可以發(fā)送廣播消息。發(fā)送消息的格式長(zhǎng)這樣:
[XXX]XXXXXXXX
我們?cè)賮砟糜昧奶鞕诎l(fā)出的信息的話來對(duì)比一下:
<XXX>XXXXXXX
可以發(fā)現(xiàn),除了名字的顯示形式是不一樣之外,其他都一樣。
/say
作用:廣播
需要權(quán)限等級(jí):Java-2,基巖-1
格式:
/say <消息內(nèi)容>
顯示信息格式:
[發(fā)出人的昵稱]“內(nèi)容”
/say這個(gè)指令很簡(jiǎn)單,但又有些那么不簡(jiǎn)單。
/say的消息內(nèi)容不止可以寫消息,還可以包括目標(biāo)選擇器和玩家名!
比如:
/say @p
就可以廣播最靠近命令執(zhí)行地點(diǎn)的玩家。
這功能的適用性非常廣,你可以在你的RPG地圖里使用/say 目標(biāo)選擇器來讓NPC說出玩家名,也可以在服務(wù)器中檢測(cè)持有違禁品的玩家并將其用戶名廣播。
普通玩家無法使用/say,但這些玩家干嘛要用/say,好好的在聊天欄內(nèi)發(fā)送消息不好嗎?
但Mojang就這么神奇,也向普通玩家添加了一條廣播指令,它就是/me。
/me
作用:廣播(實(shí)際上Mojang官方本意是顯示一條關(guān)于自己正在做什么的信息)
需要權(quán)限等級(jí):0
格式:
/me [消息內(nèi)容(動(dòng)作)]
顯示信息格式:
* Username 消息內(nèi)容
?。║sername即玩家名,這兒如果使用漢字空格會(huì)沒掉)
和say一樣,me也可以在消息中參雜目標(biāo)選擇器和玩家名,只不過這功能暫且只有基巖版有,Java版還未添加。me如果不填消息只會(huì)限速玩家昵稱。
廣播的指令暫且只有這么多。但一個(gè)游戲只有世界聊天室那肯定是不行的,所以Mojang還添加了一堆用于私信的指令:
/tell
/w
/msg
作用:告訴一個(gè)或多個(gè)玩家消息。
需要權(quán)限等級(jí):0(目標(biāo)選擇器只能使用@s和玩家名,其他類型選擇器需要2級(jí)[Java]或1級(jí)[基巖]權(quán)限)
格式:
/tell <收信者:目標(biāo)選擇器><內(nèi)容>
/w <收信者:目標(biāo)選擇器><內(nèi)容>
/msg <收信者:目標(biāo)選擇器><內(nèi)容>
這些指令都很簡(jiǎn)單,也沒有什么好講的,只是需要注意權(quán)限等級(jí)不夠目標(biāo)選擇器不能使用除@s以外選擇器。
/msg有個(gè)變種,這個(gè)變種是在Java1.14版本加入的,僅Java版有:/teammsg
/teammsg即在隊(duì)伍頻道發(fā)送消息,可以簡(jiǎn)寫為/tm(?)、
/teammsg、/tm
作用:隊(duì)伍頻道發(fā)送消息
需要權(quán)限等級(jí):0
格式:
/teammsg <消息>
/tm <消息>
顯示信息格式:
->[隊(duì)伍名]<玩家名>消息內(nèi)容
關(guān)于隊(duì)伍是個(gè)什么東西,講記分板時(shí)會(huì)講到。