public override void OnWaveStart() { if (this._owner.faction == Faction.Player) { jade = this._owner.allyCardDetail.AddNewCardToDeck(this._targetID); } }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { unit.bufListDetail.AddBuf(new BattleUnitBuf_ZealLimit()); unit.bufListDetail.AddKeywordBufThisRoundByCard(KeywordBuf.AllPowerUp, 1); unit.personalEgoDetail.RemoveCard(18200006); base.OnUseInstance(unit, self, targetUnit); }
public override void OnUseCard() { base.OnUseCard(); BattleUnitModel victim = this.card.target; if (victim != null) { BattleUnitBuf unitBufPlutoBarrier = new BattleUnitBuf_Barrier() { Pluto = this.card.owner }; victim.bufListDetail.AddBuf(unitBufPlutoBarrier); } List <BattleDiceCardModel> Cardlist = victim.allyCardDetail.GetAllDeck(); BattleDiceCardModel Card = RandomUtil.SelectOne <BattleDiceCardModel>(Cardlist); Cardlist.Remove(Card); Card = this.owner.allyCardDetail.AddNewCard(Card.XmlData.id); Card.SetCurrentCost(0); Card.AddBuf(new Exhaust()); Card = RandomUtil.SelectOne <BattleDiceCardModel>(Cardlist); Card = this.owner.allyCardDetail.AddNewCard(Card.XmlData.id); Card.SetCurrentCost(0); Card.AddBuf(new Exhaust()); }
public override void OnRoundStart() { base.OnRoundStart(); if (this._owner.faction == Faction.Player) { if (this._owner.allyCardDetail.GetHand().Count <= 0 || this._owner.allyCardDetail.GetHand().FindAll(x => x.GetBufList().Exists(y => y is BattleDiceCardBuf_Emotion_Heart)).Count != 0) { return; } BattleDiceCardModel randomCardInHand = RandomUtil.SelectOne <BattleDiceCardModel>(this._owner.allyCardDetail.GetHand()); randomCardInHand.AddBuf(new BattleDiceCardBuf_Emotion_Heart()); randomCardInHand.SetAddedIcon("Latitia_Heart"); } else { count++; if (count >= 2) { count = 0; foreach (BattleUnitModel unit in BattleObjectManager.instance.GetAliveList_opponent(this._owner.faction)) { if (unit.allyCardDetail.GetHand().Count <= 0 || unit.allyCardDetail.GetHand().FindAll(x => !x.GetBufList().Exists(y => y is BattleDiceCardBuf_Emotion_Heart)).Count <= 0) { continue; } BattleDiceCardModel randomCardInHand = RandomUtil.SelectOne <BattleDiceCardModel>(unit.allyCardDetail.GetHand().FindAll(x => !x.GetBufList().Exists(y => y is BattleDiceCardBuf_Emotion_Heart))); randomCardInHand.AddBuf(new Heart_Enemy()); randomCardInHand.SetAddedIcon("Latitia_Heart"); } } } }
public override void OnMakeBreakState(BattleUnitModel target) { base.OnMakeBreakState(target); if (target == null || target == this._owner || this._owner.faction != Faction.Player) { return; } this._owner.battleCardResultLog?.SetCreatureEffectSound("Creature/Scarecrow_Dead"); List <BattleDiceCardModel> battleDiceCardModelList = new List <BattleDiceCardModel>(); switch (this._owner.Book.ClassInfo.RangeType) { case EquipRangeType.Melee: battleDiceCardModelList = target.allyCardDetail.GetAllDeck().FindAll((Predicate <BattleDiceCardModel>)(x => x.GetSpec().Ranged == CardRange.Near)); break; case EquipRangeType.Range: battleDiceCardModelList = target.allyCardDetail.GetAllDeck().FindAll((Predicate <BattleDiceCardModel>)(x => x.GetSpec().Ranged == CardRange.Far)); break; case EquipRangeType.Hybrid: battleDiceCardModelList = target.allyCardDetail.GetAllDeck(); break; } foreach (int index in MathUtil.Combination(2, battleDiceCardModelList.Count)) { BattleDiceCardModel battleDiceCardModel = this._owner.allyCardDetail.AddNewCard(battleDiceCardModelList[index].GetID()); battleDiceCardModel.XmlData.optionList.Add(CardOption.ExhaustOnUse); battleDiceCardModel.SetCurrentCost(battleDiceCardModel.GetOriginCost() - 2); battleDiceCardModel.AddBuf(new BattleDiceCardBuf_scarecrowCreated()); } }
public override void OnStartBattle() { base.OnStartBattle(); if (DefenseDice.Count > 0) { this._owner.cardSlotDetail.keepCard.AddBehaviours(BattleDiceCardModel.CreatePlayingCard(ItemXmlDataList.instance.GetCardItem(1110001)), DefenseDice); } }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { unit.bufListDetail.AddBuf(new BattleUnitBuf_ZealLimit()); unit.RecoverHP(10); unit.breakDetail.RecoverBreak(10); unit.personalEgoDetail.RemoveCard(18200007); base.OnUseInstance(unit, self, targetUnit); }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { if (unit.passiveDetail.PassiveList.Find((Predicate <PassiveAbilityBase>)(x => x is PassiveAbility_1870001)) is PassiveAbility_1870001 passive) { passive.Revive(); } self.exhaust = true; base.OnUseInstance(unit, self, targetUnit); }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int currentSlotOrder) { List <BattleUnitModel> choose = BattleObjectManager.instance.GetAliveList(this._owner.faction == Faction.Player ? Faction.Enemy: Faction.Player).FindAll((Predicate <BattleUnitModel>)(x => x.bufListDetail.GetActivatedBufList().Exists((Predicate <BattleUnitBuf>)(y => y is TheChosen)))); if (choose.Count == 0) { return(base.ChangeAttackTarget(card, currentSlotOrder)); } return(RandomUtil.SelectOne <BattleUnitModel>(choose)); }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int currentSlot) { List <BattleUnitModel> vine = BattleObjectManager.instance.GetAliveList(Faction.Player).FindAll((Predicate <BattleUnitModel>)(x => x.bufListDetail.GetActivatedBufList().Exists((Predicate <BattleUnitBuf>)(y => y is BattleUnitBuf_snowwhite_vine)))); if (vine.Count <= 0 && currentSlot > this._owner.speedDiceResult.Count / 2) { return(base.ChangeAttackTarget(card, currentSlot)); } return(RandomUtil.SelectOne <BattleUnitModel>(vine)); }
public override void OnSelectEmotion() { if (this._owner.faction == Faction.Player) { trick = this._owner.allyCardDetail.AddNewCard(this._targetID); } if (this._owner.faction == Faction.Enemy) { round = 3; } }
public override void OnWaveStart() { if (this._owner.faction == Faction.Player) { learn = this._owner.allyCardDetail.AddNewCard(this.GetTargetCardId()); } if (this._owner.faction == Faction.Enemy) { copyiedList = new List <int>(); } }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int idx) { if (card.GetID() != 1108401 || patient.Count <= 0) { return(base.ChangeAttackTarget(card, idx)); } BattleUnitModel target = patient[0]; patient.Remove(target); return(target); }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { foreach (BattleUnitModel Unit in BattleObjectManager.instance.GetAliveList_opponent(unit.faction)) { if (Unit.bufListDetail.GetActivatedBuf(KeywordBuf.JaeheonMark) != null) { Unit.bufListDetail.GetActivatedBuf(KeywordBuf.JaeheonMark).Destroy(); } } targetUnit.bufListDetail.AddBuf(new BattleUnitBuf_AttackTarget()); }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int currentSlotOrder) { List <BattleUnitModel> aliveList = BattleObjectManager.instance.GetAliveList(); aliveList.Remove(this._owner); if (aliveList.Count == 0) { return(base.ChangeAttackTarget(card, currentSlotOrder)); } return(RandomUtil.SelectOne <BattleUnitModel>(aliveList)); }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int currentSlot) { foreach (BattleUnitModel enemy in BattleObjectManager.instance.GetAliveList(Faction.Enemy)) { if (enemy.bufListDetail.GetActivatedBufList().Exists(x => x is EmotionCardAbility_servantofwrath2.BattleUnitBuf_Emotion_Wrath_Friend)) { return(enemy); } } return(null); }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int currentSlot) { List <BattleUnitModel> aliveList = BattleObjectManager.instance.GetAliveList(this.owner.faction).FindAll(x => !x.passiveDetail.HasPassive <Zombie>()); if (aliveList.Count <= 0) { this.owner.Die(); Singleton <StageController> .Instance.CheckEndBattle(); } Contingecy_Contract.Debug.Log("Zomebie try to move"); return(RandomUtil.SelectOne <BattleUnitModel>(aliveList)); }
public override void OnSelectEmotion() { SoundEffectPlayer.PlaySound("Creature/Pino_On"); if (this._owner.faction == Faction.Player) { learn = this._owner.allyCardDetail.AddNewCard(this.GetTargetCardId()); } if (this._owner.faction == Faction.Enemy) { copyiedList = new List <int>(); } }
public override void OnSelectEmotion() { if (this._owner.faction == Faction.Player) { jade = this._owner.allyCardDetail.AddNewCard(this._targetID); } if (this._owner.faction == Faction.Enemy) { round = 4; Trigger = false; } }
public override void OnWaveStart() { this.effect = false; if (this._owner.faction == Faction.Player) { Dacapo = this._owner.allyCardDetail.AddNewCardToDeck(1100006); } if (this._owner.faction == Faction.Enemy) { this.trigger = false; } }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { base.OnUseInstance(unit, self, targetUnit); if (targetUnit.faction == unit.faction) { targetUnit.bufListDetail.AddBuf(new BattleUnitBuf_Pluto_Contracted_5()); } else { unit.bufListDetail.AddBuf(new BattleUnitBuf_Pluto_Contracted_5()); } }
public override void OnDrawCard() { base.OnDrawCard(); if (this._owner.faction == Faction.Enemy) { SoundEffectPlayer.PlaySound("Creature/Pino_On"); } BattleDiceCardModel copy = this._owner.allyCardDetail.AddNewCard(RandomUtil.SelectOne <int>(copyiedList)); copy.temporary = true; copy.SetPriorityAdder(100); copyiedList.Clear(); }
public override void OnStartBattle() { BattleDiceCardModel playingCard = BattleDiceCardModel.CreatePlayingCard(ItemXmlDataList.instance.GetCardItem(18200005)); if (playingCard == null) { return; } foreach (BattleDiceBehavior diceCardBehavior in playingCard.CreateDiceCardBehaviorList()) { this.owner.cardSlotDetail.keepCard.AddBehaviourForOnlyDefense(playingCard, diceCardBehavior); } }
public override void OnUseInstance(BattleUnitModel unit, BattleDiceCardModel self, BattleUnitModel targetUnit) { if (FindAngelica(unit) != null) { FindAngelica(unit).bufListDetail.AddBuf(new BattleUnitBuf_AngelicaPuppet(unit)); } if (unit.passiveDetail.PassiveList.Find((Predicate <PassiveAbilityBase>)(x => x is PassiveAbility_1870001)) is PassiveAbility_1870001 passive) { passive.ReturnToPassive(); } self.exhaust = true; base.OnUseInstance(unit, self, targetUnit); }
public override void OnUseCard() { if (card.target == null || card.target.bufListDetail.GetActivatedBuf(KeywordBuf.Burn) == null || card.target.bufListDetail.GetActivatedBuf(KeywordBuf.Burn).stack < 5) { return; } List <BattleDiceCardModel> list = this.owner.allyCardDetail.GetHand(); BattleDiceCardModel Card = RandomUtil.SelectOne <BattleDiceCardModel>(list); Card.AddBuf(new BurnCost()); list.Remove(Card); Card = RandomUtil.SelectOne <BattleDiceCardModel>(list); Card.AddBuf(new BurnCost()); }
public override void OnSelectEmotion() { this.savedHp = (int)this._owner.hp; this.savedBp = this._owner.breakDetail.breakGauge; this.effect = false; if (this._owner.faction == Faction.Enemy) { this.trigger = false; } if (this._owner.faction == Faction.Player) { Dacapo = this._owner.allyCardDetail.AddNewCard(1100006); } }
public override void OnWaveStart() { base.OnWaveStart(); RestDice = new Queue <DiceBehaviour>(); DiceCardXmlInfo xml = ItemXmlDataList.instance.GetCardItem(18000021).Copy(true); foreach (DiceBehaviour dice in xml.DiceBehaviourList) { RestDice.Enqueue(dice); } xml.DiceBehaviourList.Clear(); xml.DiceBehaviourList.Add(RestDice.Dequeue()); model = BattleDiceCardModel.CreatePlayingCard(xml); this.owner.allyCardDetail.AddCardToHand(model); count = 0; }
public override void OnRoundStart() { BattleUnitModel alive = RandomUtil.SelectOne <BattleUnitModel>(BattleObjectManager.instance.GetAliveList(Faction.Player)); List <BattleDiceCardModel> hand = alive.allyCardDetail.GetHand(); int num = 0; while (num < 2) { ++num; if (hand.Count > 0) { BattleDiceCardModel battleDiceCardModel = RandomUtil.SelectOne <BattleDiceCardModel>(hand); battleDiceCardModel.AddCost(1); this._cards.Add(battleDiceCardModel); hand.Remove(battleDiceCardModel); } } }
public override void OnWaveStart() { base.OnWaveStart(); List <BattleDiceCardModel> Deck = this._owner.allyCardDetail.GetAllDeck(); List <BattleDiceCardModel> Exhaust = new List <BattleDiceCardModel>(); for (int i = 0; i < 3; i++) { BattleDiceCardModel victim = RandomUtil.SelectOne <BattleDiceCardModel>(Deck); Exhaust.Add(victim); Deck.Remove(victim); } Lost.AddRange(Exhaust); foreach (BattleDiceCardModel card in Exhaust) { this._owner.allyCardDetail.ExhaustACard(card); } }
public override BattleUnitModel ChangeAttackTarget(BattleDiceCardModel card, int idx) { if (idx >= 3) { return(base.ChangeAttackTarget(card, idx)); } foreach (BattleUnitModel enemy in BattleObjectManager.instance.GetAliveList(this._owner.faction == Faction.Player ? Faction.Enemy : Faction.Player)) { if (enemy.bufListDetail.GetActivatedBufList().Find((Predicate <BattleUnitBuf>)(x => x is BattleUnitBuf_Emotion_WayBackHome_Target)) is BattleUnitBuf_Emotion_WayBackHome_Target goldbrick) { if (goldbrick.stack - 1 == idx) { return(enemy); } } } return(base.ChangeAttackTarget(card, idx)); }