public ModificateStatAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { SetType = ability.AbilitySetType; StatType = ability.AbilityStatType; Value = ability.Value; }
public SummonsAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Name = ability.Name; Count = ability.Count; TargetTypes = ability.AbilityTargetTypes; }
public AbilityBase(Enumerators.CardKind cardKind, AbilityData ability) { LoadObjectsManager = GameClient.Get <ILoadObjectsManager>(); GameplayManager = GameClient.Get <IGameplayManager>(); DataManager = GameClient.Get <IDataManager>(); TimerManager = GameClient.Get <ITimerManager>(); SoundManager = GameClient.Get <ISoundManager>(); AbilitiesController = GameplayManager.GetController <AbilitiesController>(); ParticlesController = GameplayManager.GetController <ParticlesController>(); BattleController = GameplayManager.GetController <BattleController>(); ActionsQueueController = GameplayManager.GetController <ActionsQueueController>(); BattlegroundController = GameplayManager.GetController <BattlegroundController>(); CardsController = GameplayManager.GetController <CardsController>(); AbilityData = ability; CardKind = cardKind; AbilityActivityType = ability.AbilityActivityType; AbilityCallType = ability.AbilityCallType; AbilityTargetTypes = ability.AbilityTargetTypes; AbilityEffectType = ability.AbilityEffectType; _playerAvatar = GameplayManager.CurrentPlayer; _opponenentAvatar = GameplayManager.OpponentPlayer; PermanentInputEndEvent += InputEndedHandler; ParticleIds = new List <ulong>(); }
public ChangeUnitsOfTypeStatAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { StatType = ability.AbilityStatType; SetType = Utilites.CastStringTuEnum <Enumerators.SetType>(ability.SetType); Value = ability.Value; }
public AllyUnitsOfTypeInPlayGetStatsAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Health = ability.Health; Damage = ability.Damage; SetType = ability.AbilitySetType; }
public RestoreDefRandomlySplitAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; TargetTypes = ability.AbilityTargetTypes; _targets = new List <object>(); }
public ReplaceUnitsWithTypeOnStrongerOnesAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; SetType = ability.AbilitySetType; TargetTypes = ability.AbilityTargetTypes; _boardUnits = new List <BoardUnit>(); _replaceUnitInfos = new List <ReplaceUnitInfo>(); }
public bool CheckActivateAvailability(Enumerators.CardKind kind, AbilityData ability, Player localPlayer) { bool available = false; Player opponent = localPlayer.Equals(_gameplayManager.CurrentPlayer) ? _gameplayManager.OpponentPlayer : _gameplayManager.CurrentPlayer; lock (_lock) { foreach (Enumerators.AbilityTargetType item in ability.AbilityTargetTypes) { switch (item) { case Enumerators.AbilityTargetType.OPPONENT_CARD: { if (opponent.BoardCards.Count > 0) { available = true; } } break; case Enumerators.AbilityTargetType.PLAYER_CARD: { if (localPlayer.BoardCards.Count > 1 || kind == Enumerators.CardKind.SPELL) { available = true; } } break; case Enumerators.AbilityTargetType.PLAYER: case Enumerators.AbilityTargetType.OPPONENT: case Enumerators.AbilityTargetType.ALL: available = true; break; } } } return(available); }
public ActiveAbility CreateActiveAbility( AbilityData ability, Enumerators.CardKind kind, object boardObject, Player caller, Card cardOwner, WorkingCard workingCard) { lock (_lock) { ActiveAbility activeAbility = new ActiveAbility { Id = _castedAbilitiesIds++, Ability = CreateAbilityByType(kind, ability) }; activeAbility.Ability.ActivityId = activeAbility.Id; activeAbility.Ability.PlayerCallerOfAbility = caller; activeAbility.Ability.CardOwnerOfAbility = cardOwner; activeAbility.Ability.MainWorkingCard = workingCard; if (boardObject != null) { if (boardObject is BoardCard) { activeAbility.Ability.BoardCard = boardObject as BoardCard; } else { if (kind == Enumerators.CardKind.CREATURE) { activeAbility.Ability.AbilityUnitOwner = boardObject as BoardUnit; } else { activeAbility.Ability.BoardSpell = boardObject as BoardSpell; } } } _activeAbilities.Add(activeAbility); return(activeAbility); } }
public AddCardByNameToHandAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Name = ability.Name; }
public StunOrDamageAdjustmentsAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { StatType = ability.AbilityStatType; Value = ability.Value; }
public UnitWeaponAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; Damage = ability.Damage; }
public ReanimateAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public AdjacentUnitsGetHeavyAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public ReviveDiedUnitsOfTypeFromMatchAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { SetType = ability.AbilitySetType; }
public EnemyThatAttacksBecomeFrozenAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public DamageEnemyUnitsAndFreezeThemAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; }
public AddGooVialsAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; Count = ability.Count; }
public ReturnUnitsOnBoardToOwnersDecksAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public AttackOverlordAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { TargetTypes = ability.AbilityTargetTypes; Value = ability.Value; }
public DrawCardAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { SetType = ability.AbilitySetType; }
public PriorityAttackAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public AdditionalDamageToHeavyInAttackAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public DelayedAbilityBase(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Delay = ability.Delay; _delayedTurnsLeft = Delay; }
public SwingAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; }
public DestroyUnitByTypeAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { TargetCardType = ability.TargetCardType; }
public DelayedGainAttackAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; }
public StunAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { StatType = ability.AbilityStatType; Value = ability.Value; }
public TakeControlEnemyUnitAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { }
public TakeDamageRandomEnemyAbility(Enumerators.CardKind cardKind, AbilityData ability) : base(cardKind, ability) { Value = ability.Value; }