示例#1
0
 public MoonDesign(string designName, PlanetoidStat stat, IEnumerable<PassiveCountermeasureStat> passiveCmStats)
     : base(designName, passiveCmStats) {
     Stat = stat;
 }
示例#2
0
 private FollowableItemCameraStat MakeMoonCameraStat(PlanetoidStat moonStat) {
     float fov;
     PlanetoidCategory pCat = moonStat.Category;
     switch (pCat) {
         case PlanetoidCategory.Moon_005:
             fov = 60F;
             break;
         case PlanetoidCategory.Moon_001:
         case PlanetoidCategory.Moon_002:
         case PlanetoidCategory.Moon_003:
         case PlanetoidCategory.Moon_004:
             fov = 50F;
             break;
         case PlanetoidCategory.GasGiant:
         case PlanetoidCategory.Ice:
         case PlanetoidCategory.Terrestrial:
         case PlanetoidCategory.Volcanic:
         case PlanetoidCategory.None:
         default:
             throw new NotImplementedException(ErrorMessages.UnanticipatedSwitchValue.Inject(pCat));
     }
     float radius = moonStat.Radius;
     float minViewDistance = radius + 1F;
     float optViewDistance = radius + 3F;    // optViewDistance has no linkage to ObstacleZoneRadius
     return new FollowableItemCameraStat(minViewDistance, optViewDistance, fov);
 }
示例#3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PlanetoidData" /> class with no owner.
 /// </summary>
 /// <param name="planetoid">The planetoid.</param>
 /// <param name="passiveCMs">The passive Countermeasures.</param>
 /// <param name="planetoidStat">The stat.</param>
 public PlanetoidData(IPlanetoid planetoid, IEnumerable<PassiveCountermeasure> passiveCMs, PlanetoidStat planetoidStat)
     : this(planetoid, TempGameValues.NoPlayer, passiveCMs, planetoidStat) { }
示例#4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PlanetoidData" /> class.
 /// </summary>
 /// <param name="planetoid">The planetoid.</param>
 /// <param name="owner">The owner.</param>
 /// <param name="passiveCMs">The passive Countermeasures.</param>
 /// <param name="planetoidStat">The stat.</param>
 public PlanetoidData(IPlanetoid planetoid, Player owner, IEnumerable<PassiveCountermeasure> passiveCMs, PlanetoidStat planetoidStat)
     : base(planetoid, owner, planetoidStat.MaxHitPoints, passiveCMs) {
     Mass = planetoidStat.Mass;
     Category = planetoidStat.Category;
     Radius = planetoidStat.Radius;
     Capacity = planetoidStat.Capacity;
     Resources = planetoidStat.Resources;
     Topography = Topography.System;
     _sectorID = InitializeSectorID();
 }
示例#5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PlanetoidData" /> class
 /// with no countermeasures and no owner.
 /// </summary>
 /// <param name="planetoid">The planetoid.</param>
 /// <param name="planetoidStat">The stat.</param>
 public PlanetoidData(IPlanetoid planetoid, PlanetoidStat planetoidStat)
     : this(planetoid, TempGameValues.NoPlayer, Enumerable.Empty<PassiveCountermeasure>(), planetoidStat) { }