Initial Commit
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
using Model.Entity.Types;
|
||||
|
||||
namespace Model.Entity.Parts;
|
||||
|
||||
public class EntityWeaponModel : IEntityPartInterface
|
||||
{
|
||||
public int Id { get; set; } = 1;
|
||||
public int EntityModelId { get; set; }
|
||||
public virtual EntityModel EntityModel { get; set; }
|
||||
|
||||
public int Range { get; set; } = 40;
|
||||
public int MinimumRange { get; set; } = 0;
|
||||
public float AttacksPerSecond { get; set; } = 0;
|
||||
public float SecondsBetweenAttacks { get; set; } = 0;
|
||||
|
||||
public float Cooldown { get; set; } = 0;
|
||||
public float Charges { get; set; } = 0;
|
||||
|
||||
public int Damage { get; set; } = 0;
|
||||
|
||||
public string ComplexDamage { get; set; } = "deals 126 over 6 seconds";
|
||||
|
||||
|
||||
public bool HasSplash { get; set; }
|
||||
|
||||
public int LightDamage { get; set; } = 0;
|
||||
public int MediumDamage { get; set; } = 0;
|
||||
public int HeavyDamage { get; set; } = 0;
|
||||
|
||||
|
||||
public int StructureDamageBonus { get; set; } = 0;
|
||||
public int EthericDamageBonus { get; set; } = 0;
|
||||
public string Targets { get; set; } = TargetType.All;
|
||||
public string Attack { get; set; } = AttackType.DPS;
|
||||
|
||||
public float DamagePerSecond()
|
||||
{
|
||||
if (SecondsBetweenAttacks == 0) return Damage * AttacksPerSecond;
|
||||
|
||||
return Damage / SecondsBetweenAttacks;
|
||||
}
|
||||
|
||||
public float DamagePerSecondLight()
|
||||
{
|
||||
var damage = LightDamage != 0 ? LightDamage : Damage;
|
||||
|
||||
if (SecondsBetweenAttacks == 0) return damage * AttacksPerSecond;
|
||||
|
||||
return damage / SecondsBetweenAttacks;
|
||||
}
|
||||
|
||||
public float DamagePerSecondMedium()
|
||||
{
|
||||
var damage = MediumDamage != 0 ? MediumDamage : Damage;
|
||||
|
||||
if (SecondsBetweenAttacks == 0) return damage * AttacksPerSecond;
|
||||
|
||||
return damage / SecondsBetweenAttacks;
|
||||
}
|
||||
|
||||
public float DamagePerSecondHeavy()
|
||||
{
|
||||
var damage = HeavyDamage != 0 ? HeavyDamage : Damage;
|
||||
|
||||
if (SecondsBetweenAttacks == 0) return damage * AttacksPerSecond;
|
||||
|
||||
return damage / SecondsBetweenAttacks;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user