public static int ChildAge(RootPerson parent1, Person parent2, int remainingChildren) { if (remainingTwins > 0) { remainingTwins--; return(prevAge); } else { Person baseParent = GenerationHelpers.GetBaseParent(parent1, parent2); int maxAge = Mathf.Min(22, baseParent.age - 18, prevAge - 1); int minAge = Mathf.Max(0, remainingChildren); int age = Random.Range(minAge, maxAge + 1); if (remainingChildren > 0) { float det = Random.Range(0.0f, 1.0f); if (det <= 0.05f || baseParent.age == 18) { remainingTwins = 1; } else if (det <= 0.06f) { remainingTwins = 2; } } prevAge = age; return(age); } }
private float[] ChildOddMod(float[] input) { float modifier = 0.0f; if (root.wealth == Wealth.poor) { modifier += 0.01f; } if (root.relationship == Relationship.dating) { modifier += 0.01f; } else if (root.relationship == Relationship.married) { modifier += 0.02f; if (root.wealth == Wealth.wealthy) { modifier += 0.01f; } } if (root.relationship == Relationship.single) { modifier -= 0.02f; } else { if (GenerationHelpers.SABMatch(root, otherMembers[0])) { modifier -= 0.02f; } else { modifier += 0.01f; } if (root.gender != Gender.cisMale && root.gender != Gender.cisFemale) { modifier -= 0.01f; } else if (otherMembers[0].gender != Gender.cisMale && otherMembers[0].gender != Gender.cisFemale) { modifier -= 0.01f; } } float[] output = input; int count = 1; for (int i = input.Length - 1; i >= 0; i--) { output[i] -= modifier * count; count++; } return(output); }
static void Main(string[] args) { BCT.Execute(c => { }); while (true) { #region DEBUG //var caches = BulletinCollector.GetBulletinsByQuery(@"http://avito.ru", "iPhone"); //caches = BulletinCollector.GetBulletinsBySheets(caches); #endregion Console.Write("BC> "); var text = Console.ReadLine(); BCT.Execute(c => { var enterArgs = text.Split(new[] { " -" }, StringSplitOptions.None); var command = enterArgs[0]; switch (command) { case "TaskGeneration": GenerationHelpers.GenerationFull(); break; case "TaskGenerationClear": GenerationHelpers.GenerationClearData(); break; case "NextTask": var r2 = BackTaskHelper.Next(); r2 = r2; break; case "RunStatisticsTasks": StatisticsHelper.RunUserStatisticsTask(new Guid("43461B22-1BC4-4584-8DB8-FA930CB331C5")); break; case "ComputeStatisticsTasks": StatisticsHelper.ComputeUserStatistics(new Guid("43461B22-1BC4-4584-8DB8-FA930CB331C5")); break; case "GetCalls": StatisticsHelper.GetCallsStatistics(new Guid("43461B22-1BC4-4584-8DB8-FA930CB331C5")); break; case "help": Console.WriteLine(Help); break; default: Console.WriteLine("Command not found"); break; } }); } }
public static Gender ChildGender(RootPerson parent1, Person parent2) { if (GenerationHelpers.GenderTypeMatch(parent1, parent2)) { return(ChildGender(parent1)); } else { float det = Random.Range(0.0f, 1.0f); if (GenerationHelpers.IsNB(parent1) || GenerationHelpers.IsNB(parent2)) { if (det <= 0.35f) { return(Gender.cisMale); } else if (det <= 0.7f) { return(Gender.cisFemale); } else if (det <= 0.85f) { return(Gender.dmabNonBinary); } else { return(Gender.dfabNonBinary); } } else { if (det <= 0.45f) { return(Gender.cisMale); } else if (det <= 0.9f) { return(Gender.cisFemale); } else if (det <= 0.95f) { return(Gender.dmabNonBinary); } else { return(Gender.dfabNonBinary); } } } }
private void GenChild(RootPerson parent1, Person parent2, int remainingChildren) { gender = Generators.ChildGender(parent1, parent2); age = Generators.ChildAge(parent1, parent2, remainingChildren); float det = Random.Range(0.0f, 1.0f); if (GenerationHelpers.SABMatch(parent1, parent2) || det <= 0.1f) { skinColor = Generators.RootSkinColor(); hairColor = Generators.RootHairColor(skinColor); eyeColor = Generators.RootEyeColor(skinColor); } else { } }
private int GetAdditionalSeed <TType>(PropertyInfo prop) { return(GenerationHelpers.GetDeterministicHashCode((prop.Name + typeof(TType).Name))); }