[樂游網導讀]我的世界里面玩家可以通過命令方塊實現各種游戲功能,最近有玩家放出了CS的爆破系統和手雷系統實現方法,而槍械系統也給玩家帶來了不少驚喜。
我的世界里面玩家可以通過命令方塊實現各種游戲功能,最近有玩家放出了CS的爆破系統和手雷系統實現方法,而槍械系統也給玩家帶來了不少驚喜,下面是關于槍械系統的實現方法詳解。
槍械系統實現方法
空白菌原本得作品
/scoreboard objectives add explode dummy 創建一個名為explode的變量
高頻
/scoreboard players set @e[type=Arrow] explode 1 {inGround:1b} 給所有落在地上的箭的explode分數設置為1
/execute @e[type=Snowball] ~ ~ ~ kill @e[type=Arrow,r=3] 以雪球殺死周圍半徑3內的所有箭
/execute @e[type=Snowball] ~ ~1 ~ summon Arrow ~ ~ ~ 在雪球上方召喚一只箭
超高頻
/execute @e[type=Snowball] ~ ~ ~ execute @e[type=Arrow,r=3] ~ ~ ~ tp @e[type=Arrow,r=0] @e[type=Snowball,r=3] 把離雪球最近的弓箭傳送到雪球的位置
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ summon Creeper ~ ~ ~ {ignited:1,Fuse:3} 在explode分數為1的箭召喚一只待爆的苦力怕
/kill @e[type=Arrow,score_explode_min=1] 殺死所有explode分數為1的弓箭
如上,順序必須十分嚴謹
而改進是基于上文之上,先是
/scoreboard objectives add quantity dummy 創造一個名為quantity的變量
然后將
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ summon Creeper ~ ~ ~ {ignited:1,Fuse:3} 指令的位置改為
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ effect @p[team=blue,r=1] 7 1 1 在explode分數為1的箭給半徑為1內的藍隊玩家一個1秒的瞬間傷害效果
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ tp @p[team=red] ~ ~ ~ ~ ~-5 在explode分數為1的箭給最近的紅隊玩家角度上調5度(后座力)
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ clear @p[team=red] snowball 1 1 在explode分數為1的箭清除最近紅隊玩家的一個雪球
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ scoreboard players remove @p[team=red] quantity 1 在explode分數為1的箭給最近紅隊玩家的quantity分數減一
然后放一個中繼器(檔數就是換彈速度)
與/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ testfor @p[score_quantity_min=1,team=red](在explode分數為1的箭檢測最近的紅隊玩家是否quantity分數不小于1)構成與門
/execute @e[type=Arrow,score_explode_min=1] ~ ~ ~ give @p[team=red] snowball 1 1 在explode分數為1的箭給予最近紅隊玩家一個雪球
而彈夾更是簡單
/scoreboard objectives add 20 dummy 創造一個20的變量
/scoreboard objectives add number dummy 創造一個名為number的變量
/scoreboard objectives add quantity2 dummy 創造一個名為quantity2的變量
然后設置進入服務器就觸發:/scoreboard players add @a number 1 給所有玩家的number分數加1
然后/scoreboard players set @a 20 20 給所有玩家的20變量設置為20
高頻
/testfor @p[score_number_min=x,ccore_number=x] {SelectedItemSlot:5} 檢測number分數為x的玩家是否選中6號物品欄(x為任意數字,或者用tellraw,不過我不會用這個指令)
-true
/clear @p[score_number_min=x,ccore_number=x] redstone 1 1 給number分數為x的玩家清除1格紅石(這里的redstone只是代表彈夾,任何物品不限)
/scoreboard players operation @p[score_number_min=x,ccore_number=x] 20 -= @p quantity 將玩家的20變量減去quantity變量
/scoreboard players operation @p[score_number_min=x,ccore_number=x] quantity2 -= @p 20 將玩家的quantity2變量減去20變量
/testfor @p[score_number_min=x,ccore_number=x,score_quantity2_min=1] 檢測玩家的quantity2變量是否不小于1
-true
/give @p[score_number_min=x,ccore_number=x] snowball 給玩家一個雪球
/scoreboard players set @p[score_number_min=x,ccore_number=x] quantity 20 將玩家的quantity分數設置為20
/scoreboard players set @a 20 20 給所有玩家的20變量設置為20
熱門評論
最新評論