-- conf/particles.lua
-- copyright (c) 2004-2014 rionix
-- version: 1.00
-- date: 11.02.2014

--
-- default
--

info = 
{
    -- particle system info
    max = 10,
    texture = "part_snow",
    tile_width = 1,
    tile_height = 1,
    -- common emmiter info
    type = 0,
    emmit = 1.0,
    self_destruct = false,
    -- sphere emmiter
    radius = 0.0,
    time_start = 1.0,
    time_end = 2.0,
    size_start = 1.0,
    size_end = 1.0,
    size_aspect = 1.0,
    size_delta = 0.0,
    speed_start = { x = 0.0, y = 0.0, z = 0.0 },
    speed_end = { x = 0.0, y = 0.0, z = 0.0 },
    acceleration = { x = 0.0, y = 0.0, z = 0.0 },
    alpha_only = true,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    angle_start = 0.0,
    angle_end = 0.0,
    angle_speed_start = 0.0,
    angle_speed_end = 0.0,
    -- splash emmiter
    width = 10,
    width_grow = 5
}
addParticlesInfo("default", info)

--
-- fog_light
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_fog_light",
    -- common emmiter info
    emmit = 0.5,
    -- sphere emmiter
    radius = 16.0,
    time_start = 10.0,
    time_end = 11.0,
    size_start = 28.0,
    size_end = 36.0,
    size_delta = 1.0,
    speed_start = { x = -1.0, y = -1.0, z = 0.0 },
    speed_end = { x = 1.0, y = 1.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_start = 0.0,
    angle_end = math.pi * 2,
    angle_speed_start = -0.2,
    angle_speed_end = 0.2
}
addParticlesInfo("fog_light", info)

--
-- fog_medium
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_fog_medium",
    -- common emmiter info
    emmit = 0.5,
    -- sphere emmiter
    radius = 32.0,
    time_start = 10.0,
    time_end = 11.0,
    size_start = 54.0,
    size_end = 64.0,
    size_delta = 1.0,
    speed_start = { x = -2.0, y = -2.0, z = 0.0 },
    speed_end = { x = 2.0, y = 2.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_start = 0.0,
    angle_end = math.pi * 2,
    angle_speed_start = -0.1,
    angle_speed_end = 0.1
}
addParticlesInfo("fog_medium", info)

--
-- fog_high
--

info = 
{
    -- particle system info
    max = 30,
    texture = "part_fog_high",
    -- common emmiter info
    emmit = 1.0,
    -- sphere emmiter
    radius = 48.0,
    time_start = 10.0,
    time_end = 11.0,
    size_start = 48.0,
    size_end = 64.0,
    size_delta = 1.0,
    speed_start = { x = -1.0, y = -1.0, z = 0.0 },
    speed_end = { x = 1.0, y = 1.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_start = 0.0,
    angle_end = math.pi * 2,
    angle_speed_start = -0.2,
    angle_speed_end = 0.2
}
addParticlesInfo("fog_high", info)

--
-- fire
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_fire",
    tile_width = 8,
    tile_height = 4,
    -- common emmiter info
    emmit = 5.0,
    -- sphere emmiter
    time_start = 2.0,
    time_end = 2.5,
    size_start = 10.0,
    size_end = 16.0,
    speed_start = { x = -10.0, y = 25.0, z = 0.0 },
    speed_end = { x = 10.0, y = 30.0, z = 0.0 }
}
addParticlesInfo("fire", info)

--
-- fire_tail
--

info = 
{
    -- particle system info
    max = 75,
    texture = "part_fire",
    tile_width = 8,
    tile_height = 4,
    -- common emmiter info
    emmit = 25.0,
    -- sphere emmiter
    time_start = 2.0,
    time_end = 2.5,
    size_start = 25.0,
    size_end = 30.0,
    size_delta = -10.0,
    speed_start = { x = -20.0, y = -20, z = 0.0 },
    speed_end =   { x =  20.0, y =  20, z = 0.0 }
}
addParticlesInfo("fire_tail", info)

