// Use this for initialization
        protected virtual void Start()
        {
            spotLight    = GetComponentInChildren <Light>();
            easing       = ScriptableObject.CreateInstance("EasingProperties") as EasingProperties;
            _audioSource = GetComponent <AudioSource>();
            clips[0]     = Resources.Load(AUDIO_FILE_PATH + ARPEG_1) as AudioClip;
            clips[1]     = Resources.Load(AUDIO_FILE_PATH + ARPEG_2) as AudioClip;

            spotLight.intensity = dimIntensity;
            maxSpeed            = Random.Range(7.0f, 15.0f);
            maxForce            = Random.Range(5.0f, 8.0f);
            visibilityRange     = Random.Range(1.0f, 4.0f);
            m_Rigidbody         = GetComponent <Rigidbody>();
            wanderSpeed         = maxSpeed * 0.5f;
            myManager           = Services.LociManager;
            neighborDistance    = Random.Range(1.0f, 3.0f);
            rotationSpeed       = Random.Range(1.0f, 4.0f);


            idealGroupSize = Random.Range(0, 20);

            colorPalette[0] = new Color(0.337f, 0.467f, 0.78f);
            colorPalette[1] = new Color(0.251f, 0.498f, 0.498f);
            colorPalette[2] = new Color(0.667f, 0.224f, 0.224f);

            int color = Random.Range(0, 10) % 3;

            spotLight.color = colorPalette[color];
            GetComponent <Renderer>().material.color = colorPalette[color];
        }
    // Use this for initialization
    void Start()
    {
        spotLight    = GetComponentInChildren <Light>();
        _rigidbody   = GetComponent <Rigidbody>();
        _audioSource = GetComponent <AudioSource>();
        clip         = Resources.Load(AUDIO_FILE_PATH + MALLETS) as AudioClip;

        spotLight.intensity = dimIntensity;
        easing = ScriptableObject.CreateInstance("EasingProperties") as EasingProperties;
    }