Custom Time Rotors
As of version 5.5.0 you can add custom time rotor models for the TARDIS console.
Custom time rotor models are defined in plugins/TARDIS/custom_time_rotors.yml, an example entry is shown below:
/plugins/TARDIS/custom_time_rotors.yml
classic:
off_custom_model_data: 10000010
animated_material: YELLOW_DYE
animation_sequence: 0,1,2,3,4,5,6,7
frame_rate: 6
Config | Type | Default |
---|---|---|
classic: | ||
off_custom_model_data | number | 10000010 |
Custom model data for the rotor's inventory item and off state model, must be added as a "custom_model_data" predicate in assets/minecraft/models/item/light_gray_dye.json - must be higher than 10000009 | ||
animated_material | string | YELLOW_DYE |
The material of the animated rotor item, animation states will need to be set with "custom_model_data" predicates in assets/minecraft/models/item/[animated_material].json, starting at 1021 . Material must be unique for each rotor, the plugin already uses BLACK_DYE, ORANGE_DYE, BROWN_DYE, GRAY_DYE, CYAN_DYE, LIGHT_BLUE_DYE, BLUE_DYE, WHITE_DYE | ||
animation_sequence | string | 0,1,2,3,4,5,6,7 |
A comma separated list of frame numbers where the number is added to the starting animation frame to get the "custom_model_data" predicate e.g. 1021 + 3 = 1024 | ||
frame_rate | number | 6 |
The animation frame rate in server ticks |
Example model overrides
Inventory item / off state go in light_gray_dye.json:
assets/minecraft/models/item/light_gray_dye.json
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "minecraft:item/light_gray_dye"
},
"overrides": [
# {other predicates}...
{"predicate": {"custom_model_data": 10000010}, "model": "tardis:item/time_rotor/classic/classic_0"}
]
}
Animation states go in yellow_dye.json:
assets/minecraft/models/item/yellow_dye.json
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "minecraft:item/yellow_dye"
},
"overrides": [
# {other predicates}...
{"predicate": {"custom_model_data":1021}, "model": "tardis:item/time_rotor/classic/classic_0"},
{"predicate": {"custom_model_data":1022}, "model": "tardis:item/time_rotor/classic/classic_1"},
{"predicate": {"custom_model_data":1023}, "model": "tardis:item/time_rotor/classic/classic_2"},
{"predicate": {"custom_model_data":1024}, "model": "tardis:item/time_rotor/classic/classic_3"},
{"predicate": {"custom_model_data":1025}, "model": "tardis:item/time_rotor/classic/classic_4"},
{"predicate": {"custom_model_data":1026}, "model": "tardis:item/time_rotor/classic/classic_5"},
{"predicate": {"custom_model_data":1027}, "model": "tardis:item/time_rotor/classic/classic_6"},
{"predicate": {"custom_model_data":1028}, "model": "tardis:item/time_rotor/classic/classic_7"},
# {other predicates}...
]
}
Placing custom rotors
- Craft one and place it - see Adding a time rotor.
- Use tab completion for the
/trecipe
command to see the recipe. - Time rotor recipes are all generic, the plugin generates a recipe from the
animated_material
you specify in the custom time rotor config.