protected Weapon(string name, int minDamage, int maxDamage, int sockets, Rearity rearity)
 {
     this.Rearity   = rearity;
     this.Name      = name;
     this.MinDamage = minDamage;
     this.MaxDamage = maxDamage;
     this.Sockets   = sockets;
     this.Gems      = new IGem[sockets];
 }
 public Axe(string name, Rearity rearity)
     : base(name, defaultMinDamage, defaultMaxDamage, defaultSockets, rearity)
 {
 }