-- configuration
-- set these accordingly
right_leds_start = 7
right_num_leds = 42
left_leds_start = 49
left_num_leds = 42
--

max_radius = 10 -- radius is hardcoded in simapi
proxcars = simdata.proxcars -- also hard coded in simapi

rightsideset = false
leftsideset = false

-- right side
litleds = 0
i = 1
while(i <= proxcars and rightsideset == false) do
    if simdata.pd[i].theta > 40 and simdata.pd[i].theta < 130 then
        dist = math.abs(90 - simdata.pd[i].theta)
        perct = (90 - dist)/90
        litleds = math.ceil(perct * right_num_leds)

        color_perct = simdata.pd[i].radius/10
        yellow = math.floor(color_perct * 255)
        local rgb = (255 << 16) | (yellow << 8) | (0 << 0)
        if simdata.pd[1].theta >= 90 then
            -- car is behind
            set_led_range_to_rgb_color(right_leds_start, right_leds_start + litleds, rgb)
        else
            set_led_range_to_rgb_color(right_leds_start + (right_num_leds - litleds), right_leds_start + right_num_leds, rgb)
        end
        rightsideset = true
    end
    i = i + 1
end

-- left side
litleds = 0
i = 1
while(i <= proxcars and leftsideset == false) do
    if simdata.pd[i].theta > 230 and simdata.pd[i].theta < 320 then
        dist = math.abs(270 - simdata.pd[1].theta)
        perct = (90 - dist)/90
        litleds = math.ceil(perct * left_num_leds)

        color_perct = simdata.pd[i].radius/10
        yellow = math.floor(color_perct * 255)
        local rgb = (255 << 16) | (yellow << 8) | (0 << 0)
        if simdata.pd[1].theta <= 270 then
            -- car is behind
            set_led_range_to_rgb_color(left_leds_start, left_leds_start + litleds, rgb)
        else
            set_led_range_to_rgb_color(left_leds_start + (left_num_leds - litleds), left_leds_start + left_num_leds, rgb)
        end
        leftsideset = true
    end
    i = i + 1
end

