Example #1
0
        public void EnemyDamageTaken(int damageAmount, IEnemyInstance enemyInstance)
        {
            if (OnEnemyDamageTaken == null)
            {
                return;
            }
            EnemyDamageTakenEventArgs args = new EnemyDamageTakenEventArgs()
            {
                DamageAmount = damageAmount, EnemyInstance = enemyInstance
            };

            OnEnemyDamageTaken(this, args);
        }
Example #2
0
        private void listBoxEnemy_SelectedIndexChanged(object sender, EventArgs e)
        {
            IEnemyInstance selectedEnemy = (listBoxEnemy.Items[listBoxEnemy.SelectedIndex] as IEnemyInstance);

            labelMonsterCurrentHealth.Text = selectedEnemy.ActualHealth.ToString();
            labelMonsterMaxHealth.Text     = selectedEnemy.BaseMaxHealth.ToString();
            labelmonsterName.Text          = selectedEnemy.Name.ToString();

            listBoxStatValues.Items.Clear();
            foreach (var selectedEnemyStatusValue in selectedEnemy.StatusValues)
            {
                listBoxStatValues.Items.Add($"{selectedEnemyStatusValue.Key}: {selectedEnemyStatusValue.Value}");
            }
        }
Example #3
0
        public void DoDamage(int damage, IEnemyInstance enemyInstance)
        {
            ActiveEnemyInstance = enemyInstance;

            //TODO calculate actual damage
            var actualDamage = damage;

            _gameWorldManager.HeroManager.MetaInformation[MetaInformation.TimesPlayerGotAttacked]         += 1;
            _gameWorldManager.HeroManager.MetaInformation[MetaInformation.TimesPlayerGotAttackedThisTurn] += 1;

            // Handle potential skills that do something with attacks against the player
            _gameWorldManager.GameTurnManager.ActivateActiveSkillCardsThisTurn(ActiveSkillTrigger.OnBeingAttacked);

            _gameWorldManager.HeroManager.TakeDamage(actualDamage);
        }
Example #4
0
 public override int CalculateDamageOverridable(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target)
 {
     return(baseDamage + (gameWorldManager.HeroManager.StatusValues[StatusEffect.Strength] * 3));
 }
Example #5
0
        public override int CalculateDamageOverridable(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target)
        {
            int cardCountWithStrike = 0;

            cardCountWithStrike += gameWorldManager.CardManager.DeckPile.Count(x => x.Name.ToLower().Contains("strike"));
            cardCountWithStrike += gameWorldManager.CardManager.ExhaustPile.Count(x => x.Name.ToLower().Contains("strike"));
            cardCountWithStrike += gameWorldManager.CardManager.Hand.Count(x => x.Name.ToLower().Contains("strike"));
            cardCountWithStrike += gameWorldManager.CardManager.DiscardPile.Count(x => x.Name.ToLower().Contains("strike"));
            return(baseDamage + (cardCountWithStrike * 2));
        }
Example #6
0
 public int CalculateDamageOverridable(GameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target)
 {
     return(baseDamage);
 }
Example #7
0
        public int CalculateDamage(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target)
        {
            //TODO: actually calculate shit here
            var calculatedValue = CalculateDamageOverridable(gameWorldManager, baseDamage, target);

            Logger.Log($"Calculating actual damage: {calculatedValue} for target: {target.Name}({target.UniqueId})");
            return(calculatedValue);
        }
Example #8
0
        public virtual int CalculateDamageOverridable(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target)
        {
            //TODO: actually calculate shit here
            var calculatedValue = baseDamage;

            return(calculatedValue);
        }