Beispiel #1
0
    // Use this for initialization
    void Start()
    {
        search            = GetSearchAlgorithm(); //
        TargetOptmisation = GetOptimisationAlgorithm();
        targets           = null;



        //Node start_pos = GridMap.instance.NodeFromWorldPoint (transform.position);
        //transform.position = start_pos.worldPosition + new Vector3(0f,0.5f,0f);

        currentCost      = 0;
        moveToNext       = false;
        isMoving         = false;
        costsNotComputed = true;
        isAtTarget       = false;

        gameObject.GetComponent <Renderer> ().material.color = agentColor;

        getCostTable();

        Debug.Log("Done");

        TargetOptmisation.setDistanceMatrix(dMatrix);
    }
Beispiel #2
0
    public OptimisationAlgorithm GetOptimisationAlgorithm()
    {
        Component[]           allAlgorithms        = GetComponents <OptimisationAlgorithm>();
        OptimisationAlgorithm firstActiveAlgorithm = null;

        foreach (OptimisationAlgorithm alg in allAlgorithms)
        {
            if (alg.isActiveAndEnabled)
            {
                firstActiveAlgorithm = alg;
                break;
            }
        }
        return(firstActiveAlgorithm);
    }