Exemple #1
0
    public void Process(object value)
    {
        Card.EffectType[] effectList = new Card.EffectType[1];
        effectList[0] = effect;
        Effect thisEffect = factory.GetEffects(effectList)[0];

        List <GameObject> targets = new List <GameObject>();

        if (targetType == Card.TargetType.None)
        {
            targets = null;
        }
        else if (targetType == Card.TargetType.AllEnemies)
        {
            targets = new List <GameObject>(GameObject.FindGameObjectsWithTag("Enemy"));
        }
        else if (targetType == Card.TargetType.AllPlayers)
        {
            targets = new List <GameObject>(GameObject.FindGameObjectsWithTag("Player"));
        }
        else if (targetType == Card.TargetType.Enemy && ((GameObject)value).tag == "Enemy")
        {
            targets.Add((GameObject)value);
        }
        else if (targetType == Card.TargetType.Player && ((GameObject)value).tag == "Player")
        {
            targets.Add((GameObject)value);
        }
        else if (targetType == Card.TargetType.Any)
        {
            targets.Add((GameObject)value);
        }

        thisEffect.RelicProcess(targets, buff, effectValue, effectDuration);
    }
Exemple #2
0
 public Effect GetEffect(Card.EffectType effectName)
 {
     Card.EffectType[] types = new Card.EffectType[1];
     types[0] = effectName;
     return(GetEffects(types)[0]);
 }