void Update() { if (powers.Count > 0) { AbstractPower tAbstractPower = powers[0]; } }
public void AddPower(AbstractPower _powerToApply) { bool tIsHasBuffAlready = false; for (int i = 0; i < powers.Count; i++) { if (powers[i].ID == _powerToApply.ID) { powers[i].StackPower(_powerToApply.Amount); powers[i].UpdateDescription(); tIsHasBuffAlready = true; } } if (!tIsHasBuffAlready) { powers.Add(_powerToApply); if (IsPlayer) { int tBuffCount = 0; for (int i = 0; i < powers.Count; i++) { if (powers[i].Type == PowerType.Buff) { tBuffCount++; } } if (tBuffCount >= 10) { //UnlockTracker.unlockAchievement("POWERFUL"); } } } }
public ApplyPowerAction(AbstractCreature _target, AbstractCreature _source, AbstractPower _powerToApply, int _stackAmount, bool _isFast, AttackEffect _attackEffect) { SetValues(_target, _source, _stackAmount); powerToApply = _powerToApply; if (AbstractDungeon.Player.HasRelic("SnakeSkull") && Source != null && Source.IsPlayer && Target != Source && powerToApply.ID.Equals("Poison")) { //AbstractDungeon.Player.GetRelic("SnakeSull").flash(); powerToApply.Amount++; Amount++; } if (powerToApply.ID.Equals("Corruption")) //腐化 { for (int i = 0; i < AbstractDungeon.Player.Hand.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.Hand.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.DrawPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.DrawPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.DiscardPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.DiscardPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } for (int i = 0; i < AbstractDungeon.Player.ExhaustPile.Group.Count; i++) { AbstractCard tCard = AbstractDungeon.Player.ExhaustPile.Group[i]; if (tCard.Type == CardType.Skill) { tCard.ModifyCostForCombat(-9); } } } GameActionType = ActionType.Power; GameAttackEffect = _attackEffect; if (AbstractDungeon.GetMonsters().AreMonstersBasicallyDead()) { IsDone = true; } }
public void ApplyFocus() { AbstractPower tPower = AbstractDungeon.Player.GetPower("Focus"); if (null != tPower) { PassiveAmount = Mathf.Max(0, PassiveAmount + tPower.Amount); } }
public void ApplyFocus() { AbstractPower tPower = AbstractDungeon.Player.GetPower("Focus"); if (tPower != null && Id.Equals("Plasma")) { PassiveAmount = Mathf.Max(0, BasePassiveAmount + tPower.Amount); EvokeAmount = Mathf.Max(0, BaseEvokeAmount + tPower.Amount); } }
public AbstractPower GetPower(string _targetId) { AbstractPower tAbstractPower = null; for (int i = 0; i < powers.Count; i++) { if (powers[i].ID.Equals(_targetId)) { tAbstractPower = powers[i]; } } return(tAbstractPower); }
public void TriggerOnOtherCardPlayed(AbstractCard _usedCard) { for (int i = 0; i < Group.Count; i++) { AbstractCard tCard = Group[i]; if (tCard != _usedCard) { tCard.TriggerOnCardPlayed(_usedCard); } } for (int i = 0; i < AbstractDungeon.Player.powers.Count; i++) { AbstractPower tAbstractPower = AbstractDungeon.Player.powers[i]; tAbstractPower.OnAfterCardPlayed(_usedCard); } }
public void Use(AbstractPlayer _player, AbstractMonster _monster) { //AbstractDungeon.ActionManager.AddToBottom(new); bool tIsPowerExist = false; for (int i = 0; i < _player.powers.Count; i++) { AbstractPower tPower = _player.powers[i]; if (tPower.ID.Equals("Corruption")) { tIsPowerExist = true; break; } } if (!tIsPowerExist) { AbstractDungeon.ActionManager.AddToBottom(new ApplyPowerAction(_player, _player, new CorruptionPower(_player))); } }
private void applyPowersToBlock() { IsBlockModified = false; float tValue = BaseBlock; for (int i = 0; i < AbstractDungeon.Player.powers.Count; i++) { AbstractPower tPower = AbstractDungeon.Player.powers[i]; tValue = tPower.ModifyBlock(tValue); if (BaseBlock != Math.Floor(tValue)) { IsBlockModified = true; } } if (tValue < 0f) { tValue = 0; } Block = (int)Math.Floor(tValue); }
public ApplyPowerAction(AbstractCreature _target, AbstractCreature _source, AbstractPower _powerToApply, int _stackAmount, AttackEffect _effect) : this(_target, _source, _powerToApply, _stackAmount, false, _effect) { }
public ApplyPowerAction(AbstractCreature _target, AbstractCreature _source, AbstractPower _powerToApply) : this(_target, _source, _powerToApply, -1) { }
public ApplyPowerAction(AbstractCreature _target, AbstractCreature _source, AbstractPower _powerToApply, int _stackAmount, bool _isFast) : this(_target, _source, _powerToApply, _stackAmount, _isFast, AttackEffect.None) { }
public GainPowerEffect(AbstractPower _power) { if (_power.Type == PowerType.Buff) { } }