示例#1
0
 public void SetGun(GunData data, int slot)
 {
     if (shipBase.slots[slot].MaxTier < data.Tier)
     {
         return;
     }
     if (shipBase.slots[slot].HasGun)
     {
         owner.Inventory.Add(shipBase.slots[slot].Gun);
     }
     data.Slot = slot;
     shipBase.slots[slot].Gun    = data;
     shipBase.slots[slot].HasGun = true;
     UpdateFields();
 }
示例#2
0
        public static GunData GetGun(string name)
        {
            var doc = new XmlDocument();

            doc.LoadXml(Data.Guns);
            var node = doc.SelectSingleNode($"//gun[name=\'{name}\']");

            var gun = new GunData
            {
                CanRotate      = bool.Parse(node["canRotate"].InnerText),
                CriticalChance = float.Parse(node["criticalChance"].InnerText),
                Damage         = float.Parse(node["damage"].InnerText),
                FireRate       = float.Parse(node["fireRate"].InnerText),
                Name           = name,
                Price          = int.Parse(node["price"].InnerText),
                Tier           = int.Parse(node["tier"].InnerText),
                Range          = float.Parse(node["range"].InnerText),
                Speed          = float.Parse(node["speed"].InnerText)
            };

            return(gun);
        }