查看: 438|回复: 2

[JE 1.21]魔咒效果组件的简单应用-实体爆炸弓 - 教程中心 - Minecraft(我的

[复制链接]
查看: 438|回复: 2

[JE 1.21]魔咒效果组件的简单应用-实体爆炸弓 - 教程中心 - Minecraft(我的

[复制链接]
查看: 438|回复: 2

31

主题

186

回帖

475

积分

中级会员

积分
475
一番星

31

主题

186

回帖

475

积分

中级会员

积分
475
2024-6-5 17:40:21 | 显示全部楼层 |阅读模式 IP:浙江嘉兴 来自 浙江嘉兴


本教程已写在了中文wiki上:https://zh.minecraft.wiki/w/Minecraft_Wiki:%E6%B2%99%E7%9B%92/%E6%95%99%E7%A8%8B/%E9%AD%94%E5%92%92%E6%95%88%E6%9E%9C%E7%BB%84%E4%BB%B6
b站效果视频:

本实例让你学会制作一个射中实体就爆炸的爆炸弓。你也可以通过修改相应的函数来增加更多功能。

首先增加一个test.json魔咒文件:
  1. {
  2.     "anvil_cost": 4,
  3.     "description": {
  4.         "text": "123"
  5.     },
  6.     "effects": {
  7.         "minecraft:projectile_spawned": [
  8.             {
  9.                 "effect": {
  10.                     "type": "minecraft:run_function",
  11.                     "function": "test:test1"
  12.                 }
  13.             }
  14.         ],
  15.         "minecraft:post_attack": [
  16.             {
  17.                 "affected": "victim",
  18.                 "effect": {
  19.                     "type": "minecraft:explode",
  20.                     "block_interaction": "trigger",
  21.                  
  22.                     "knockback_multiplier": {
  23.                         "type": "minecraft:lookup",
  24.                         "fallback": {
  25.                             "type": "minecraft:linear",
  26.                             "base": 1.5,
  27.                             "per_level_above_first": 0.35
  28.                         },
  29.                         "values": [
  30.                             1.2,
  31.                             1.75,
  32.                             2.2
  33.                         ]
  34.                     },
  35.                     "large_particle": {
  36.                         "type": "minecraft:explosion_emitter"
  37.                     },
  38.                     "radius": 3.5,
  39.                     "small_particle": {
  40.                         "type": "minecraft:explosion_emitter"
  41.                     },
  42.                     "sound": "minecraft:block.note_block.banjo"
  43.                 },
  44.                 "enchanted": "attacker"
  45.             },
  46.             {
  47.                 "affected": "victim",
  48.                 "enchanted": "attacker",
  49.                 "effect": {
  50.                     "type": "minecraft:run_function",
  51.                     "function": "test:test"
  52.                 }
  53.             }
  54.         ]
  55.     },
  56.     "max_cost": {
  57.         "base": 50,
  58.         "per_level_above_first": 0
  59.     },
  60.     "max_level": 1,
  61.     "min_cost": {
  62.         "base": 20,
  63.         "per_level_above_first": 0
  64.     },
  65.     "slots": [
  66.         "mainhand"
  67.     ],
  68.     "supported_items": "#minecraft:enchantable/bow",
  69.     "weight": 2
  70. }


然后添加两个函数:
test.mcfunction:
  1. say 我被打了
  2. summon minecraft:area_effect_cloud ~ ~ ~ {Duration:200}
  3. advancement revoke @s only test:test
test1.mcfunction:
  1. say 我被射出去了
  2. summon area_effect_cloud ~ ~ ~ {Tags:["test"],Duration:20,Particle:{type:"minecraft:end_rod"},Radius:2.0}
  3. ride @n[tag=test] mount @s

重新进入世界,将加载以上数据文件。现在使用以下命令给自己一把附魔弓,弓上的魔咒其实就是我们自己添加的{{cd|test}}魔咒:
  1. /give @p bow
  2. /enchant @s test:test

然后你就可以试试弓箭的效果。运行过程中,弓箭刚被射出时将传递弓箭实体本身有关的上下文到test1函数中,弓箭射中实体后将传递有关被射中实体的上下文到test函数中。






来源:https://klpbbs.com/thread-137479-1-1.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

37

主题

223

回帖

560

积分

高级会员

积分
560
月光刻本

37

主题

223

回帖

560

积分

高级会员

积分
560
2024-6-5 20:48:17 | 显示全部楼层 IP:浙江嘉兴 来自 浙江嘉兴
感谢分享
回复 支持 反对

使用道具 举报

32

主题

165

回帖

407

积分

中级会员

积分
407
心动警告

32

主题

165

回帖

407

积分

中级会员

积分
407
2024-6-5 20:59:17 | 显示全部楼层 IP:浙江嘉兴 来自 浙江嘉兴
是时候打破一下良作无人的局面了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|MCBBBS我爱你 | 萌ICP备20249110号

GMT+8, 2025-4-14 14:31 , Processed in 0.143052 second(s), 37 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.