// A helper function reading a lua subtable of 4 float values.
Color ParticleEffect::_ReadColor(vt_script::ReadScriptDescriptor &particle_script,
                                 const std::string &param_name)
{
    std::vector<float> float_vec;
    particle_script.ReadFloatVector(param_name, float_vec);
    if(float_vec.size() < 4) {
        PRINT_WARNING << "Invalid color read in parameter: " << param_name
                      << " for file: " << particle_script.GetFilename() << std::endl;
        return Color();
    }
    Color new_color(float_vec[0], float_vec[1], float_vec[2], float_vec[3]);

    return new_color;
}