Beispiel #1
0
    public static GOAPAction Create(E_GOAPAction type, Agent owner)
    {
        GOAPAction a;

        switch (type)
        {
        case E_GOAPAction.move:
            a = new GOAPActionMove(owner);
            break;

        case E_GOAPAction.gotoPos:
            a = new GOAPActionGoTo(owner);
            break;

        case E_GOAPAction.weaponShow:
            a = new GOAPActionWeaponShow(owner);
            break;

        case E_GOAPAction.weaponHide:
            a = new GOAPActionWeaponHide(owner);
            break;

        default:
            Debug.LogError("GOAPActionFactory -  unknow state " + type);
            return(null);
        }

        a.InitAction();
        return(a);
    }