Example #1
0
        private CelestialObject GetRandomObject(CelestialObjectType fromType)
        {
            var o = new CelestialObject();


            o.OrbitInitialAngle = random.NextDouble() * 2 * Math.PI;

            o.CelestialObjectType = random.Next(3 - (int)fromType) + fromType + 1;

            switch (o.CelestialObjectType)
            {
            case CelestialObjectType.Planet:
                o.MetalDensity = random.Next(2, 16) / 10;
                o.FoodDensity  = random.Next(0, 21) / 10;
                o.Size         = random.Next(3, 7);
                break;

            case CelestialObjectType.Moon:
                o.MetalDensity = random.Next(3, 22) / 10;
                o.FoodDensity  = random.Next(0, 10) / 10;
                o.Size         = random.Next(2, 5);
                break;

            case CelestialObjectType.Asteroid:
                o.MetalDensity = random.Next(5, 35) / 10;
                o.FoodDensity  = random.Next(0, 5) / 10;
                o.Size         = random.Next(1, 4);
                break;
            }
            return(o);
        }
 public static List <FilterItemModel> GetDefaultFilterList(CelestialObjectType celestialObjectType)
 {
     return(new List <FilterItemModel>
     {
         GetCelestialObjectTypeFilter(celestialObjectType)
     });
 }
 public static FilterItemModel GetCelestialObjectTypeFilter(CelestialObjectType celestialObjectType)
 {
     return(new FilterItemModel(
                $"{nameof(CelestialObjectModel.CelestialObjectType)}",
                ColumnType.IntColumn,
                FilterType.Equal,
                (int)celestialObjectType));
 }
 public static List <FilterItemModel> GetDefaultMoonFilterList(CelestialObjectType celestialObjectType, Guid celestialObjectId)
 {
     return(new List <FilterItemModel>
     {
         GetCelestialObjectTypeFilter(CelestialObjectType.MajorMoon),
         GetParentCelestialObjectFilter(celestialObjectId)
     });
 }
        public static string GetResourceSingular(this CelestialObjectType celestialObjectType)
        {
            switch (celestialObjectType)
            {
            case CelestialObjectType.Star:
                return(TextResource.Star);

            case CelestialObjectType.Planet:
                return(TextResource.Planet);

            case CelestialObjectType.MajorMoon:
                return(TextResource.MajorMoon);

            case CelestialObjectType.MinorMoon:
                return(TextResource.MinorMoon);

            default:
                throw new EnumArgumentException <CelestialObjectType>((int)celestialObjectType);
            }
        }
        public static string ToConstant(this CelestialObjectType value)
        {
            switch (value)
            {
            case CelestialObjectType.Star:
                return(CelestialObjectTypeConstants.Star);

            case CelestialObjectType.Planet:
                return(CelestialObjectTypeConstants.Planet);

            case CelestialObjectType.MajorMoon:
                return(CelestialObjectTypeConstants.MajorMoon);

            case CelestialObjectType.MinorMoon:
                return(CelestialObjectTypeConstants.MinorMoon);

            default:
                throw new ArgumentException($"{value} is an invalid {nameof(CelestialObjectType)}", nameof(value));
            }
        }
 partial void OnCelestialObjectTypeChanging(CelestialObjectType value);
        public CelestialObjectTypeModel GetSingleByEnum(CelestialObjectType value)
        {
            var celestialObjectTypeCode = value.ToConstant();

            return(GetSingleByCode(celestialObjectTypeCode));
        }
		private CelestialObject GetRandomObject(CelestialObjectType fromType) {
			var o = new CelestialObject();


			o.OrbitInitialAngle = random.NextDouble()*2*Math.PI;

			o.CelestialObjectType = random.Next(3 - (int)fromType) +  fromType+1;

			switch (o.CelestialObjectType) {
				case CelestialObjectType.Planet:
					o.MetalDensity = random.Next(2,16)/10;
					o.FoodDensity = random.Next(0,21)/10;
					o.Size = random.Next(3,7);
					break;

				case CelestialObjectType.Moon:
					o.MetalDensity = random.Next(3,22) / 10;
					o.FoodDensity = random.Next(0,10) / 10;
					o.Size = random.Next(2,5);
					break;

				case CelestialObjectType.Asteroid:
					o.MetalDensity = random.Next(5,35) / 10;
					o.FoodDensity = random.Next(0,5) / 10;
					o.Size = random.Next(1, 4);
					break;
			}
			return o;
		}