ruhuasiyu
本帖最后由 SHEEP_REALMS 于 2021-10-16 10:59 编辑

指北针
添加了


如何安装
将north_compass.zip north_compass.zip (10.96 KB, 下载次数: 37) 放入存档datapacks文件夹,将north_compass_resources.zip north_compass_resources.zip (112.57 KB, 下载次数: 34) 放入资源包文件夹,进入游戏选择该资源包即可。
备用下载地址: https://github.com/ruhuasiyu/Cra ... apacks/NorthCompass

如何添加更多指北针

参考数据包本身已有的文件,将相应的文字stronghold替换掉即可。
注册物品:在north_compass/loot_tables中添加相应的json文件,例如village_compass.json。
  1. {
  2.         "pools": [
  3.                 {
  4.                         "rolls": 1,
  5.                         "entries": [
  6.                                 {
  7.                                         "type": "item",
  8.                                         "name": "minecraft:carrot_on_a_stick",
  9.                                         "functions": [
  10.                                                 {
  11.                                                         "function": "set_nbt",
  12.                                                         "tag": "{display:{Name:"{\\"translate\\":\\"item.north_compass.village_compass\\"}"},id:"north_compass:village_compass",CustomModelData:10870000,dict:["north_compass"],compassTarget:[0.0d,1.0d],HideFlags:63}"
  13.                                                 },
  14.                                                 {
  15.                                                         "function": "set_attributes",
  16.                                                         "modifiers": [
  17.                                                                 {
  18.                                                                         "name": "mainhand_attackSpeed",
  19.                                                                         "attribute": "generic.attackSpeed",
  20.                                                                         "operation": "addition",
  21.                                                                         "amount": -4,
  22.                                                                         "slot": "mainhand"
  23.                                                                 },
  24.                                                                 {
  25.                                                                         "name": "mainhand_attackSpeed",
  26.                                                                         "attribute": "generic.attackSpeed",
  27.                                                                         "operation": "addition",
  28.                                                                         "amount": -4,
  29.                                                                         "slot": "offhand"
  30.                                                                 }
  31.                                                         ]
  32.                                                 }
  33.                                         ]
  34.                                 }
  35.                         ]
  36.                 }
  37.         ]
  38. }
复制代码
结构地图:在north_compass/loot_tables/map中添加相应的json文件,例如village.json,将"destination": "Stronghold"改为"destination": "Village"。初始化判断:在north_compass/functions/target/main中添加相应的指令,例如
  1. execute as @s[nbt={SelectedItem:{tag:{id:"north_compass:village_compass"}}}] run function north_compass:target/village
复制代码
在north_compass/functions/target/off中添加相应的指令,例如
  1. execute as @s[nbt={Inventory:[{Slot:-106b,tag:{id:"north_compass:village_compass"}}]}] run function north_compass:target/village
复制代码
结构位置获取:在north_compass/functions/target中添加相应的函数文件,例如village.mcfunction。
  1. summon armor_stand ~ ~ ~ {Tags:["village_compass"],NoGravity:1b,Marker:1b}
  2. loot replace entity @e[type=minecraft:armor_stand,tag=village_compass,distance=..1,limit=1] weapon.mainhand loot north_compass:map/village
  3. execute store result score #targX NCface run data get entity @e[type=minecraft:armor_stand,tag=village_compass,distance=..1,limit=1] HandItems[0].tag.Decorations[0].x
  4. execute store result score #targZ NCface run data get entity @e[type=minecraft:armor_stand,tag=village_compass,distance=..1,limit=1] HandItems[0].tag.Decorations[0].z
  5. kill @e[type=minecraft:armor_stand,tag=village_compass,distance=..1,limit=1]
复制代码
合成:在north_compass/functions/tick中追加相应的指令,例如
  1. execute as @e[type=item,nbt={Item:{id:"minecraft:compass",Count:1b}}] at @s if entity @e[type=item,nbt={Item:{id:"minecraft:emerald",Count:1b}},distance=..1] run function north_compass:craft/village_compass
复制代码
在north_compass/functions/craft中添加相应的函数文件,例如village_compass.mcfunction。
  1. kill @s
  2. kill @e[type=item,nbt={Item:{id:"minecraft:ender_eye",Count:1b}},distance=..1,sort=nearest,limit=1]
  3. loot spawn ~ ~ ~ loot north_compass:stronghold_compass
复制代码
最后在资源包中assets/lang中添加相应的翻译文本即可。


v1.2  2019/07/24



来自群组: Nuclear Fusion

