public void SetSelectionPrompt(CardEffectDescription effectDescription, int index = -1) { if (selectingTextPrompt != null) { if (effectDescription != null) { string selectMessage = ((index < 0) ? "" : "<sprite=" + index + "> "); selectMessage += effectDescription.CardText(); /* * selectMessage += "Select "; * if (effectDescription.targettingType.targettingType != TargettingType.EXCEPT) * { * selectMessage += effectDescription.targettingType.CardText() + " that "; * } * else * { * ExceptTargetDescription exceptDesc = effectDescription.targettingType as ExceptTargetDescription; * ITargettingDescription targetDesc = exceptDesc.targetDescription; * * selectMessage += exceptDesc.targetDescription.CardText() + " that " + (targetDesc.RequiresPluralEffect() ? "does not " : "do not "); * } * selectMessage += effectDescription.effectType.CardText(effectDescription.targettingType.RequiresPluralEffect()); */ selectingTextPrompt.SetText(selectMessage); selectingTextPrompt.gameObject.SetActive(true); } } }
public void SetData(Targettable entity, Card c, TriggerCondition trigger, Targettable[][] targets = null) { source.cardData = c.cardData.Clone(); source.controller = c.controller; sourceEntity = entity; if (c.cardData.GetImage() && icon) { Sprite[] sprites = Resources.LoadAll <Sprite>(GameConstants.PATHS.CARD_IMAGES + c.cardData.GetImage().name); icon.sprite = sprites[1]; } if (textPrompt != null) { string effectMessage = ""; int targetsIndex = 0; foreach (CardEffectDescription desc in source.cardData.GetEffectsOnTrigger(trigger)) { if (desc.targettingType.RequiresSelection()) { effectMessage += "<sprite=" + targetsIndex + "> "; targetsIndex++; } effectMessage += desc.CardText() + '\n'; } textPrompt.SetText(effectMessage); } triggerCondition = trigger; targetList = targets; if (source.controller.isLocalPlayer) { border.color = allyColor; } else { border.color = enemyColor; } }