Overview
minecraft:angry is an entity component: it goes in the components object of a custom mob, or in one of its component groups. Puts the entity in an angry mood for a set time, and can spread that anger to nearby mobs of the same kind, like zombified piglins.
Fields
| Field | Type | Default | Description |
|---|---|---|---|
angry_sound | String | none | Sound event played every so often while the mob is angry. |
broadcast_anger | Boolean | "false" | If true, nearby mobs of the same type get angry too. |
broadcast_anger_on_attack | Boolean | "false" | If true, nearby mobs of the same type get angry each time this mob attacks. |
broadcast_anger_on_being_attacked | Boolean | "false" | If true, nearby mobs of the same type get angry when this mob is hit. |
broadcast_anger_when_dying | Boolean | "true" | Set to false so the mob does not spread its anger when it dies. |
broadcast_filters | Minecraft Filter | none | Conditions that nearby mobs must pass to receive the anger. |
broadcast_range | Integer | "20" | How many blocks away the anger can spread. |
broadcast_targets | List | none | Families of mobs that can be made angry by this one. |
calm_event | String | none | Event that fires when the anger timer runs out. |
duration | Integer | "25" | How many seconds the anger lasts. |
duration_delta | Integer | "0" | A random number of seconds, up to this much, added to or taken from the duration. |
filters | Minecraft Filter | none | Mobs that pass this filter are not attacked while angry, useful for sparing allies. |
sound_interval | Range [a, b] | "0" | Random wait range in seconds between angry sounds. |
Example
Inside the components object of BP/entities/<name>.json (values are the defaults or placeholders):
BP/entities/<name>.json
{
"minecraft:angry": {
"angry_sound": "",
"broadcast_anger": "false",
"broadcast_anger_on_attack": "false",
"broadcast_anger_on_being_attacked": "false",
"broadcast_anger_when_dying": "true",
"broadcast_filters": {},
"broadcast_range": "20",
"broadcast_targets": {}
}
}