--------------------------------------------------------------------------------------
前提:
主要是利用Minecraft裡的刻(每0.05秒)記分方式製作成的快速機率計算事件,大概要有的能力就是基本的數學能力了...(分數和百分比數字的計算)
--------------------------------------------------------------------------------------
正文:
一開始可以先創立記分板:/scoreboard objectives add Time stat.playOneMinute
如果你再輸入以下指令後會顯示一個記分板在右側:
/scoreboard objectives setdisplay sidebar Time
同時那個記分板會一直不段的向上增加(每0.05秒+1),這時你就完成了第一步了~
再來要幫這個機率設定一個上限的範圍:'
/scoreboard players set @a[score_Time_min=2] Time 0
(2是這個記分板最大的上限數值,改越大的話機率會越低)
按下完成後如果右側的記分版分數只顯示在1和2的話就代表你第二步成功了
最後就是在選擇玩家的目標裡面設定一個分數的指定數值:
/execute @a[score_Time_min=1,score_Time=1] ~ ~ ~ (自訂義指令)
(min後面的1是最小被指定的分數為1,[]裡最後面的1是最大被指定分數為1,
你也可以提高最大被指定的分數或改變最小被指定的分數,
只要分數在範圍內即可,但不建議過大,不然會有太明顯的機率週期)
而後可以推理出這個系統一共有1/2(50%)被執行的機率,
(也就是分數會不斷刷新,當觸發機關後且分數是1的時候後方的指令會被執行)
--------------------------------------------------------------------------------------
範例:
「鑽石抽獎機」
製作方式:
先創立記分板:
/scoreboard objectives add Time stat.playOneMinute
而後放置指令方塊裡面輸入:
/scoreboard players set @a[score_Time_min=3] Time 0
(這個機關最大的機率範圍是3)
接下來把這串指令丟到指令方塊後執行:
/setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"[{\"text\":\"\u00a7b「鑽石抽獎機」\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/execute @a[score_Time_min=1,score_Time=1] ~ ~ ~ /give @p diamond 1\"}}]",Text2:"[{\"text\":\"\u00a7a33%抽鑽石一顆\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/execute @a[score_Time_min=1,score_Time=1] ~ ~ ~ /tellraw @p [{\\\"text\\\":\\\"\u00a76恭喜你抽到了 \u00a7b鑽石x1\\\"}]\"}}]",Text3:"[{\"text\":\"\u00a76(點我開始抽鑽)\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/execute @a[score_Time_min=2,score_Time=3] ~ ~ ~ /tellraw @p {\\\"text\\\":\\\"\u00a76很可惜沒有抽到鑽石,再接再勵\\\"}\"}}]"}
右鍵告示牌後會有三個指令會被同時執行,分別解析:
/execute @a[score_Time_min=1,score_Time=1] ~ ~ ~ /give @p diamond 1
(當玩家的Time分數最小大於1,最大小於1時,會給予最近玩家1顆鑽石)
/execute @a[score_Time_min=1,score_Time=1] ~ ~ ~ /tellraw @p [{\\\"text\\\":\\\"\u00a76恭喜你抽到了 \u00a7b鑽石x1\\\"}]
(當玩家的Time分數最小大於1,最大小於1時,會對最近玩家說:「恭喜你抽到 鑽石x1」)
/execute @a[score_Time_min=2,score_Time=3] ~ ~ ~ /tellraw @p {\\\"text\\\":\\\"\u00a76很可惜沒有抽到鑽石,再接再勵\\\"}\"}
(當玩家的Time分數2以上,3以下時,會對最近玩家說:「沒有抽到鑽石,再接再勵」)
-------------------------------------------------------------------------------