我的世界隊伍平衡器的制作其實非常簡單,TA的工作方式是,先讓玩家自主選擇隊伍(人性化,因為有些小伙伴想要同隊或者對戰),之后再大家都選好隊伍準備開始游戲的時候,讓這個隊伍平衡器開始工作,將兩隊人數平衡。原理是比較器可以把testfor命令探測到的實體數量輸出為紅石信號強度,而比較器的減法模式,可以將紅石信號強度相減。利用這兩個特性,就可以先把兩隊人數輸出為信號強度,然后相減得差值,考慮到總人數為單數的情況,所以當信號差大于等于2時,則隊伍不平衡,將多的隊伍的一個人分配到少的隊伍,循環這個過程,直到差值小于2。
底層排布如下:
各命令方塊及比較器作用:
1,2:分別探測兩隊人數
c,d:輸出人數為紅石信號到b,a的減數端
a,b:輸出人數,并減去d,c的信號之后輸出
3,6:更改玩家隊伍
4,5,7,8:重置1,2兩個命令方塊的輸出
命令如下:
1:testfor @e[team=b]
2:testfor @e[team=a]
3:/scoreboard teams join a @e[team=b,c=1]
4:/blockdata <1的坐標> {SuccessCount:0}
5:/blockdata <2的坐標> {SuccessCount:0}
6:/scoreboard teams join b @e[team=a,c=1]
7:/blockdata <1的坐標> {SuccessCount:0}
8:/blockdata <2的坐標> {SuccessCount:0}
c,d:比較器,比較模式(前面燈不亮)
a,b:比較器,減法模式(前面燈亮)
圖中icb(脈沖命令方塊)全為紅石控制,ccb(連鎖命令方塊)全為始終激活
之后在上方排布一個高頻紅石即可: