public float GeneticValue(GeneticKind kind) { float result = 0; switch (kind) { case GeneticKind.MoveSpeed: result = MoveSpeed; break; case GeneticKind.DetectRange: result = DetectRange; break; case GeneticKind.Hitpoints: result = Hitpoints; break; case GeneticKind.AttackRange: result = AttackRange; break; case GeneticKind.AttackSpeed: result = AttackSpeed; break; case GeneticKind.AttackDamage: result = AttackDamage; break; case GeneticKind.HarvestSpeed: result = HarvestSpeed; break; case GeneticKind.SpawnMonsters: result = SpawnMonsters; break; case GeneticKind.SpawnTime: result = SpawnTime; break; case GeneticKind.MonsterCount: result = MonsterCount; break; case GeneticKind.MonsterHitpoints: result = MonsterHitpoints; break; case GeneticKind.MonsterSpeed: result = MonsterSpeed; break; } return(result); }
public static IEnumerable <GeneticKind> GetGeneticKinds() { Array enumstrings = Enum.GetValues(typeof(GeneticKind)); foreach (var enumstring in enumstrings) { GeneticKind kind = (GeneticKind)enumstring; yield return(kind); } }
public void SetGeneticValue(GeneticKind kind, float value) { switch (kind) { case GeneticKind.MoveSpeed: MoveSpeed = value; break; case GeneticKind.DetectRange: DetectRange = value; break; case GeneticKind.Hitpoints: Hitpoints = value; break; case GeneticKind.AttackRange: AttackRange = value; break; case GeneticKind.AttackSpeed: AttackSpeed = value; break; case GeneticKind.AttackDamage: AttackDamage = value; break; case GeneticKind.HarvestSpeed: HarvestSpeed = value; break; case GeneticKind.SpawnMonsters: SpawnMonsters = value; break; case GeneticKind.SpawnTime: SpawnTime = value; break; case GeneticKind.MonsterCount: MonsterCount = value; break; case GeneticKind.MonsterHitpoints: MonsterHitpoints = value; break; case GeneticKind.MonsterSpeed: MonsterSpeed = value; break; } }
public float GeneticValue(List <GeneticProps> genetic, GeneticKind kind) { float result = 0; foreach (GeneticProps props in genetic) { foreach (GeneticValue value in props.Genetics) { if (value.Kind == kind) { result += GeneticValue(kind); } } } return(result); }
public void AddGeneticValue(GeneticKind kind, float value) { SetGeneticValue(kind, GeneticValue(kind) + value); }