可还行(下次是不是吧指东(西)针做出来的呀)

Jokey_钥匙
当你们亲爱的版主都开始水帖子时.jpg

ruhuasiyu
小星啊啊啊 发表于 2019-7-15 11:21
可还行(下次是不是吧指东(西)针做出来的呀)

有考虑做 指要塞针 指末地城针 之类的东西……

Jokey_钥匙
execute store 可以更改玩家物品的数值?(震撼)
(突然觉得自己好烦( )


BlackCB.
好好的F3不用用什么指北针

爱心魔王FHC
为什么要反其道而行?

127_
。。。明明有f3要他干吗,而且游戏中的东南西北几乎没什么用啊。。。

bckey
我还在寻找水贴的路=-=话说北方。。。用太阳定位不好吗=-=还指北针
日出不就是东方啊

ruhuasiyu
印花机ice 发表于 2019-7-15 13:02
。。。明明有f3要他干吗,而且游戏中的东南西北几乎没什么用啊。。。

硬核生存都是没有F3指路的……

丢人素学姐
太水了,举报!(指明要玄素处理

独孤粽
加铁改方向可还行[手动滑稽]
指末地岂不是要末影眼

svasrd
指死亡点如何

MineCrocodile
dict这个nbttag是为了方便选择?

ruhuasiyu
MineCrocodile 发表于 2019-7-16 07:39
dict这个nbttag是为了方便选择?

是,也是为了方便其它人调用该类物品

MineCrocodile
ruhuasiyu 发表于 2019-7-16 08:36
是,也是为了方便其它人调用该类物品

谢谢,最近刚好遇到这个问题,不知道还能用这个,之前自己用HideFlags来标记的,感觉不靠谱

ruhuasiyu
MineCrocodile 发表于 2019-7-16 10:59
谢谢,最近刚好遇到这个问题,不知道还能用这个,之前自己用HideFlags来标记的,感觉不靠谱 ...

你可以看下这个 https://www.mcmod.cn/post/927.html
我们希望能够统一下语法方便互相调用

MineCrocodile
ruhuasiyu 发表于 2019-7-16 11:07
你可以看下这个 https://www.mcmod.cn/post/927.html
我们希望能够统一下语法方便互相调用 ...

挺好的,以后就这么用

玄素
ruhuasiyu 发表于 2019-7-15 14:59
硬核生存都是没有F3指路的……

硬核生存就算屏蔽了f3坐标显示 也能从区块内坐标中获取有效的方向信息(小声

无敌啦呵呵
大佬,可以通过数据包来实现含水基岩吗?

bckey
硬核生存有没有太阳啊。。。。日出东方啊。。。。天啊。。。。作者你搭理我一下好不好。、

bckey
bckey 发表于 2019-7-17 13:25
硬核生存有没有太阳啊。。。。日出东方啊。。。。天啊。。。。作者你搭理我一下好不好。、 ...

哈哈哈=-=

bckey
我给你讲, 我刚刚发帖讲怎么看东西南北,然后你就发这个帖哈哈哈xswl,不过我没什么人气也不会搞题目,应该是凉了

691183313
非常好非常好非常好非常好非常好非常好非常好非常好非常好非常好非常好非常好

buhuichongfu
ruhuasiyu 发表于 2019-7-15 11:25
有考虑做 指要塞针 指末地城针 之类的东西……

指凋零骷髅针  怎么样?
这东西找起来不容易,突然遇到又吓得掉了鼠标……

ruhuasiyu
buhuichongfu 发表于 2019-8-10 21:30
指凋零骷髅针  怎么样?
这东西找起来不容易,突然遇到又吓得掉了鼠标…… ...

可以啊,直接把里面的坐标改成最近的凋零骷髅坐标即可,你还可以添加诸如显示距离的功能。

buhuichongfu
你厉害,拿着这个就是茅山道士了!
(不过真希望你能考虑一下我之前说过的一个想法,就是类似《一小时人生》的那个想法。当然没兴趣或没精力就当我没说吧……)

buhuichongfu
FHC红石 发表于 2019-7-15 13:01
为什么要反其道而行?

没有吧,“指南针”指床不指南,应该叫指床针。

深绿世界X
小星啊啊啊 发表于 2019-7-15 11:21
可还行(下次是不是吧指东(西)针做出来的呀)

北都知道了这些还判断不出来么

深绿世界X
其实我建议增加一个合成配方,就像更多合成一样

AppleCarrot
MineCrocodile 发表于 2019-7-16 07:39
dict这个nbttag是为了方便选择?

这是为了方便整合