private string MakeAndRecordMoonDesign(PlanetoidCategory cat, SystemDesirability desirability) {
     string designName = GetUniqueDesignName(cat.GetValueName());
     PlanetoidStat stat = MakeRandomMoonStat(cat, desirability);
     int passiveCmQty = GetPassiveCountermeasureQty(desirability, max: 1);
     var passiveCMs = _availablePassiveCountermeasureStats.Shuffle().Take(passiveCmQty);
     MoonDesign design = new MoonDesign(designName, stat, passiveCMs);
     _gameMgr.CelestialDesigns.Add(design);
     return designName;
 }
Example #2
0
 public void Add(MoonDesign design) {
     string designName = design.DesignName;
     D.Assert(!_moonDesignsLookup.ContainsKey(designName));
     _moonDesignsLookup.Add(designName, design);
     //D.Log("{0} added {1} {2}.", GetType().Name, design.GetType().Name, designName);
 }