public override void OnUseCard(BattlePlayingCardDataInUnitModel card) { base.OnUseCard(card); if (card == null || card.isKeepedCard) { return; } if (this._targetIDs.Count < 2) { this._targetIDs.Add(card.card.GetID()); foreach (BattleDiceCardModel battleDiceCardModel in this._owner.allyCardDetail.GetAllDeck()) { if (battleDiceCardModel.GetID() == card.card.GetID()) { battleDiceCardModel.AddBuf(new BattleDiceCardBuf_Emotion_BurningGirl()); battleDiceCardModel.SetAddedIcon("Burning_Match"); } } } if (!this._targetIDs.Contains(card.card.GetID())) { return; } ++this.stack; }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { BattleUnitModel target = curCard?.target; if (target == null) { return; } if (this.CheckAbility(target)) { curCard.ApplyDiceStatBonus(DiceMatch.AllDice, new DiceStatBonus() { dmg = 2 * this.stack }); if (this._owner.faction == Faction.Player) { curCard.ApplyDiceStatBonus(DiceMatch.AllDice, new DiceStatBonus() { power = 1 * this.stack }); } ++this.stack; this._owner.battleCardResultLog?.SetCreatureAbilityEffect("7/WayBeckHome_Emotion_Atk", 1f); this._owner.battleCardResultLog?.SetCreatureEffectSound("Creature/House_NormalAtk"); } else { this.stack = 0; } }
public override void OnStartCardAction(BattlePlayingCardDataInUnitModel curCard) { if (this._owner.faction != Faction.Player) { return; } if ((double)this._owner.hp > (double)this._owner.MaxHp * 0.2) { return; } int num = Mathf.Min((int)((double)this._owner.MaxHp * 0.3), 36); List <BattleUnitModel> alive = BattleObjectManager.instance.GetAliveList(Faction.Enemy); foreach (BattleUnitModel unit in alive) { unit.TakeDamage(num); } SingletonBehavior <SoundEffectManager> .Instance.PlayClip("Creature/MachGirl_Explosion")?.SetGlobalPosition(this._owner.view.WorldPosition); this._owner.Die(); SingletonBehavior <BattleManagerUI> .Instance.ui_unitListInfoSummary.UpdateCharacterProfile(this._owner, this._owner.faction, 0.0f, this._owner.breakDetail.breakGauge); this._effect = this.MakeEffect("1/MatchGirl_Footfall", destroyTime: 2f, apply: false); this._effect.AttachEffectLayer(); try { this._owner.view.StartDeadEffect(false); } catch { } }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); curCard.ApplyDiceStatBonus(DiceMatch.NextDice, new DiceStatBonus() { power = Pow }); }
public override void OnStartTargetedOneSide(BattlePlayingCardDataInUnitModel curCard) { if (this._owner.faction == Faction.Enemy && Trigger) { curCard.owner.TakeBreakDamage(RandomUtil.Range(3, 6)); this._owner.battleCardResultLog.SetEndCardActionEvent(new BattleCardBehaviourResult.BehaviourEvent(this.Effect)); } }
public override void OnUseCard(BattleUnitModel owner, BattlePlayingCardDataInUnitModel playingCard) { base.OnUseCard(owner, playingCard); playingCard.ApplyDiceStatBonus(DiceMatch.AllDice, new DiceStatBonus() { power = 1 }); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if (curCard.card.GetID() == 18800007) { this.owner.personalEgoDetail.RemoveCard(18800007); } }
public override void OnUseCard(BattlePlayingCardDataInUnitModel card) { if (card.speedDiceResultValue >= 6) { card.ApplyDiceStatBonus(DiceMatch.AllDefenseDice, new DiceStatBonus { power = 3 }); } }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if ((_target != null && !_target.IsDead()) || curCard.target.faction == this._owner.faction || curCard.GetDiceBehaviorList().Find(x => x.Type == BehaviourType.Atk) == null) { return; } this._target = curCard.target; this._target.bufListDetail.AddBuf(new BattleUnitBuf_redhood_prey()); this._target.battleCardResultLog?.SetNewCreatureAbilityEffect("6_G/FX_IllusionCard_6_G_Hunted", 1.5f); this._target.battleCardResultLog?.SetCreatureEffectSound("Creature/RedHood_Gun"); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if (curCard.card == request) { trigger = true; } else { trigger = false; } }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if (curCard.card.GetID() != 703207) { return; } curCard.ApplyDiceStatBonus(DiceMatch.DiceByIdx(1), new DiceStatBonus() { max = Math.Max(0, -3 + 3 * Level) }); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if (curCard.isKeepedCard || curCard.card.GetID() == 1101005) { return; } if (!(this._owner.bufListDetail.GetActivatedBufList().Find((Predicate <BattleUnitBuf>)(x => x is BattleUnitBuf_Freischutz_Emotion_Seventh_Bullet)) is BattleUnitBuf_Freischutz_Emotion_Seventh_Bullet bullet)) { BattleUnitBuf_Freischutz_Emotion_Seventh_Bullet Bullet = new BattleUnitBuf_Freischutz_Emotion_Seventh_Bullet(); this._owner.bufListDetail.AddBuf(Bullet); Bullet.stack += 1; }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); if (this._owner.faction != Faction.Player) { return; } if (curCard.card.GetID() != 1100006) { return; } this.effect = true; }
public override void OnStartParrying(BattlePlayingCardDataInUnitModel card) { base.OnStartParrying(card); if (card.earlyTarget == card.target) { card.ApplyDiceStatBonus(DiceMatch.AllDice, new DiceStatBonus() { power = this.Pow }); } this._owner.battleCardResultLog?.SetNewCreatureAbilityEffect("7_C/FX_IllusionCard_7_C_Together", 2f); this._owner.battleCardResultLog?.SetCreatureEffectSound("Creature/House_MakeRoad"); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { if (card == null) { card = curCard.card; this.owner.allyCardDetail.ExhaustAllCards(); for (int i = 0; i < 9; i++) { this.owner.allyCardDetail.AddNewCardToDeck(card.GetID()); } this.owner.allyCardDetail.DrawCards(4); } }
public override void OnStartParrying(BattlePlayingCardDataInUnitModel card) { base.OnStartParrying(card); BattleUnitModel target = card?.target; if (target == null || this._giver == null || (this._giver == target || !Prob)) { return; } this._owner.battleCardResultLog?.SetCreatureAbilityEffect("3/Latitia_Boom", 1.5f); this._owner.TakeDamage(Dmg, DamageType.Buf, this._giver); this._owner.bufListDetail.AddKeywordBufByEtc(KeywordBuf.Bleeding, Bleed, this._giver); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); ExtraHit = false; if (extrahit.Contains(curCard)) { curCard.ApplyDiceStatBonus(DiceMatch.AllAttackDice, new DiceStatBonus() { dmgRate = (Level - 1) * 25 }); ExtraHit = true; } extrahit.Remove(curCard); }
public override void OnParryingStart(BattlePlayingCardDataInUnitModel card) { base.OnParryingStart(card); BattleUnitModel target = card?.target; if (target == null || this._target != null) { return; } BattleUnitBuf_Emotion_Latitia_Gift emotionLatitiaGift = new BattleUnitBuf_Emotion_Latitia_Gift(this._owner); target.bufListDetail.AddBuf(emotionLatitiaGift); this._target = target; }
public override void OnWinParrying(BattleDiceBehavior behavior) { base.OnWinParrying(behavior); BattlePlayingCardDataInUnitModel card = behavior?.card; if (card == null || behavior == this.last) { return; } this.win++; card.ApplyDiceStatBonus(DiceMatch.LastDice, new DiceStatBonus() { power = Pow }); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); this.win = 0; if (curCard == null) { return; } BattleDiceBehavior[] array = curCard.cardBehaviorQueue?.ToArray(); if (array == null || array.Length == 0) { return; } this.last = array[array.Length - 1]; }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); BattleDiceCardBuf battleDiceCardBuf = curCard?.card?.GetBufList().Find((Predicate <BattleDiceCardBuf>)(y => y is BattleDiceCardBuf_Emotion_Heart)); if (battleDiceCardBuf == null) { return; } curCard.ApplyDiceStatBonus(DiceMatch.AllDice, new DiceStatBonus() { power = Pow }); battleDiceCardBuf.Destroy(); }
public override void OnStartParrying(BattlePlayingCardDataInUnitModel card) { base.OnStartParrying(card); if (card.target == null || card.target == _except || _except.IsDead()) { return; } int DamageEnemy = Dmg; card.target.TakeDamage(DamageEnemy); card.target.breakDetail.TakeBreakDamage(DamageEnemy); int Damage = Dmg; this._owner.TakeDamage(Damage); this._owner.breakDetail.TakeBreakDamage(Damage); }
public override void OnParryingStart(BattlePlayingCardDataInUnitModel card) { if (card.target == null || this._owner.faction != Faction.Enemy || card.target.currentDiceAction is BattleKeepedCardDataInUnitModel) { return; } BattleUnitBuf activatedBuf = card.target.bufListDetail.GetActivatedBuf(KeywordBuf.TeddyLove); if (activatedBuf != null && activatedBuf.stack < 5) { ++activatedBuf.stack; } else { card.target.bufListDetail.AddBuf(new TeddyMemory()); } }
public BattleVoidBehaviour(BattleDiceBehavior OriginalDice) { this.OriginalDice = OriginalDice; this.owner = OriginalDice.owner; this.behaviourInCard = OriginalDice.behaviourInCard; this.abilityList = OriginalDice.abilityList; this.card = OriginalDice.card; if (OriginalDice.TargetDice != null && OriginalDice.TargetDice.Detail == BehaviourDetail.Guard) { _damageReductionByGuard = OriginalDice.TargetDice.DiceResultValue; } else { _damageReductionByGuard = 0; } _statBonus = typeof(BattleDiceBehavior).GetField("_statBonus", AccessTools.all).GetValue(this.OriginalDice) as DiceStatBonus; OriginalStatBonus = _statBonus.Copy(); }
public override void OnSucceedAttack(BattleDiceBehavior behavior) { base.OnSucceedAttack(behavior); if (ExtraHit) { return; } CrossBurn crossburn = (CrossBurn)behavior.card.target.bufListDetail.GetActivatedBufList().Find(x => x is CrossBurn); if (crossburn == null) { crossburn = new CrossBurn(Level); behavior.card.target.bufListDetail.AddBuf(crossburn); } if (crossburn.stack >= 1) { BattlePlayingCardDataInUnitModel attack = new BattlePlayingCardDataInUnitModel() { owner = this.owner, card = behavior.card.card, cardAbility = behavior.card.card.CreateDiceCardSelfAbilityScript() }; if (attack.cardAbility != null) { attack.cardAbility.card = attack; } attack.ResetCardQueue(); List <BattleUnitModel> aliveList = BattleObjectManager.instance.GetAliveList(this.owner.faction == Faction.Player ? Faction.Enemy : Faction.Player); if (aliveList.Count > 0) { Singleton <StageController> .Instance.AddAllCardListInBattle(attack, RandomUtil.SelectOne <BattleUnitModel>(aliveList)); } extrahit.Add(attack); crossburn.stack -= 1; } crossburn.Hit += 1; if (crossburn.Hit == 3) { crossburn.Hit = 0; crossburn.stack += Level; } }
public override void OnEndParrying(BattlePlayingCardDataInUnitModel curCard) { base.OnEndParrying(curCard); if (this._owner.faction != Faction.Player) { return; } if (this._owner.cardSlotDetail.keepCard.cardBehaviorQueue.Count <= 0) { DiceCardXmlInfo cardItem = ItemXmlDataList.instance.GetCardItem(1107401); List <BattleDiceBehavior> behaviourList = new List <BattleDiceBehavior>(); int num = 0; foreach (DiceBehaviour diceBehaviour1 in cardItem.DiceBehaviourList) { BattleDiceBehavior battleDiceBehavior = new BattleDiceBehavior { behaviourInCard = diceBehaviour1 }; battleDiceBehavior.SetIndex(num++); behaviourList.Add(battleDiceBehavior); } this._owner.cardSlotDetail.keepCard.AddBehaviours(BattleDiceCardModel.CreatePlayingCard(cardItem), behaviourList); } }
public override void OnUseCard(BattlePlayingCardDataInUnitModel curCard) { base.OnUseCard(curCard); Trigger = false; }
public override void OnParryingStart(BattlePlayingCardDataInUnitModel card) { base.OnParryingStart(card); Trigger = false; }
public override void OnStartTargetedOneSide(BattlePlayingCardDataInUnitModel curCard) { base.OnStartTargetedOneSide(curCard); this.Effect(); }
public override void OnUseCard(BattlePlayingCardDataInUnitModel card) { base.OnUseCard(card); this.triggered = false; }