--
-- smoke
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 1.5,
    -- sphere emmiter
    time_start = 5.0,
    time_end = 7.0,
    size_start = 10.0,
    size_end = 15.0,
    size_delta = 2.0,
    speed_start = { x = -1.0, y = 15.0, z = -1.0 },
    speed_end = { x = 1.0, y = 20.0, z = 1.0 },
    alpha_only = false,
    color1 = { x = 0.77, y = 0.77, z = 0.77, w = 0.0 },
    color2 = { x = 0.5, y = 0.5, z = 0.5, w = 1.0 },
    color3 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 },
    angle_speed_start = -0.5,
    angle_speed_end = 0.5
}
addParticlesInfo("smoke", info)

--
-- smoke_tail
--

info = 
{
    -- particle system info
    max = 75,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 10,
    -- sphere emmiter
    time_start = 3.5,
    time_end = 5.0,
    size_start = 30.0,
    size_end = 35.0,
    size_delta = 3.0,
    speed_start = { x = -1.0, y = -1.0, z = -1.0 },
    speed_end = { x = 1.0, y = 1.0, z = 1.0 },
    alpha_only = false,
    color1 = { x = 0.77, y = 0.77, z = 0.77, w = 0.0 },
    color2 = { x = 0.5, y = 0.5, z = 0.5, w = 1.0 },
    color3 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 },
    angle_speed_start = -0.5,
    angle_speed_end = 0.5
}
addParticlesInfo("smoke_tail", info)


--
-- meteor_smoke
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 15,
    self_destruct = true,
    -- sphere emmiter
    radius = 32.0,
    time_start = 2.0,
    time_end = 3.0,
    size_start = 32.0,
    size_end = 64.0,
    size_delta = 3.0,
    speed_start = { x = -5.0, y = -5.0, z = 0.0 },
    speed_end = { x = 5.0, y = 5.0, z = 0.0 },
    alpha_only = true,
    angle_speed_start = -0.5,
    angle_speed_end = 0.5
}
addParticlesInfo("meteor_smoke", info)

--
-- plane_smoke
--

info = 
{
    -- particle system info
    max = 5,
    texture = "part_plane",
    -- common emmiter info
    emmit = 5,
    self_destruct = true,
    -- sphere emmiter
    radius = 12.0,
    time_start = 2.0,
    time_end = 3.0,
    size_start = 16.0,
    size_end = 16.0,
    size_delta = 0.5,
    speed_start = { x = -5.0, y = -5.0, z = 0.0 },
    speed_end = { x = 5.0, y = 5.0, z = 0.0 },
    alpha_only = true
}
addParticlesInfo("plane_smoke", info)

--
-- build_smoke
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 4.0,
    -- sphere emmiter
    radius = 24.0,
    time_start = 1.0,
    time_end = 3.0,
    size_start = 16.0,
    size_end = 24.0,
    size_delta = 8.0,
    speed_start = { x = -1.0, y = -1.0, z = 0.0 },
    speed_end = { x = 1.0, y = 1.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 }
}
addParticlesInfo("build_smoke", info)

--
-- tremble_smoke
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 15,
    self_destruct = true,
    -- sphere emmiter
    radius = 32.0,
    time_start = 5.0,
    time_end = 5.0,
    size_start = 28.0,
    size_end = 32.0,
    size_delta = 4.0,
    speed_start = { x = -10.0, y = -10.0, z = 0.0 },
    speed_end =   { x =  10.0, y =  10.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 0.5, y = 0.5, z = 0.5, w = 0.0 },
    color2 = { x = 0.7, y = 0.7, z = 0.7, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_speed_start = -1.5,
    angle_speed_end = 1.5
}
addParticlesInfo("tremble_smoke", info)

--
-- hard_smoke
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 1.5,
    -- sphere emmiter
    time_start = 5.0,
    time_end = 7.0,
    size_start = 10.0,
    size_end = 15.0,
    size_delta = 2.0,
    speed_start = { x = -1.0, y = -15.0, z = -1.0 },
    speed_end = { x = 1.0, y = -20.0, z = 1.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.2 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_speed_start = -0.5,
    angle_speed_end = 0.5
}
addParticlesInfo("hard_smoke", info)

--
-- offroad_smoke
--

