Repository navigation
Animation Time Events
Animation Time Events allow animations to execute logic at specific moments during playback.
Every event references a registered event type and supplies the parameters required by that event.
Three scheduling modes are available:
- In Time
- In Period
- In Interval
These events are lists, so you can use multiple events of the same type and multiple types of events, such as 3 In Time + 1 Period Time
In Time
Executes the event exactly once.
0 ────────●──────────────────►
0.35
| Field | Description |
|---|---|
| type | Registered event type |
| side | Client, Server, Both (Client + Server) & local_client |
| start | Execution time |
| params | Event-specific parameters |
"in_time_events": [
{
"type": "fracture_ground",
"side": "client",
"start": 1.25,
"params": {
"edge": [0.0, -0.2, -2.0],
"joint": "Root",
"radius": 2.0,
"pose_time": 1.2
}
}
]Executes continuously while the animation time remains inside a range.
0 ────────████████████────────►
start end
| Field | Description |
|---|---|
| type | Registered event type |
| side | Client, Server, Both (Client + Server) & local_client |
| start | Beginning of the active window |
| end | End of the active window |
| params | Event-specific parameters |
"in_period_events": [
{
"type": "joint_particles",
"side": "client",
"start": 0.0,
"end": 0.2,
"params": {
"joint": "Tool_R",
"particle": "minecraft:crit",
"offsets": [
[-0.3,-0.1,-1.6]
],
"step": 4.0,
"volume":[0.15,0.15,0.15],
"motion":[0,0,0],
"amount":1.2
}
}
]💡 Unlike In Time, the callback may execute repeatedly while the playback time remains inside the interval. This mode is intended for effects that must remain active during part of an animation rather than occurring at a single instant.
Executes the same event repeatedly at fixed intervals.
0 ──●──●──●──●──●────────────►
↑ ↑ ↑ ↑
interval
| Field | Description |
|---|---|
| type | Registered event type |
| side | Client, Server, Both (Client + Server) & local_client |
| start | First execution |
| interval | Time between executions |
| end | Last possible execution |
| params | Event-specific parameters |
"in_interval_time_events": [
{
"type": "joint_particles",
"side": "client",
"start": 0.2,
"interval": 0.01,
"end": 0.3,
"params": {
"joint": "Tool_R",
"particle": "minecraft:dripping_obsidian_tear",
"offsets": [
[0.0, 1.6, 0.0]
],
"step": 0.0,
"volume":[0.0, 0.0, -1.2],
"motion":[0.0, 0.0, 0.0],
"amount": 96.0
}
}
]The scheduling mode is independent of the event implementation. An event such as fracture_ground or a custom third-party event can be scheduled using In Time, In Period, or In Interval without requiring any changes to the event itself. Scheduling is handled entirely by the animation event wrappers, which invoke the registered event according to the selected timing strategy.
EF: Extended Datapacks
📦 Data
🧰 Core
👁️ Visuals
- Zoom Types
- Weapon Models per Style
- Advanced Swing Trails
- Weapons Passive Particles
- Shader Effects I
- Shader Effects II
- Shader Effects III
⚔️ Combat
🗝️ Skill Builder
🛠️ Innate Builder
- Simple Innate Skills
- Holdable Innate Skills
- Conditional Innate Skills
- Conditional Data Innate Skills
- Conditional Holdable Innate Skills
- Sequential Innate Skills
- Per Combo Innate Skills
- Combo Innate Skills
🗡️ Animation Operations
- Animation Operations
- Animation Properties
⚙️ Third-Party