public void DeliverComplete()
        {
            Pickupable pickupable = base.sm.deliveryObject.Get <Pickupable>(base.smi);

            if ((UnityEngine.Object)pickupable == (UnityEngine.Object)null || pickupable.TotalAmount <= 0f)
            {
                if (deliveries.Count > 0 && deliveries[0].chore.amount < PICKUPABLETUNING.MINIMUM_PICKABLE_AMOUNT)
                {
                    Delivery delivery = deliveries[0];
                    Chore    chore    = delivery.chore;
                    delivery.Complete(deliverables);
                    delivery.Cleanup();
                    if (deliveries.Count > 0 && deliveries[0].chore == chore)
                    {
                        deliveries.RemoveAt(0);
                    }
                    GoTo(base.sm.delivering.next);
                }
                else
                {
                    base.smi.GoTo(base.sm.delivering.deliverfail);
                }
            }
            else
            {
                if (deliveries.Count > 0)
                {
                    Delivery delivery2 = deliveries[0];
                    Chore    chore2    = delivery2.chore;
                    delivery2.Complete(deliverables);
                    delivery2.Cleanup();
                    if (deliveries.Count > 0 && deliveries[0].chore == chore2)
                    {
                        deliveries.RemoveAt(0);
                    }
                }
                GoTo(base.sm.delivering.next);
            }
        }