From 46436a9e04035ce05076b1b6ef74dc4c0d19cdf1 Mon Sep 17 00:00:00 2001 From: Shabakur Date: Sun, 15 Jan 2023 13:30:33 +0100 Subject: [PATCH] Implemented racegroups as list Added variable racegroups, which allows multiple racegroups to be selected (usefull for rjw race support). Racegroup is still present for backward compatibility. --- Common/Assemblies/Rjw-Genes.dll | Bin 43008 -> 43008 bytes .../RaceGeneDefs_Vanilla_Racegroups.xml | 48 +++++++++++++++--- .../RaceGeneDefs/RaceGeneDefs_template.xml | 23 ++++++--- Source/Animal_Inheritance/RaceGeneDef.cs | 4 +- .../Animal_Inheritance/RaceGeneDef_Helper.cs | 6 ++- 5 files changed, 61 insertions(+), 20 deletions(-) diff --git a/Common/Assemblies/Rjw-Genes.dll b/Common/Assemblies/Rjw-Genes.dll index 5785b36754dcabce37b6476f1cecfe21c7590f3d..d3be5b009b7e3c02bc958f276f42746fa19afb84 100644 GIT binary patch delta 8920 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 delta 8816 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 diff --git a/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml b/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml index cfd2154..6148308 100644 --- a/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml +++ b/Common/Defs/RaceGeneDefs/RaceGeneDefs_Vanilla_Racegroups.xml @@ -2,7 +2,12 @@ Canine - Canine_Group + +

  • Canine_Group
  • +
  • CanineAnimal
  • +
  • CanineSingleGenderAnimal
  • +
  • CanineSkinAnimal
  • +
  • Ears_Floppy @@ -38,7 +43,11 @@ Insect - Insect_Group + +
  • Insect_Group
  • +
  • ArthropodOvipositorAnimal
  • +
  • ArthropodOvipositorHornyAnimal
  • +
  • Beauty_Ugly @@ -73,7 +82,14 @@ Feline - Feline_Group + +
  • Feline_Group
  • +
  • FelineAnimal
  • +
  • FelineHornyAnimal
  • +
  • FelineSingleGenderAnimal
  • +
  • AA_SandProwlerAnimal
  • + +
  • Tail_Furry @@ -108,7 +124,10 @@ Equine - Equine_Group + +
  • Equine_Group
  • +
  • HorseAnimal
  • +
  • Furskin @@ -143,7 +162,12 @@ Dragon - Dragon_Group + +
  • Dragon_Group
  • +
  • ThrumboAnimal
  • +
  • DragonAnimal
  • +
  • DragonSingleGenderAnimal
  • +
  • Unstoppable @@ -166,7 +190,7 @@ 0.1
  • - rjw_genes_draconic_genitalia + rjw_genes_dragon_genitalia 0.6
  • @@ -190,7 +214,12 @@ Rodent - Rodent_Group + +
  • Rodent_Group
  • +
  • RodentAnimal
  • +
  • RodentSingleGenderAnimal
  • +
  • DragonSingleGenderAnimal
  • +
  • Furskin @@ -225,7 +254,10 @@ Racoon - Raccon_Group + +
  • Raccon_Group
  • +
  • RaccoonAnimal
  • +
  • Furskin diff --git a/Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml b/Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml index 29e92c6..b092257 100644 --- a/Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml +++ b/Common/Defs/RaceGeneDefs/RaceGeneDefs_template.xml @@ -1,12 +1,17 @@ - - +this is to disable the xml, remove it for your own xml --> - + + +this is to disable the xml, remove it for your own xml --> \ No newline at end of file diff --git a/Source/Animal_Inheritance/RaceGeneDef.cs b/Source/Animal_Inheritance/RaceGeneDef.cs index 02ac62d..5c4b0ad 100644 --- a/Source/Animal_Inheritance/RaceGeneDef.cs +++ b/Source/Animal_Inheritance/RaceGeneDef.cs @@ -11,11 +11,11 @@ namespace RJW_BGS public class RaceGeneDef : Def { public int priority; - public String raceGroup; + public string raceGroup; //keeping this for backwards compatibility + public List raceGroups; //racegroup, but in list form so multiple can be entered, preference to use this over racegroup public List raceNames; public List pawnKindNames; public List genes; - //public List genechances; public String hybridName; } } diff --git a/Source/Animal_Inheritance/RaceGeneDef_Helper.cs b/Source/Animal_Inheritance/RaceGeneDef_Helper.cs index 680b155..5264e17 100644 --- a/Source/Animal_Inheritance/RaceGeneDef_Helper.cs +++ b/Source/Animal_Inheritance/RaceGeneDef_Helper.cs @@ -56,8 +56,10 @@ namespace RJW_BGS { raceGroupDefs = allDefs.Where(delegate (RaceGeneDef group) { - String raceGroupDefName = group.raceGroup; - return raceGroupDefName != null && raceGroupDefName == raceGroupDef.defName; + string raceGroupDefName = group.raceGroup; + List list_raceGroupDefName = group.raceGroups; + return (raceGroupDefName != null && raceGroupDefName == raceGroupDef.defName) + || (list_raceGroupDefName != null && list_raceGroupDefName.Contains(raceGroupDef.defName)); }).ToList(); } if (raceGroupDefs.Count() > 0)