diff options
Diffstat (limited to 'DSACore/Models/Database/DSA/Weapon.cs')
-rw-r--r-- | DSACore/Models/Database/DSA/Weapon.cs | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/DSACore/Models/Database/DSA/Weapon.cs b/DSACore/Models/Database/DSA/Weapon.cs new file mode 100644 index 0000000..24b334a --- /dev/null +++ b/DSACore/Models/Database/DSA/Weapon.cs @@ -0,0 +1,50 @@ +using System; + +namespace DSACore.Models.Database.DSA +{ + public class Weapon + { + public Weapon() + { + } + + public Weapon(string name, string damage, int weight, string weaponTalent, string price) + { + Name = name ?? throw new ArgumentNullException(nameof(name)); + Damage = damage ?? throw new ArgumentNullException(nameof(damage)); + Weight = weight; + WeaponTalent = weaponTalent ?? throw new ArgumentNullException(nameof(weaponTalent)); + Price = price; + } + + public string Name { get; set; } + public string Damage { get; set; } + public int Weight { get; set; } + public string WeaponTalent { get; set; } + public string Price { get; set; } + } + + public class MeleeWeapon : Weapon + { + public string TpKK { get; set; } + public int INI { get; set; } + public string MW { get; set; } + + public MeleeWeapon(string name, string damage, int weight, string weaponTalent, string price) : base(name, damage, weight, weaponTalent, price) + { + } + } + + public class RangedWeapon : Weapon + { + public int AtMod { get; set; } + public int KKMod { get; set; } + public string AtReach { get; set; } + public string TpReach { get; set; } + public int LoadTime { get; set; } + + public RangedWeapon(string name, string damage, int weight, string weaponTalent, string price) : base(name, damage, weight, weaponTalent, price) + { + } + } +} |