{
    "format_version": "1.10.0",
    "particle_effect": {
        "description": {
            "identifier": "oct_spcrs:speed_lines",
            "basic_render_parameters": {
                "material": "particles_blend",
                "texture": "textures/octovon/spcrs/particles/speed_line"
            }
        },
        "curves": {
            "variable.line_length": {
                "type": "catmull_rom",
                "input": "v.particle_age",
                "horizontal_range": "v.particle_lifetime",
                "nodes": [
                    0,
                    0.16,
                    1,
                    0.22,
                    0
                ]
            }
        },
        "components": {
            "minecraft:emitter_initialization": {
                "creation_expression": "v.is_boosting = (t.is_boosting ?? 0);v.line_init_speed = v.is_boosting ? 35 : 30;v.line_acc_speed = 0;v.radius = 2;v.cone_spread = v.is_boosting ? 0.4 : 0.25;v.line_life = 0.25;v.arc = 220;v.arc_offset = -v.arc/2;v.max_alpha = v.is_boosting ? 0.6 : 0.25;v.line_length_max = 2;v.line_width = v.is_boosting ? 0.2 : 0.1;"
            },
            "minecraft:emitter_rate_steady": {
                "spawn_rate": "v.is_boosting ? 60 : 30",
                "max_particles": 100
            },
            "minecraft:emitter_lifetime_once": {
                "active_time": 0.5
            },
            "minecraft:emitter_shape_point": {
                "offset": [
                    "v.radius*-math.sin(v.arc_offset+v.arc*v.particle_random_1)",
                    0,
                    "v.radius*math.cos(v.arc_offset+v.arc*v.particle_random_1)"
                ],
                "direction": [
                    "0-math.sin(v.arc_offset+v.arc*v.particle_random_1)*v.cone_spread",
                    1,
                    "0+math.cos(v.arc_offset+v.arc*v.particle_random_1)*v.cone_spread"
                ]
            },
            "minecraft:particle_lifetime_expression": {
                "max_lifetime": "v.line_life"
            },
            "minecraft:particle_initial_spin": {
                "rotation": 90
            },
            "minecraft:particle_initial_speed": "v.line_init_speed",
            "minecraft:particle_motion_dynamic": {
                "linear_acceleration": [
                    0,
                    "v.line_acc_speed",
                    0
                ]
            },
            "minecraft:particle_appearance_billboard": {
                "size": [
                    "v.line_width",
                    "v.line_length * v.line_length_max"
                ],
                "facing_camera_mode": "lookat_direction",
                "uv": {
                    "texture_width": 16,
                    "texture_height": 16,
                    "uv": [
                        0,
                        0
                    ],
                    "uv_size": [
                        16,
                        16
                    ]
                }
            },
            "minecraft:particle_appearance_tinting": {
                "color": [
                    1,
                    1,
                    1,
                    "variable.line_length * v.max_alpha"
                ]
            }
        }
    }
}