public void EnemyDamageTaken(int damageAmount, IEnemyInstance enemyInstance) { if (OnEnemyDamageTaken == null) { return; } EnemyDamageTakenEventArgs args = new EnemyDamageTakenEventArgs() { DamageAmount = damageAmount, EnemyInstance = enemyInstance }; OnEnemyDamageTaken(this, args); }
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}"); } }
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); }
public override int CalculateDamageOverridable(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target) { return(baseDamage + (gameWorldManager.HeroManager.StatusValues[StatusEffect.Strength] * 3)); }
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)); }
public int CalculateDamageOverridable(GameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target) { return(baseDamage); }
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); }
public virtual int CalculateDamageOverridable(IGameWorldManager gameWorldManager, int baseDamage, IEnemyInstance target) { //TODO: actually calculate shit here var calculatedValue = baseDamage; return(calculatedValue); }