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); } }