Beispiel #1
0
    // Use this for initialization
    void Start()
    {
        Planeador = new GoapPlanner();

        maquinaDeEstados    = new FSMGOAP();
        AccionesActuales    = new Queue <GoapAction>();
        AccionesDisponibles = new List <GoapAction>();

        // proveedor de datos del mundo
        goapData = GetComponent <IGOAP>();

        //Crear nuestros estados
        CrearEstadoIdle();
        CrearEstadoActuar();
        CrearEstadoMoverse();

        // empezamos pensando
        maquinaDeEstados.pushState(idleState);

        // Cargar las acciones que puede hacer el agente
        GoapAction[] acciones = GetComponents <GoapAction>();
        foreach (GoapAction a in acciones)
        {
            AccionesDisponibles.Add(a);
        }
    }
Beispiel #2
0
 private void findDataProvider()
 {
     foreach (Component comp in gameObject.GetComponents(typeof(Component)))
     {
         if (typeof(IGOAP).IsAssignableFrom(comp.GetType()))
         {
             dataProvider = (IGOAP)comp;
             return;
         }
     }
 }
 private void FindDataProvider()
 {
     DataProvider = this as IGOAP;
 }