粒子生成器

粒子生成器

添加粒子发生器方块

装饰

关于

ParticleGenerator 是一个主要为建筑玩家和地图制作者创建的 Minecraft 模组。它为游戏添加了粒子生成器方块。

粒子生成器方块具有高度可自定义性,使用它比使用命令方块更加方便高效。它允许你从一个方块生成多个粒子,或设置生成粒子的位置和速度随机化。

使用方法

命令

/pgen show - 显示粒子生成器的边框
/pgen hide - 隐藏粒子生成器的边框
/pgen info - 显示模组信息
/pgen help - 显示帮助信息

粒子生成器方块状态

position=[center(默认)/top/bottom] - 决定粒子生成的位置

粒子生成器 NBT 标签

Particles:[{...}] - 复合标签列表:
  id:"" - 粒子 id
  Motion:[x,y,z] - 粒子速度 [方块/刻](大多数情况下)
  MotionRand:[x,y,z] - "Motion" 值的随机化范围
  PositionOffset:[x,y,z] - 粒子位置的偏移量
  PositionRand:[x,y,z] - 粒子位置的随机化范围
  Interval:int - 粒子之间的间隔 [刻]
  Probability:double - 粒子生成的概率
  ParticleCount:int - 生成时的粒子数量
  ParticleMaxCount:int - 粒子的最大数量
  SignalMin:int - 激活粒子的最小红石信号
  SignalMax:int - 激活粒子的最大红石信号
  AdditionalTags:{} - 附加标签(例如方块 id)
UseAnimateTick:bool - 在 animateTick 时生成粒子

*对于位置和速度,随机值的范围为 val-(rand/2) 到 val+(rand/2)。

*对于粒子数量,随机值的范围为 ParticleCount 到 ParticleMaxCount。

*默认情况下 UseAnimateTick 标签设置为 false。这意味着粒子将尝试每刻生成,其生成速率可以通过 Interval 和 Propability 标签来控制。当设置为 true 时,粒子将在调用 animateTick 方法时尝试生成。这将允许你重现例如火把以及许多其他使用 animateTick 生成粒子的方块的粒子生成速率。

*如果你想生成需要额外方块或物品 ID 的粒子(例如 block 粒子),请添加标签 AdditionalTags:{id:"some_block_id"}。

有用的 Minecraft BlockItem NBT 标签(1.20.5 之前)

BlockStateTag:{...} - 指定方块状态
BlockEntityTag:{...} - 指定方块 NBT 标签

有用的 Minecraft BlockItem 数据组件(1.20.5+)

block_state:{...} - 指定方块状态
block_entity_data:{id:"pgen:particle_generator",...} - 指定方块 NBT 标签

提示

你可以在 https://minecraft.wiki/w/Particles_(Java_Edition) 找到粒子及其 ID 的列表

如果你想复制粒子生成器方块(包含 NBT 数据),请在按下鼠标中键时按住 Ctrl 键。

示例

简单的烟雾粒子生成器

使用 /setblock: /setblock ~ ~ ~ pgen:particle_generator{Particles:[{id:"smoke"}],UseAnimateTick:true}

使用 /give(1.20.5 之前): /give @p pgen:particle_generator{BlockEntityTag:{Particles:[{id:"smoke"}],UseAnimateTick:true}}

使用 /give(1.20.5+): /give @p pgen:particle_generator[block_entity_data={id:"pgen:particle_generator",Particles:[{id:"smoke"}],UseAnimateTick:true}]

类似营火的粒子生成器

使用 /setblock: /setblock ~ ~ ~ pgen:particle_generator[position=bottom]{Particles:[{id:"campfire_cosy_smoke",Motion:[0.0,0.07,0.0],PositionRand:[0.67,0.0,0.67],ParticleCount:2,ParticleMaxCount:3,Probability:0.11}]}

使用 /give(1.20.5 之前): /give @p pgen:particle_generator{BlockStateTag:{position:"bottom"},BlockEntityTag:{Particles:[{id:"campfire_cosy_smoke",Motion:[0.0,0.07,0.0],PositionRand:[0.67,0.0,0.67],ParticleCount:2,ParticleMaxCount:3,Probability:0.11}]}}

使用 /give(1.20.5+): /give @p pgen:particle_generator[block_state={position:bottom},block_entity_data={id:"pgen:particle_generator",Particles:[{id:"campfire_cosy_smoke",Motion:[0.0,0.07,0.0],PositionRand:[0.67,0.0,0.67],ParticleCount:2,ParticleMaxCount:3,Probability:0.11}]}]

你可以通过使用 /pgen help 轻松获取这些命令,并将它们用作模板。