diff --git a/RJW-Genes-Addons/Common/Assemblies/shabe_genesaddons.dll b/RJW-Genes-Addons/Common/Assemblies/shabe_genesaddons.dll index 50b9298..d8676e6 100644 Binary files a/RJW-Genes-Addons/Common/Assemblies/shabe_genesaddons.dll and b/RJW-Genes-Addons/Common/Assemblies/shabe_genesaddons.dll differ diff --git a/RJW-Genes-Addons/Common/Defs/GeneDefs/GeneDefs_AbilityGenes.xml b/RJW-Genes-Addons/Common/Defs/GeneDefs/GeneDefs_AbilityGenes.xml index ebb9102..9824cf5 100644 --- a/RJW-Genes-Addons/Common/Defs/GeneDefs/GeneDefs_AbilityGenes.xml +++ b/RJW-Genes-Addons/Common/Defs/GeneDefs/GeneDefs_AbilityGenes.xml @@ -1,15 +1,5 @@ - - - rjw_genes_mechbreeder - - Pawns with this gene are able to birth mechanoids unharmed. - World/WorldObjects/Expanding/Mechanoids - 51 - Reproduction - - rjw_genes_pussyhealer @@ -18,10 +8,10 @@ UI/Icons/Genes/Gene_Coagulate Ability -
  • Coagulate
  • +
  • PussyHeal
  • - Coagulate + PussyHeal -1 3 diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/8711bc8a-ff12-4161-a7a7-bd9c056971b5.vsidx b/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/8711bc8a-ff12-4161-a7a7-bd9c056971b5.vsidx new file mode 100644 index 0000000..bbcf74e Binary files /dev/null and b/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/8711bc8a-ff12-4161-a7a7-bd9c056971b5.vsidx differ diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/e828878a-e0df-42b8-b9a4-703059bc10a3.vsidx b/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/e828878a-e0df-42b8-b9a4-703059bc10a3.vsidx deleted file mode 100644 index 72af7aa..0000000 Binary files a/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/FileContentIndex/e828878a-e0df-42b8-b9a4-703059bc10a3.vsidx and /dev/null differ diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/v17/.suo b/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/v17/.suo index 8e3d0bb..239e672 100644 Binary files a/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/v17/.suo and b/RJW-Genes-Addons/Source/shabe_genesaddons/.vs/shabe_genesaddons/v17/.suo differ diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/CompAbilityEffect_PussyHeal.cs b/RJW-Genes-Addons/Source/shabe_genesaddons/CompAbilityEffect_PussyHeal.cs new file mode 100644 index 0000000..65af326 --- /dev/null +++ b/RJW-Genes-Addons/Source/shabe_genesaddons/CompAbilityEffect_PussyHeal.cs @@ -0,0 +1,56 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Verse; +using UnityEngine; +using RimWorld; + +namespace shabe_genesaddons +{ + public class CompAbilityEffect_PussyHeal : CompAbilityEffect + { + private new CompProperties_AbilityCoagulate Props + { + get + { + return (CompProperties_AbilityCoagulate)this.props; + } + } + public override void Apply(LocalTargetInfo target, LocalTargetInfo dest) + { + base.Apply(target, dest); + Pawn pawn = target.Pawn; + if (pawn == null) + { + return; + } + int num = 0; + List hediffs = pawn.health.hediffSet.hediffs; + for (int i = hediffs.Count - 1; i >= 0; i--) + { + if ((hediffs[i] is Hediff_Injury || hediffs[i] is Hediff_MissingPart) && hediffs[i].TendableNow(false)) + { + hediffs[i].Tended(this.Props.tendQualityRange.RandomInRange, this.Props.tendQualityRange.TrueMax, 1); + num++; + } + } + if (num > 0) + { + MoteMaker.ThrowText(pawn.DrawPos, pawn.Map, "NumWoundsTended".Translate(num), 3.65f); + } + FleckMaker.AttachedOverlay(pawn, FleckDefOf.FlashHollow, Vector3.zero, 1.5f, -1f); + } + + public override bool Valid(LocalTargetInfo target, bool throwMessages = false) + { + Pawn pawn = target.Pawn; + if (pawn != null) + { + AbilityUtility.ValidateHasTendableWound(pawn, throwMessages, this.parent); + } + return base.Valid(target, throwMessages); + } + } +} diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/CompProperties_AbilityPussyHeal.cs b/RJW-Genes-Addons/Source/shabe_genesaddons/CompProperties_AbilityPussyHeal.cs new file mode 100644 index 0000000..09ba23d --- /dev/null +++ b/RJW-Genes-Addons/Source/shabe_genesaddons/CompProperties_AbilityPussyHeal.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Verse; +using RimWorld; + +namespace shabe_genesaddons +{ + // Token: 0x02000F2B RID: 3883 + public class CompProperties_AbilityPussyHeal : CompProperties_AbilityEffect + { + // Token: 0x06005C32 RID: 23602 RVA: 0x001F45C9 File Offset: 0x001F27C9 + public CompProperties_AbilityPussyHeal() + { + this.compClass = typeof(CompAbilityEffect_Coagulate); + } + + // Token: 0x0400386B RID: 14443 + public FloatRange tendQualityRange; + } +} diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.csproj.CoreCompileInputs.cache b/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.csproj.CoreCompileInputs.cache index 21dede3..b6a2e64 100644 --- a/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.csproj.CoreCompileInputs.cache +++ b/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -c1c0f4fe54bc76d32a3a02d0a8c80a72c6c5e818 +5a8b4a39089fb64409d7431a53405d599f8307c0 diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.dll b/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.dll index 50b9298..d8676e6 100644 Binary files a/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.dll and b/RJW-Genes-Addons/Source/shabe_genesaddons/obj/Debug/shabe_genesaddons.dll differ diff --git a/RJW-Genes-Addons/Source/shabe_genesaddons/shabe_genesaddons.csproj b/RJW-Genes-Addons/Source/shabe_genesaddons/shabe_genesaddons.csproj index f16785c..7ace0e7 100644 --- a/RJW-Genes-Addons/Source/shabe_genesaddons/shabe_genesaddons.csproj +++ b/RJW-Genes-Addons/Source/shabe_genesaddons/shabe_genesaddons.csproj @@ -57,6 +57,8 @@ + +