public void Execute() { var times = Math.Max(1, multiplicity); for (var i = 0; i < times; i++) { if (UnityEngine.Random.value > successRate) { continue; } if (!LaneManager.instance.enemySlots.anyOpenSlots) { return; } var cardModel = prototype.Instantiate(); var card = GameObject.Instantiate <Card>(Enemy.instance.cardPrefab); card.transform.position = Enemy.instance.playOrigin.transform.position; card.SetOwner(Owner.Enemy); card.SetCardModel(cardModel); var desiredSlot = GetDesiredSlot(); card.Play(desiredSlot); } }
public void Init() { if (startingCards == null) { startingCards = new List <CardPrototype>(); } for (var i = 0; i < startingCards.Count; i++) { CardPrototype card = startingCards[i]; DeckController.instance.PutOnTop(card.Instantiate()); } DeckController.instance.Shuffle(); }
public void PlayCard() { if (!LaneManager.instance.enemySlots.anyOpenSlots) { return; } var cardModel = cardPrototype.Instantiate(); var card = GameObject.Instantiate <Card>(cardPrefab); card.transform.position = playOrigin.transform.position; card.SetOwner(Owner.Enemy); card.SetCardModel(cardModel); card.Play(); }