我的世界1.9命令方塊教程道具冷卻補(bǔ)給系統(tǒng)制作
小編為大家?guī)?lái)了《我的世界》1.9命令方塊教程道具冷卻補(bǔ)給系統(tǒng)制作,這個(gè)東西非常得好,在pvp中和RPG類(lèi)型的游戲地圖可以為玩家?guī)?lái)不一樣的游戲感受,有興趣的玩家都來(lái)看看吧。
這個(gè)系統(tǒng)的核心只有兩個(gè)字:窮舉
沒(méi)錯(cuò)……其實(shí)就是個(gè)苦力活兒,因?yàn)椴煌牡谰叩睦鋮s時(shí)間不一樣,所以要單獨(dú)計(jì)算時(shí)間。
實(shí)現(xiàn)的功能就是,每種箭上限只有3支,當(dāng)使用了以后,每10秒補(bǔ)給1支。
箭是其中的一個(gè)例子,其實(shí)基本上所有的道具都有類(lèi)似的方法來(lái)制作冷卻補(bǔ)給。
這里,主要給大家講講我的思路……我不知道有沒(méi)有其他人發(fā)過(guò)類(lèi)似的,但我沒(méi)搜到,所以我按我自己的思路來(lái)做。
首先,要判斷使用了箭的方法,毫無(wú)疑問(wèn)需要使用記分板,這是第一步,也是變化最多的一步,為什么這么說(shuō)呢?
因?yàn)橛械牡谰呤侵鲃?dòng)道具,需要你去“使用”它;而有的道具則是投擲型(按Q使用之類(lèi)的),還有的是利用副手的位置等等
在做補(bǔ)給之前,你需要判斷這個(gè)道具是如何使用的,例如我這里是,弓在副手,選中對(duì)應(yīng)的箭拉弓即可,所以我選擇了判斷弓的使用
在貼指令之前,貼一下文中可能用到的簡(jiǎn)寫(xiě)和前綴:
默認(rèn)不加前綴是CCB, Chain Command Block
icb前綴代表是ICB, Impulse Command Block
rcb前綴代表是RCB, Repeating Command Block
init前綴代表該指令只在激活OOC時(shí)執(zhí)行一次
指令的話,肯定是添加記分板了,這里會(huì)把用到的記分板寫(xiě)出來(lái)
init:scoreboard objectives add bowUse stat.useItem.minecraft.bow 使用了弓
init:scoreboard objectives add arrowCoolDown1 dummy 屬性箭1冷卻
init:scoreboard players add @a arrowCoolDown1 0
復(fù)制代碼
bowUse是用于判斷玩家是否使用了弓(箭)
arrowCoolDown1是給屬性箭1用的冷卻時(shí)間記分板
當(dāng)玩家使用了弓、選擇了屬性箭1號(hào)并且冷卻時(shí)間不超過(guò)400刻(20秒)的時(shí)候,添加200刻(10秒)的冷卻時(shí)間
rcb:scoreboard players add @ascore_bowUse_min=1,score_arrowCoolDown1=400] arrowCoolDown1 200 {SelectedItemSlot:1}
復(fù)制代碼
在上圖可以看見(jiàn),屬性箭1實(shí)際上位于2號(hào)快捷欄,在Inventory中,2號(hào)快捷欄的編號(hào)是1(0~8,以此類(lèi)推)
注意到這里的“冷卻時(shí)間不超過(guò)400刻”,為什么要這么設(shè)定呢?這個(gè)問(wèn)題放到后面一些解答。
然后看下一條:
scoreboard players reset @a[tag=archer,score_bowUse_min=1] bowUse
復(fù)制代碼
重置使用弓次數(shù)的記分板,這條沒(méi)什么好說(shuō)吧?不過(guò)注意的是執(zhí)行順序問(wèn)題,就是這個(gè)需要放在比較后面來(lái)執(zhí)行
接下來(lái)就是倒計(jì)時(shí)部分
scoreboard players remove @a[tag=archer,score_arrowCoolDown1_min=0] arrowCoolDown1 1
replaceitem entity @a[score_arrowCoolDown1_min=0,score_arrowCoolDown1=0] slot.hotbar.1 tipped_arrow 3 0 {相關(guān)NBT}
replaceitem entity @a[score_arrowCoolDown1_min=200,score_arrowCoolDown1=200] slot.hotbar.1 tipped_arrow 2 0 {相關(guān)NBT}
replaceitem entity @a[score_arrowCoolDown1_min=400,score_arrowCoolDown1=400] slot.hotbar.1 tipped_arrow 1 0 {相關(guān)NBT}
復(fù)制代碼
解釋一下每一條的意思,首先當(dāng)冷卻大于等于0的時(shí)候,會(huì)自動(dòng)減1——所以,最后的數(shù)字會(huì)停留在-1
前面說(shuō)了,每用一次該道具,冷卻時(shí)間+200刻(10秒),而每10秒需要補(bǔ)一次,上限3支;
于是我們可以簡(jiǎn)單算出來(lái),在倒計(jì)時(shí)到0的時(shí)候替換成3,在倒計(jì)時(shí)到200的時(shí)候替換成2,400的時(shí)候替換成1
超過(guò)400意味著什么?意味著此時(shí)這個(gè)槽位是空的,沒(méi)有那個(gè)道具
那么問(wèn)題來(lái)了,如果這個(gè)時(shí)候選中這個(gè)槽位使用弓,會(huì)怎么樣?
很明顯,冷卻加10秒√
于是就需要設(shè)定,當(dāng)冷卻時(shí)間不超過(guò)400的時(shí)候使用弓,才能加冷卻時(shí)間
以上就是“一個(gè)道具”要用到的指令
……當(dāng)有多個(gè)道具的時(shí)候,就需要設(shè)定多個(gè)記分板(例如我這里有8種屬性箭,所以是arrowCoolDown1,2,3,……,8)
簡(jiǎn)單來(lái)說(shuō),就是前面的指令*8
而我自己在寫(xiě)的時(shí)候,因?yàn)閭(gè)人的一些強(qiáng)迫癥,必須添加顏色黑科技以及防止扔道具誤操作這樣的系統(tǒng),所以最后寫(xiě)出來(lái)的源指令就不短了,大概就是這個(gè)樣子。
- 我的世界手機(jī)版0.14.0紅石比較器使用說(shuō)明大全_mcpe0.14.0如何玩轉(zhuǎn)
- 我的世界手機(jī)版0.14.0紅石比較器脈沖電路怎么做_mcpe0.14.0最小高
- 我的世界手機(jī)版0.14.0紅石中繼器脈沖電路怎么做
- 我的世界手機(jī)版0.14.0中繼器怎么用_mcpe0.14.0中繼器合成
- 我的世界手機(jī)版0.15.0將公布?18號(hào)10點(diǎn)twitch直播地址
- 我的世界1.9pre1預(yù)發(fā)布版更新內(nèi)容一覽_MC1.9預(yù)發(fā)布版pre1下載分享
- 我的世界神秘時(shí)代5教程坩堝合成與詳細(xì)使用說(shuō)明
- 我的世界神秘時(shí)代5教程節(jié)點(diǎn)磁鐵合成與節(jié)點(diǎn)牽引術(shù)說(shuō)明
- 我的世界神秘時(shí)代5教程全圖騰合成與使用說(shuō)明
查看所有0條評(píng)論>>