41 lines
1.4 KiB
C#
41 lines
1.4 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
|
|
public class AcquireCardsEffect : IBattleEffect
|
|
{
|
|
private int[] cardIds;
|
|
private BattleZone zone;
|
|
private BattleParticipant participant;
|
|
|
|
public AcquireCardsEffect(CardId cardId, BattleZone zone, BattleParticipant participant) {
|
|
Initialize(new int[1] {(int) cardId}, zone, participant);
|
|
}
|
|
|
|
public AcquireCardsEffect(CardId[] cardIds, BattleZone zone, BattleParticipant participant) {
|
|
Initialize(cardIds.Cast<int>().ToArray(), zone, participant);
|
|
}
|
|
|
|
public AcquireCardsEffect(MCardId mCardId, BattleZone zone, BattleParticipant participant) {
|
|
Initialize(new int[1] {(int) mCardId}, zone, participant);
|
|
}
|
|
|
|
public AcquireCardsEffect(MCardId[] mCardIds, BattleZone zone, BattleParticipant participant) {
|
|
Initialize(mCardIds.Cast<int>().ToArray(), zone, participant);
|
|
}
|
|
|
|
private void Initialize(int[] cardIds, BattleZone zone, BattleParticipant participant) {
|
|
this.cardIds = cardIds;
|
|
this.zone = zone;
|
|
this.participant = participant;
|
|
}
|
|
|
|
public void Apply(IBattleEffectResolver resolver) {
|
|
resolver.AcquireCards(this);
|
|
}
|
|
|
|
public int[] CardIds {get => this.cardIds;}
|
|
public BattleZone Zone {get => this.zone;}
|
|
public BattleParticipant Participant {get => this.participant;}
|
|
}
|