public void DealDrawnCard(Action callback) { if (Combat.CurrentCriticalHitCard != null) { DamageCards.Add(Combat.CurrentCriticalHitCard); Combat.CurrentCriticalHitCard.Assign( Host, delegate { Host.CallHullValueIsDecreased(callback); } ); } else { callback(); } }