UU看書

第四十章 記分板是什麼鬼

天才一秒記住【UU看書】地址:www.uukanshu.co

相信很多人都玩過電子遊戲。

就算你從來都沒玩過電子遊戲,只要你用過計算機,你就會發現在計算機上有一些數值會一直變化。比如時間、銀行卡存款、股票價格等等。

像這種會變的數值,有一個專門的名稱:變數。

相對應的,還有不會變化的數值,也有一個專門的名稱:常量。

在Minecraft中,你常常會看到各種變數——經驗值、物品數量、狀態效果等級等等。不難發現,變數的用途很廣,如果能夠在指令中使用變數豈不美哉?

在之前的章節中,我們學會了如何使用xp指令更改經驗值。剛才有提到經驗值就是個變數,加上經驗值可以用於指令中,這不美哉?

但是經驗值只是一項變數。如果我們想要建立一個屬於自己的變數,那該怎麼辦呢?

沒有法子。但是Mojang給我們提供了另外一個東西:記分板(Scoreboard)(又稱“計分板”)。

什麼是記分板?許多網頁傳奇常常為了刺激追求名利的玩家氪金,搞了許多排行榜。“戰力榜”就是個典型的例子。在戰力榜中,每個玩家的“戰力”依靠某種順序排列,一般是從大到小。同時,每個玩家的戰力值都是實時變化的,也就是說“戰力”是一個變數。

像這樣的每個玩家都繫結了一項自己的變數,這個變數又靠某種順序排列的排行榜,在Minecraft中我們就可以稱呼其為:“計分項”(又稱記分項)。而用於承載計分項的東西我們就叫做“記分板”。

每個計分項都有以下幾個資訊:

名稱(name)——該計分項的名稱,用於指令中的呼叫,不可重名。在MinecraftJava118更新之前,計分項的名稱不能超過16個字元。基岩版(最新版本)無限制。

顯示名稱(displayname)——在Java版中是一串JSON文字,在基岩版中是一串普通文字。在一個計分項中不一定有這一個資訊。主要用於遊戲介面中名稱的顯示。在MinecraftJava118更新之前,顯示名稱不能超過32個字元。基岩版(最新版本)無限制。(更簡單易懂的說法就是,名稱就類似於你的QQ號碼,一經註冊不可更改。顯示名稱則類似於你QQ的暱稱,可以隨意更改)

準則(criterion複數:criteria)——決定了計分項具體要跟蹤的資訊。比如我建立了一個準則是“deathCount”(死亡次數)的計分項,這個計分項自建立就會追蹤每個玩家的死亡次數,然後列出一張“死亡榜”。最基本的計分項準則是dummy,即只能透過指令改變每個實體持有的分數的準則。準則有很多,在接下來的章節中我們會詳細瞭解。

分數持有者(scoreholder)——正如其名,就是指計分項中每個變數(分數)所繫結的玩家或非玩家實體。

分數(score)——也就是變數。只不過相比普通的變數來說,這兒的變數是和玩家或非玩家實體繫結的,所以才叫“分數”。

舉個簡單的例子:

假設張三建立了一個名為“金錢”,顯示名稱也為“金錢”,準則為dummy的計分項。此時這個計分項由於剛建立裡面沒有任何東西,張三就使用指令給一名叫做“李四”的玩家在該計分項上新增了1分。由於“李四”並未在該計分項內擁有任何資料,於是遊戲就幫助李四註冊了一下這個計分項,並將李四的分數設定為0(初始值)1。最終,這項計分項中就有一項“李四”的分數,並且其值為1。

現在你已經大概瞭解記分板是什麼東西了吧?記分板有許多內容值得研究,下一章我們將會開始瞭解如何管理一個計分項。

如遇章節錯誤,請點選報錯(無需登陸)

新書推薦

異界遊戲王之虛空變 轉生到異世界自己卻是骷髏 NBA:我沒打過比賽但天賦爆棚 網遊之異界傳說 從DNF關服開始當神豪 從部落開始崛起 足球,開局點滿任意球