事件就是玩家执行个动作(破坏方块、放置方块、攻击生物··· ···)
- block_break <--- 破坏方块
- attack <--- 攻击
- kill <--- 击杀
- interact.entity <--- 点击生物
- interact.left <---左键物品
- interact.left_shift <--- Shift + 左键物品
- interact.right <--- 右键物品
- interact.right_shift <--- Shift + 右键物品
- interact_mainhand.left <--- 左键物品
- interact_mainhand.left_shift <--- Shift + 右手右键物品
- interact_mainhand.right <--- 右手右键物品
- interact_mainhand.right_shift <--- Shift + 右手左键物品
- interact_offhand.left <--- 左手左键物品
- interact_offhand.left_shift <--- Shift + 左手左键物品
- interact_offhand.right <--- 左手右键物品
- interact_offhand.right_shift <--- Shift + 左手右键物品
- drop <--- 丢弃
- pickup <--- 捡起
- eat <--- 吃
- drink <--- 喝
- bow_shot <--- 射箭
- gun_shot <--- 射击(枪)
- gun_no_ammo <--- 枪没有弹药
- gun_reload <--- 枪装填弹药
- book_write <--- 写书
- book_read <--- 读书
- fishing_start <--- 抛竿
- fishing_caught <--- 上鱼
- fishing_failed <--- 丢鱼
- fishing_cancel <--- 回杆
- fishing_bite <--- 鱼咬勾
- fishing_in_ground <---在地面上钓鱼
- wear <--- 穿戴
- unwear <--- 取消穿戴
- held <--- 手持
- held_offhand <---副手手持
- unheld <--- 取消手持
- unheld_offhand <--- 副手取消手持
- item_throw <--- 丢弃物品
- item_hit_ground <--- 手持物品点击地面
- item_hit_entity <--- 手持物品攻击生物
- placed_block.interact <--- 方块点击
- placed_block.break <--- 方块破坏
- placed_armorstand.interact <--- 盔甲架原理家具点击
- placed_armorstand.break <--- 盔甲架原理家具破坏
- placed_itemframe.interact <--- 展示框原理家具点击
- placed_itemframe.break <--- 展示框原理家具破坏
- holding_item.player_damaged_by_entity <--- 玩家被持有物品的生物攻击
- holding_item_offhand.player_damaged_by_entity <--- 玩家被副手持有物品的生物攻击
- equipped_armor_item.player_damaged_by_entity <--- 玩家被穿有盔甲的生物攻击
- bucket_empty <--- 倒桶
- bucket_fill <--- 填桶
动作是事件发生时将要执行的任务
- play_sound
- stop_sound
- execute_commands
- play_particle
- shoot_particle
- play_effect
- increment_durability
- decrement_durability
- decrement_usages
- increment_amount
- decrement_amount
- drop_exp
- feed
- replace_properties
- give_item
- replace_near_blocks
- replace_block
- glow_near_blocks
- multiple_break
- potion_effect
- remove_potion_effect
- explosion
- damage_near_entities
- damage_entity_in_sight
- damage_entity
- increment_player_stat
- decrement_player_stat
- cancel
- target_potion_effect
- target_remove_potion_effect
- play_totem_animation
- set_block
- place_furniture
- drop_item
- 播放音效
play_sound:
name: itemsadder:ambient.creepy
volume: 1
pitch: 1
- 停止播放音效
stop_sound:
name: "itemsadder:music_disc.cdk_sunday"
- 执行命令
execute_commands:
first_example:
command: 'tellraw {player} {"text":"wow you did something!","color":"gold"}'
as_console: true
second:
command: 'help'
as_console: false
third:
command: 'give {player} diamond'
as_console: true
- command:具体执行的命令。
- as_console:是否以控制台身份执行。
- 粒子效果
play_particle:
name: "ENCHANTMENT_TABLE"
- 粒子效果的id可以在 Minecraft Wiki 查看。
- 发射粒子效果
shoot_particle:
name: FLAME
distance: 7
- 是否武器、枪,其中 distance 代表距离
- 增加耐久
increment_durability:
amount: 10
- 减少耐久
decrement_durability:
amount: 10
- 增加使用次数
increment_usages:
amount: 1
- 增加物品数量
increment_amount:
amount: 1
- 减少物品数量
decrement_amount:
amount: 1
- 掉落经验值
drop_exp:
chance: 50
min_amount: 1
max_amount: 3
- chance:触发几率。
- min_amount、max_amount:分别为最小值和最大值。
- 食物
feed:
amount: 6
saturation: 2
- 其中,amount 代表饱食度,saturation 代表饱和度。
- 给予物品
give_item:
item: empty_cup
amount: 1
- 掉落物品
drop_item:
item: 2d_furniture
chance: 99.9
max_amount: 3
min_amount: 1
- 播放不死图腾动画
play_totem_animation: animatedtitles:bruh
- 放置方块
set_block:
block: rocks
target: RELATIVE
decrement_amount: true
- block:放置的方块。
- target:放置的对象。
- decrement_amount:放置后是否减少本来的数量。
- 放置家具
place_furniture:
furniture: furniture
decrement_amount: true
- 给予自身药水
potion_effect:
type: UNLUCK
duration: 100
amplifier: 0
- type:药水的类型。
- duration:药水的时长。
- amplifier:药水的等级。
- 移除自身药水
remove_potion_effect:
type: GLOWING
- 给予对象药水
target_potion_effect:
type: GLOWING
duration: 70
amplifier: 15
⚠️ 注意:对象指的是攻击或者解除的实体等- type:药水的类型。
- duration:药水的时长。
- amplifier:药水的等级。
- 移除对象药水
target_remove_potion_effect:
type: GLOWING
22.增加玩家IA属性
increment_player_stat:
name: "itemsadder:mana_bar"
amount: 1
- 减少玩家IA属性
decrement_player_stat:
name: "itemsadder:mana_bar"
amount: 1
- 攻击实体
damage_entity:
damage: 4
- damage:攻击伤害值
- 攻击附近的实体
damage_entity_in_sight:
damage: 4
distance: 7
damage_near_entities:
entity_groups:
- HOSTILE
- PLAYERS
- PASSIVE
damage: 4
range: 7
- entity_groups:实体类型,分布为主动(怪物)、玩家和被动(动物)。
- range、distance:距离。
- 爆炸
multiple_break:
keep_ores: true
drop_all_blocks:
enabled: true
need_silk_touch: true
size: 3
depth: 3
- power:爆炸威力。
- fire:是否着火。
- break_blocks:是否破坏方块。
- 大范围爆炸
multiple_break:
keep_ores: true
drop_all_blocks:
enabled: true
need_silk_touch: true
size: 3
depth: 3
- keep_ores:是否保留矿石不破坏。
- drop_all_blocks:是否掉落所有方块和是否需要精准采集附魔。
- size:破坏的大小。
- depth:破坏的深度。
每个动作都有一个特殊的属性延迟。它是开始动作前的延迟时间(单位为Tick)
items:
chain_events:
display_name: "%#FE5A00%chain_events"
permission: test.chain_events
resource:
material: COAL
generate: true
textures:
- "minecraft:item/diamond.png"
events:
interact:
right:
execute_commands:
cmd1:
command: 'tellraw {player} {"text":"Action 1","color":"gold"}'
as_console: true
delay: 0
cmd2:
command: 'tellraw {player} {"text":"Action 2","color":"gold"}'
as_console: true
delay: 20
cmd3:
command: 'tellraw {player} {"text":"Action 3","color":"gold"}'
as_console: true
delay: 40
play_sound_1:
name: minecraft:block.note_block.banjo
delay: 0
play_sound_2:
name: minecraft:block.note_block.banjo
pitch: 1.2
delay: 20
play_sound_3:
name: minecraft:block.note_block.banjo
pitch: 1.5
delay: 40
执行多一同一任务
play_sound_first:
name: itemsadder:ambient.creepy
volume: 1
pitch: 1
play_sound_second:
name: minecraft:ambient.cave
volume: 1
pitch: 1
play_sound_3:
name: minecraft:ambient.cave
volume: 1
pitch: 1
每个动作都有一个特殊的属性权限。这是玩家在开始行动前必须得到的许可。例如,玩家必须具有myitems.usage.secret_items_dispenser权限才能播放声音。在本例中,您会注意到一个问题。即使用户没有give事件的权限,声音也会播放。那是因为权限检查只针对give_item。
test_block:
display_name: display-name-test_block
permission: test_block
resource:
material: PAPER
generate: true
textures:
- block/test_block.png
specific_properties:
block:
placed_model:
type: REAL_NOTE
break_particles_material: SMITHING_TABLE
events:
placed_block:
interact:
give_item:
permission: "myitems.usage.secret_items_dispenser"
item: DIAMOND
play_sound:
name: itemsadder:ambient.creepy
volume: 1
pitch: 1
为每个动作设置相同的权限如果你想为每个动作设置相同的权限,而不需要复制和粘贴,你可以!使用这个特殊属性all_actions_permission。例如:
test_block:
display_name: display-name-test_block
permission: test_block
resource:
material: PAPER
generate: true
textures:
- block/test_block.png
specific_properties:
block:
placed_model:
type: REAL_NOTE
break_particles_material: SMITHING_TABLE
all_actions_permission: "myitems.usage.secret_items_dispenser"
events:
placed_block:
interact:
give_item:
item: DIAMOND
play_sound:
name: itemsadder:ambient.creepy
volume: 1
pitch: 1
ItemsAdder允许您通过避免在下面几行中解释的某些特定情况下执行操作来进一步定制您的操作。这允许进一步定制您的项目逻辑。例如,你可以创建一个魔杖,它只在一个怪物被成功攻击时播放特定的声音,而在攻击失败时播放另一种声音。
- stop_if_last_success
- 如果上一个操作成功,则不执行此操作和下一个操作。
- stop_if_last_fail
- 如果上一个操作失败,不执行此操作和下一个操作。
- skip_if_last_success
- 如果上一个操作成功,则不执行此操作。
- skip_if_last_fail
- 如果上一个操作失败,则不执行此操作。
- stop_if_any_success
- 如果前面的任何操作成功,则不执行此操作和后续操作。
- stop_if_any_fail
- 如果之前的任何操作失败,则不执行此操作和后续操作。
- skip_if_any_success
- 如果前面的任何操作成功,则不执行此操作。
- skip_if_any_fail
- 如果之前的任何操作失败,则不执行此操作。
- stop_if_success
- 如果特定的上一个操作成功,则不执行此操作和下一个操作。
- stop_if_fail
- 如果特定的上一个操作失败,则不执行此操作和下一个操作。
- skip_if_success
- 如果特定的前一个操作成功,则不执行此操作。
- skip_if_fail
- 如果之前的特定操作失败,则不执行此操作。