public void KeeperLookAt(Vector3 pos)
    {
        NPCShopKeeper nPCShopKeeper = GetNPCShopKeeper();

        if (!(nPCShopKeeper == null))
        {
            nPCShopKeeper.SetAimDirection(Vector3Ex.Direction2D(pos, nPCShopKeeper.transform.position));
        }
    }
    public void KeeperLookAt(Vector3 pos)
    {
        NPCShopKeeper nPCShopKeeper = this.GetNPCShopKeeper();

        if (nPCShopKeeper == null)
        {
            return;
        }
        nPCShopKeeper.SetAimDirection(Vector3Ex.Direction2D(pos, nPCShopKeeper.transform.position));
    }
    public void KeeperLookAt(Vector3 pos)
    {
        NPCShopKeeper npcShopKeeper = this.GetNPCShopKeeper();

        if (Object.op_Equality((Object)npcShopKeeper, (Object)null))
        {
            return;
        }
        npcShopKeeper.SetAimDirection(Vector3Ex.Direction2D(pos, ((Component)npcShopKeeper).get_transform().get_position()));
    }
    public NPCShopKeeper GetNPCShopKeeper()
    {
        List <NPCShopKeeper> list = Pool.GetList <NPCShopKeeper>();

        Vis.Entities <NPCShopKeeper>(base.transform.position, 2f, list, 131072, QueryTriggerInteraction.Collide);
        NPCShopKeeper item = null;

        if (list.Count > 0)
        {
            item = list[0];
        }
        Pool.FreeList <NPCShopKeeper>(ref list);
        return(item);
    }
    public NPCShopKeeper GetNPCShopKeeper()
    {
        List <NPCShopKeeper> obj = Pool.GetList <NPCShopKeeper>();

        Vis.Entities(base.transform.position, 2f, obj, 131072);
        NPCShopKeeper result = null;

        if (obj.Count > 0)
        {
            result = obj[0];
        }
        Pool.FreeList(ref obj);
        return(result);
    }
    public override void CompletePendingOrder()
    {
        Effect.server.Run(this.buyEffect.resourcePath, base.transform.position, Vector3.up, null, false);
        NPCShopKeeper nPCShopKeeper = this.GetNPCShopKeeper();

        if (nPCShopKeeper)
        {
            nPCShopKeeper.SignalBroadcast(BaseEntity.Signal.Gesture, "victory", null);
            if (this.vend_Player != null)
            {
                nPCShopKeeper.SetAimDirection(Vector3Ex.Direction2D(this.vend_Player.transform.position, nPCShopKeeper.transform.position));
            }
        }
        base.CompletePendingOrder();
    }
    public override void CompletePendingOrder()
    {
        Effect.server.Run(this.buyEffect.resourcePath, ((Component)this).get_transform().get_position(), Vector3.get_up(), (Connection)null, false);
        NPCShopKeeper npcShopKeeper = this.GetNPCShopKeeper();

        if (Object.op_Implicit((Object)npcShopKeeper))
        {
            npcShopKeeper.SignalBroadcast(BaseEntity.Signal.Gesture, "victory", (Connection)null);
            if (Object.op_Inequality((Object)this.vend_Player, (Object)null))
            {
                npcShopKeeper.SetAimDirection(Vector3Ex.Direction2D(((Component)this.vend_Player).get_transform().get_position(), ((Component)npcShopKeeper).get_transform().get_position()));
            }
        }
        base.CompletePendingOrder();
    }
    public NPCShopKeeper GetNPCShopKeeper()
    {
        List <NPCShopKeeper> list = (List <NPCShopKeeper>)Pool.GetList <NPCShopKeeper>();

        Vis.Entities <NPCShopKeeper>(((Component)this).get_transform().get_position(), 2f, list, 131072, (QueryTriggerInteraction)2);
        NPCShopKeeper npcShopKeeper = (NPCShopKeeper)null;

        if (list.Count > 0)
        {
            npcShopKeeper = list[0];
        }
        // ISSUE: cast to a reference type
        Pool.FreeList <NPCShopKeeper>((List <M0>&) ref list);
        return(npcShopKeeper);
    }
    public override void CompletePendingOrder()
    {
        Effect.server.Run(buyEffect.resourcePath, base.transform.position, Vector3.up);
        NPCShopKeeper nPCShopKeeper = GetNPCShopKeeper();

        if ((bool)nPCShopKeeper)
        {
            nPCShopKeeper.SignalBroadcast(Signal.Gesture, "victory");
            if (vend_Player != null)
            {
                nPCShopKeeper.SetAimDirection(Vector3Ex.Direction2D(vend_Player.transform.position, nPCShopKeeper.transform.position));
            }
        }
        base.CompletePendingOrder();
    }