info = 
{
    -- particle system info
    max = 75,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 10,
    -- sphere emmiter
    time_start = 3,
    time_end = 3.5,
    size_start = 20.0,
    size_end = 25.0,
    size_delta = 1.0,
    speed_start = { x = -1.0, y = -1.0, z = -1.0 },
    speed_end = { x = 1.0, y = 1.0, z = 1.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    angle_speed_start = -0.5,
    angle_speed_end = 0.5
}
addParticlesInfo("offroad_smoke", info)


--
-- snow
--

info = 
{
    -- particle system info
    max = 120,
    texture = "part_snow",
    -- common emmiter info
    emmit = 60.0,
    -- sphere emmiter
    radius = 128.0,
    time_start = 1.5,
    time_end = 2.0,
    size_start = 2.0,
    size_end = 3.0,
    speed_start = { x = -25.0, y = -40.0, z = 0.0 },
    speed_end = { x = 25.0, y = -25.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 }
}
addParticlesInfo("snow", info)

--
-- pillar_snow
--

info = 
{
    -- particle system info
    max = 40,
    texture = "part_snow",
    -- common emmiter info
    emmit = 30.0,
    -- sphere emmiter
    radius = 32.0,
    time_start = 1.2,
    time_end = 1.2,
    size_start = 3.0,
    size_end = 4.0,
    speed_start = { x = -5.0, y = -120.0, z = 0.0 },
    speed_end = { x = 5.0, y = -100.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 }
}
addParticlesInfo("pillar_snow", info)

--
-- stars_tail
--

info = 
{
    -- particle system info
    max = 150,
    texture = "part_star_alpha",
    -- common emmiter info
    emmit = 20.0,
    -- sphere emmiter
    radius = 6.0,
    time_start = 3.0,
    time_end = 4.0,
    size_start = 5.0,
    size_end = 6.0,
    size_delta = -0.2,
    speed_start = { x = -3.0, y = -3.0, z = 0.0 },
    speed_end = { x = 3.0, y = -3.0, z = 0.0 },
    angle_speed_start = -1.0,
    angle_speed_end = 1.0
}
addParticlesInfo("stars_tail", info)

--
-- explosion_smoke
--

info = 
{
    -- particle system info
    max = 130,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 30.0,
    -- sphere emmiter
    radius = 24.0,
    time_start = 1.0,
    time_end = 3.0,
    size_start = 16.0,
    size_end = 24.0,
    size_delta = 8.0,
    speed_start = { x = -1.0, y = -1.0, z = 0.0 },
    speed_end = { x = 1.0, y = 1.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 },
    color2 = { x = 1.0, y = 1.0, z = 1.0, w = 1.0 },
    color3 = { x = 1.0, y = 1.0, z = 1.0, w = 0.0 }
}
addParticlesInfo("explosion_smoke", info)

--
-- foam
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_snow",
    -- common emmiter info
    emmit = 3.0,
    -- sphere emmiter
    radius = 0.0,
    time_start = 3.0,
    time_end = 4.0,
    size_start = 8.0,
    size_end = 10.0,
    size_delta = 2.0
}
addParticlesInfo("foam", info)

--
-- screen_ashes
--

info = 
{
    -- common emmiter info
    emmit = 300,
    -- sphere emmiter
    radius = 512.0,
    time_start = 3.5,
    time_end = 5.0,
    size_start = 2,
    size_end = 3,
    size_aspect = 1.0,
    alpha_only = false,
    color1 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 },
    color2 = { x = 0.0, y = 0.0, z = 0.0, w = 1.0 },
    color3 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 },
    speed_start = { x = -20, y = -60, z = 0.0 },
    speed_end = { x = 20, y = -80, z = 0.0 }
}
addParticlesInfo("screen_ashes", info)


--
-- screen_snow
--

info = 
{
    -- common emmiter info
    emmit = 300.0,
    -- sphere emmiter
    radius = 512.0,
    time_start = 1.5,
    time_end = 2.0,
    size_start = 3.0,
    size_end = 4.0,
    speed_start = { x = -50, y = -80, z = 0.0 },
    speed_end = { x = 50, y = -50, z = 0.0 },
    angle_start = 0,
    angle_end = math.pi * 2,
    angle_speed_start = -1,
    angle_speed_end = 1
}
addParticlesInfo("screen_snow", info)

