-
Notifications
You must be signed in to change notification settings - Fork 30
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update entity_sensor's schema to 1.20.60 (#203)
* Update entity_sensor's schema to 1.20.60 * Add cooldown field
- Loading branch information
Showing
1 changed file
with
89 additions
and
47 deletions.
There are no files selected for viewing
136 changes: 89 additions & 47 deletions
136
source/behavior/entities/format/components/entity_sensor.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,57 +1,99 @@ | ||
{ | ||
"$id": "blockception.minecraft.behavior.entities.minecraft.entity_sensor", | ||
"definitions": { | ||
"sensor_element": { | ||
"type": "object", | ||
"title": "Entity Sensor", | ||
"additionalProperties": false, | ||
"properties": { | ||
"maximum_count": { | ||
"type": "integer", | ||
"default": -1, | ||
"description": "The maximum number of entities that must pass the filter conditions for the event to send.", | ||
"title": "Maximum Count" | ||
}, | ||
"minimum_count": { | ||
"type": "integer", | ||
"default": 1, | ||
"description": "The minimum number of entities that must pass the filter conditions for the event to send.", | ||
"title": "Minimum Count" | ||
}, | ||
"require_all": { | ||
"type": "boolean", | ||
"default": false, | ||
"description": "If true requires all nearby entities to pass the filter conditions for the event to send.", | ||
"title": "Require All" | ||
}, | ||
"sensor_range": { | ||
"type": "number", | ||
"default": 10, | ||
"description": "The maximum distance another entity can be from this and have the filters checked against it.", | ||
"title": "Sensor Range" | ||
}, | ||
"event_filters": { | ||
"$ref": "../../filters/filters.json" | ||
}, | ||
"event": { | ||
"title": "Event", | ||
"description": "event.", | ||
"type": "string" | ||
}, | ||
"cooldown": { | ||
"title": "Cooldown", | ||
"description": "How many seconds should elapse before the subsensor can once again sense for entities. The cooldown is applied on top of the base 1 tick (0.05 seconds) delay. Negative values will result in no cooldown being used.", | ||
"type": "number", | ||
"default": -1 | ||
} | ||
}, | ||
"examples": [ | ||
{ | ||
"maximum_count": -1, | ||
"minimum_count": 1, | ||
"require_all": false, | ||
"sensor_range": 10, | ||
"event": "example" | ||
} | ||
] | ||
} | ||
}, | ||
"type": "object", | ||
"title": "Entity Sensor", | ||
"description": "A component that fires an event when a set of conditions are met by other entities within the defined range.", | ||
"additionalProperties": false, | ||
"properties": { | ||
"maximum_count": { | ||
"type": "integer", | ||
"default": -1, | ||
"description": "The maximum number of entities that must pass the filter conditions for the event to send.", | ||
"title": "Maximum Count" | ||
}, | ||
"minimum_count": { | ||
"type": "integer", | ||
"default": 1, | ||
"description": "The minimum number of entities that must pass the filter conditions for the event to send.", | ||
"title": "Minimum Count" | ||
}, | ||
"relative_range": { | ||
"type": "boolean", | ||
"default": true, | ||
"description": "If true the sensor range is additive on top of the entity's size.", | ||
"title": "Relative Range" | ||
}, | ||
"require_all": { | ||
"type": "boolean", | ||
"default": false, | ||
"description": "If true requires all nearby entities to pass the filter conditions for the event to send.", | ||
"title": "Require All" | ||
}, | ||
"sensor_range": { | ||
"type": "number", | ||
"default": 10, | ||
"description": "The maximum distance another entity can be from this and have the filters checked against it.", | ||
"title": "Sensor Range" | ||
}, | ||
"event_filters": { | ||
"$ref": "../../filters/filters.json" | ||
"oneOf": [ | ||
{ | ||
"allOf": [ | ||
{ | ||
"$ref": "#/definitions/sensor_element" | ||
}, | ||
{ | ||
"properties": { | ||
"relative_range": { | ||
"type": "boolean", | ||
"default": true, | ||
"description": "If true the sensor range is additive on top of the entity's size.", | ||
"title": "Relative Range" | ||
} | ||
} | ||
} | ||
] | ||
}, | ||
"event": { | ||
"title": "Event", | ||
"description": "event.", | ||
"type": "string" | ||
} | ||
}, | ||
"examples": [ | ||
{ | ||
"maximum_count": -1, | ||
"minimum_count": 1, | ||
"relative_range": true, | ||
"require_all": false, | ||
"sensor_range": 10, | ||
"event": "example" | ||
"properties": { | ||
"subsensors": { | ||
"type": "array", | ||
"title": "Subsensors", | ||
"description": "The list of subsensors.", | ||
"items": { | ||
"$ref": "#/definitions/sensor_element" | ||
} | ||
}, | ||
"relative_range": { | ||
"type": "boolean", | ||
"default": true, | ||
"description": "If true the sensor range is additive on top of the entity's size.", | ||
"title": "Relative Range" | ||
} | ||
} | ||
} | ||
] | ||
} |