Add elements
Attempt to block line of sight with walls
This commit is contained in:
@@ -7,10 +7,11 @@ namespace GameJamDungeon
|
||||
public static double CalculatePlayerDamage(int attackDamage, PlayerStatInfo playerStatInfo, EnemyStatInfo enemyStatInfo)
|
||||
{
|
||||
var baseDamage = attackDamage + playerStatInfo.BaseAttack;
|
||||
var elementADamage = (playerStatInfo.BaseElementADamageBonus > 0 ? playerStatInfo.BaseElementADamageBonus - enemyStatInfo.ElementAResistance : 0) / 100;
|
||||
var elementBDamage = (playerStatInfo.BaseElementBDamageBonus > 0 ? playerStatInfo.BaseElementBDamageBonus - enemyStatInfo.ElementBResistance : 0) / 100;
|
||||
var elementCDamage = (playerStatInfo.BaseElementCDamageBonus > 0 ? playerStatInfo.BaseElementCDamageBonus - enemyStatInfo.ElementCResistance : 0) / 100;
|
||||
var elementalBonusDamage = baseDamage + (baseDamage * elementADamage) + (baseDamage * elementBDamage) + (baseDamage * elementCDamage);
|
||||
var elementADamage = (playerStatInfo.BaseHydricDamageBonus > 0 ? playerStatInfo.BaseHydricDamageBonus - enemyStatInfo.HydricResistance : 0) / 100;
|
||||
var elementBDamage = (playerStatInfo.IgneousDamageBonus > 0 ? playerStatInfo.IgneousDamageBonus - enemyStatInfo.IgneousResistance : 0) / 100;
|
||||
var elementCDamage = (playerStatInfo.TelluricDamageBonus > 0 ? playerStatInfo.TelluricDamageBonus - enemyStatInfo.TelluricResistance : 0) / 100;
|
||||
var elementDDamage = (playerStatInfo.AeolicDamageBonus > 0 ? playerStatInfo.AeolicDamageBonus - enemyStatInfo.AeolicResistance : 0) / 100;
|
||||
var elementalBonusDamage = baseDamage + (baseDamage * elementADamage) + (baseDamage * elementBDamage) + (baseDamage * elementCDamage) + (baseDamage * elementDDamage);
|
||||
var calculatedDamage = elementalBonusDamage - enemyStatInfo.BaseDefense;
|
||||
return calculatedDamage;
|
||||
}
|
||||
@@ -18,11 +19,12 @@ namespace GameJamDungeon
|
||||
public static double CalculateEnemyDamage(int attackDamage, PlayerStatInfo playerStatInfo, EnemyStatInfo enemyStatInfo)
|
||||
{
|
||||
var baseDamage = attackDamage + enemyStatInfo.BaseAttack;
|
||||
var elementADamage = (enemyStatInfo.BaseElementADamageBonus > 0 ? enemyStatInfo.BaseElementADamageBonus - playerStatInfo.ElementAResistance : 0) / 100;
|
||||
var elementBDamage = (enemyStatInfo.BaseElementBDamageBonus > 0 ? enemyStatInfo.BaseElementBDamageBonus - playerStatInfo.ElementBResistance : 0) / 100;
|
||||
var elementCDamage = (enemyStatInfo.BaseElementCDamageBonus > 0 ? enemyStatInfo.BaseElementCDamageBonus - playerStatInfo.ElementCResistance : 0) / 100;
|
||||
var elementalBonusDamage = baseDamage + (baseDamage * elementADamage) + (baseDamage * elementBDamage) + (baseDamage * elementCDamage);
|
||||
var calculatedDamage = elementalBonusDamage - enemyStatInfo.BaseDefense;
|
||||
var elementADamage = (enemyStatInfo.BaseHydricDamageBonus > 0 ? enemyStatInfo.BaseHydricDamageBonus - playerStatInfo.HydricResistance : 0) / 100;
|
||||
var elementBDamage = (enemyStatInfo.IgneousDamageBonus > 0 ? enemyStatInfo.IgneousDamageBonus - playerStatInfo.IgneousResistance : 0) / 100;
|
||||
var elementCDamage = (enemyStatInfo.TelluricDamageBonus > 0 ? enemyStatInfo.TelluricDamageBonus - playerStatInfo.TelluricResistance : 0) / 100;
|
||||
var elementDDamage = (enemyStatInfo.AeolicDamageBonus > 0 ? enemyStatInfo.AeolicDamageBonus - playerStatInfo.AeolicResistance : 0) / 100;
|
||||
var elementalBonusDamage = baseDamage + (baseDamage * elementADamage) + (baseDamage * elementBDamage) + (baseDamage * elementCDamage) + (baseDamage * elementDDamage);
|
||||
var calculatedDamage = elementalBonusDamage - playerStatInfo.BaseDefense;
|
||||
return calculatedDamage;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
namespace GameJamDungeon
|
||||
using Godot;
|
||||
|
||||
namespace GameJamDungeon
|
||||
{
|
||||
public interface ICharacterStats
|
||||
{
|
||||
@@ -8,10 +10,28 @@
|
||||
|
||||
public int BaseDefense { get; }
|
||||
|
||||
public double ElementAResistance { get; }
|
||||
[Export]
|
||||
public double TelluricResistance { get; set; }
|
||||
|
||||
public double ElementBResistance { get; }
|
||||
[Export]
|
||||
public double AeolicResistance { get; set; }
|
||||
|
||||
public double ElementCResistance { get; }
|
||||
[Export]
|
||||
public double HydricResistance { get; set; }
|
||||
|
||||
[Export]
|
||||
public double IgneousResistance { get; set; }
|
||||
|
||||
[Export]
|
||||
public double TelluricDamageBonus { get; set; }
|
||||
|
||||
[Export]
|
||||
public double AeolicDamageBonus { get; set; }
|
||||
|
||||
[Export]
|
||||
public double BaseHydricDamageBonus { get; set; }
|
||||
|
||||
[Export]
|
||||
public double IgneousDamageBonus { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user