--
-- screen_rain
--

rain_dx = -105.0;
rain_dy = -660.0;
rain_length = math.sqrt(rain_dx * rain_dx + rain_dy * rain_dy)
rain_nx = rain_dx / rain_length;
rain_ny = rain_dy / rain_length;
rain_angle = math.atan2(rain_ny, rain_nx)

info = 
{
    -- common emmiter info
    emmit = 300,
    -- sphere emmiter
    radius = 512.0,
    time_start = 1.5,
    time_end = 2.0,
    size_start = 0.7,
    size_end = 0.7,
    size_aspect = 100.0,
    speed_start = { x = rain_dx + 5, y = rain_dy + 30, z = 0.0 },
    speed_end = { x = rain_dx - 5, y = rain_dy - 30, z = 0.0 },
    angle_start = rain_angle,
    angle_end = rain_angle
}
addParticlesInfo("screen_rain", info)


--
-- fly_tail
--

info = 
{
    -- common emmiter info
    emmit = 45.0,
    -- sphere emmiter
    radius = 12.0,
    time_start = 3.0,
    time_end = 5.0,
    size_start = 4.0,
    size_end = 8.0,
    size_delta = -0.2,
    speed_start = { x = -5.0, y = -5.0, z = 0.0 },
    speed_end = { x = 5.0, y = 5.0, z = 0.0 },
    acceleration = { x = 0.0, y = -7.0, z = 0.0 }
}
addParticlesInfo("fly_tail", info)

--
-- star_spark
--

info = 
{
    self_destruct = true,
    -- sphere emmiter
    time_start = 2.0,
    time_end = 4.0,
    size_start = 2.0,
    size_end = 8.0,
    size_delta = -0.5,
    speed_start = { x = -20.0, y = -20.0, z = 0.0 },
    speed_end = { x = 20.0, y = 20.0, z = 0.0 },
    acceleration = { x = 0.0, y = -15.0, z = 0.0 },
    alpha_only = false,
    color3 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 }
}
addParticlesInfo("star_spark", info)

--
-- sunshine
--

info = 
{
    -- common emmiter info
    type = 1,
    emmit = 0.8,
    -- sphere emmiter
    time_start = 5.0,
    time_end = 8.0,
    angle_start = 3 * math.pi / 2,
    angle_end = math.pi * 2,
    angle_speed_start = -math.pi / 198.0,
    angle_speed_end = math.pi / 198.0,
    -- splash emmiter
    width = 32,
    width_grow = 8
}
addParticlesInfo("sunshine", info)

--
-- vulcano
--

info = 
{
    -- particle system info
    max = 15,
    texture = "part_smoke",
    -- common emmiter info
    emmit = 1,
    -- sphere emmiter
    time_start = 7.0,
    time_end = 10.0,
    size_start = 10.0,
    size_end = 15.0,
    size_delta = 4.0,
    speed_start = { x = 6.0, y = 6.0, z = 0.0 },
    speed_end = { x = 8.0, y = 8.0, z = 0.0 },
    alpha_only = false,
    color1 = { x = 0.77, y = 0.77, z = 0.77, w = 0.0 },
    color2 = { x = 0.5, y = 0.5, z = 0.5, w = 1.0 },
    color3 = { x = 0.0, y = 0.0, z = 0.0, w = 0.0 },
    angle_speed_start = -0.2,
    angle_speed_end = 0.2
}
addParticlesInfo("vulcano", info)

--
-- oil
--

info = 
{
    -- particle system info
    max = 150,
    texture = "part_oil",
    -- common emmiter info
    emmit = 20,
    -- sphere emmiter
    time_start = 5.5,
    time_end = 6.0,
    size_start = 4.0,
    size_end = 5.0,
    size_delta = -0.7,
    speed_start = { x = -8.0, y = 60.0, z = -8.0 },
    speed_end = { x = 8.0, y = 70.0, z = 8.0 },
    acceleration = { x = 0.0, y = -25, z = 0.0 },
    alpha_only = true
}
addParticlesInfo("oil", info)

info = nil
