void Start()
    {
        //if(!randomizeLoc)
        //    validateUpdate();
        myDemo = GameObject.FindGameObjectWithTag("Manager").GetComponent <DemoPresentation>(); // FOR PRESENTATION ONLY
        if (myDemo.customAgentloc)
        {
            goal = myDemo.customGoal;
        }
        myGlobalPlanner = GameObject.FindGameObjectWithTag("Manager").GetComponent <GlobalPlanner>();
        pathIndicator   = GameObject.FindGameObjectWithTag("PathIndicator");

        sparks = transform.GetChild(0).gameObject;

        myRenderer = gameObject.GetComponent <Renderer>();
        myColor    = new Color(UnityEngine.Random.Range(0.0f, 1.0f), UnityEngine.Random.Range(0.0f, 1.0f), UnityEngine.Random.Range(0.0f, 1.0f));
        myRenderer.material.SetColor("_Color", myColor);


        Renderer rend = pathIndicator.GetComponent <Renderer>();

        rend.material.SetColor("_Color", new Color(UnityEngine.Random.Range(0.0f, 1.0f), UnityEngine.Random.Range(0.0f, 1.0f), UnityEngine.Random.Range(0.0f, 1.0f)));


        myMotionScript = gameObject.GetComponent <PowerLaw>();

        prePos     = transform.position;
        timer      = Time.time;
        astarTimer = Time.time;
        initializePath(start, goal);


        //path = updateSkipPath();
    }
    void Start()
    {
        //   DestroyAllAgents();
        DestroyAllObstacles();
        DestroyAllFinishedAgents();

        x = 40;
        y = 30;
        myGlobalPlanner = GameObject.FindGameObjectWithTag("Manager").GetComponent <GlobalPlanner>();
        GameObject[] arr = GameObject.FindGameObjectsWithTag("Agent");
        foreach (GameObject go in arr)
        {
            if (!go.GetComponent <Agent>().isObstacle)
            {
                agents.Add(go);
            }
            else
            {
                levelObstacles.Add(go);
            }
        }
    }