大家好。今天教大家如何用指令方块探测物品展示框以及里面的物品。次教程比较简单,就不多详细说了。这个可以探测物品展示栏里面的物品,转位,方位,物品展示栏的方位等等。做冒险地图时可以做成一个物品旋转锁什么。
()()()()()()()---\\--分割线--//---()()()()()()()
首先是探测游戏地图里有没有物品展示栏。指令:
- /testfor @e[type=ItemFrame]
之后教大家探测物品展示栏的XYZ坐标。如果在一个世界里有很多物品展示栏的话,那么上一条指令就没什么用了,因为并没有加入是哪一个物品展示栏。要区分物品展示栏的办法是加入物品展示栏的XYZ坐标。指令:
- testfor @e[type=ItemFrame]
- {TileX:-430,TileY:5,TileZ:126}
之后是如何探测物品展示栏方的方位。大家知道,物品展示栏可以放在一个方块的4面,所以探测物品展示栏的面向方位也很重要。指令:
- testfor @e[type=ItemFrame]
- {TileX:-430,TileY:5,TileZ:126,Facing:3b}
0b - 面向南边(South)
1b - 面向西边 (West)
2b - 面向北边 (North)
3b - 面向东边 (East)
之后来教大家如何探测物品展示栏里的物品。指令:
- testfor @e[type=ItemFrame]
- {TileX:-430,TileY:5,TileZ:126,Facing:2b,ItemRotation:7b,Item:{id:"minecraft:diamond_sword",tag:{display:{Name:"TestSword"}}}}
ItemRotation: 后面写0b-7b。意思是物品展示栏里的物品转位。自从1.8更新后,物品展示栏可以转动里面的物品8次了。注意:b是单位,一定要加。0b是默认转位,然后每次转位一下数值就+1。
Item: 物品属性。在Item后面的{}括号里的NBT都和物品有关。这个我就不多说了,和/give什么差不多。id:物品的id。这里写的minecraft:diamond_sword就是钻石剑的意思。后面的tag:{display:{Name:"TestSword"}}的意思就是增对物品名字进行探测,探测一个叫“TestSword”的物品。
所以指令最后结合起来就是探测一个在-430,5,126位置上的一个朝向北边的物品展示栏。里面的物品是一个名字叫“TestSword”的钻石剑,转动了7下。这个也是制作物品转位锁的方法。
()()()()()()()---\\--分割线--//---()()()()()()()
之后来说下地图。地图放在物品展示栏里面和其他物品与众不同,因为物品可以转动8下,而地图只可以转动4下。但是在探测时,地图的方位还是0b-7b,而不是0b-4b。因为地图的一个转位有2个数值在控制。讲解:
首先是0b,也就是地图刚放上去默认的样子。这时候的地图方位是0b。当转动一下后,地图的方位变成了1b。于是大家可以再转动3下地图,把地图的方位重新转回刚才的0b的样子,但是此时的地图已经不是0b了,而变成了4b。所以,地图可以转动4次,但是却有8个数值在控制。结论是:
当地图刚放去后:方位是0b。转动4下后重新回到0b状态,此时数值变成了4b。
转动一下后:变成1b,如果转动4下后,数值会变成5b。
以此类推,所以地图的唯一难点就是地图只能转4次,但是数值有8个。所以第一次转4次是0b-3b,第二次是4b-7b。
=============END===============