public virtual void OnUseCard(PFTable.Card card, APFCharacter target) { if (card != null) { if (card.shield > 0) { int newShieldVal = Shield + card.shield; SetShieldValue(newShieldVal); } if (card.statusIcon != PFTable.Card.StatusIcon.None) { APFStatusIconUI statusIcon = GetStatusIcon(card.statusIcon); if (statusIcon == null) { AddStatusIcon(card.statusIcon, card.statusKeepTurnCount); } else { int newStatusKeepTurnCount = statusIcon.GetStatusKeepTurnCount() + card.statusKeepTurnCount; statusIcon.SetStatusKeepTurnCount(newStatusKeepTurnCount); } } if (card.statusIcon_target != PFTable.Card.StatusIcon.None) { APFStatusIconUI statusIcon = target.GetStatusIcon(card.statusIcon_target); if (statusIcon == null) { target.AddStatusIcon(card.statusIcon_target, card.statusKeepTurnCount); } else { int newStatusKeepTurnCount = statusIcon.GetStatusKeepTurnCount() + card.statusKeepTurnCount; statusIcon.SetStatusKeepTurnCount(newStatusKeepTurnCount); } } } }