protected override void OnNewTurnTriggered() { if (Caller.Turn && Caller.Face) { Caller.ApplySingleEffect("Health", 1); } }
protected override void OnPlayTriggered() { if (activeCard.Caller == Caller && activeCard.IsAlignmentCard(true)) { Caller.ApplySingleEffect("Stamina", 1); } }
public virtual void PayCost() { Caller.ApplySingleEffect("Stamina", -GetCost.stamina); Caller.ApplySingleEffect("Health", -GetCost.health); if (GetCost.bodyPartDamage.bodyPart != BodyPart.None) { Caller.ApplySingleBodyEffect(GetCost.bodyPartDamage.bodyPart, GetCost.bodyPartDamage.damage); } }
protected override IEnumerator ApplyEffects() { Receiver.IntChoices["ThreeChoices"] = -1; if (Receiver.IsLocalPlayer) { UI.ShowThreeChoices(new string[] { "Hit opponent", "Do nothing", "Draw a card" }); UI.threeChoicesUI.leftChoice.SetActive(Receiver.Alignment <= 0); UI.threeChoicesUI.rightChoice.SetActive(Receiver.Alignment >= 0); } else if (Receiver.AI) { Receiver.IntChoices["ThreeChoices"] = Random.Range(Receiver.Alignment <= 0 ? 0 : 1, Receiver.Alignment >= 0 ? 3 : 2); } while (Receiver.GetIntChoice("ThreeChoices") == -1) { yield return(new WaitForEndOfFrame()); } int choice = Receiver.GetIntChoice("ThreeChoices"); if (choice != 1) { if (choice == 0) { Caller.ApplySingleEffect("Health", -2); } else if (choice == 2) { yield return(Draw(Receiver)); } yield return(Draw(Caller)); } yield return(StartCoroutine(base.ApplyEffects())); }
public void AlignmentChoice() { Caller.ApplySingleEffect("Alignment", Caller.GetIntChoice("AlignmentChoice")); }
public void Rest() { Caller.ApplySingleEffect("Stamina", 1); Caller.ApplySingleEffect("Health", 1); }