mirror of
				https://github.com/vegapnk/RJW-Genes.git
				synced 2024-08-15 00:23:31 +00:00 
			
		
		
		
	Added a fervent Ovipositor Gene, making much more eggs
This commit is contained in:
		
							parent
							
								
									1d9041a11f
								
							
						
					
					
						commit
						e62dcd23ee
					
				
					 4 changed files with 91 additions and 37 deletions
				
			
		| 
						 | 
				
			
			@ -13,19 +13,18 @@
 | 
			
		|||
    <biostatMet>-1</biostatMet>
 | 
			
		||||
  </GeneDef>
 | 
			
		||||
  
 | 
			
		||||
  
 | 
			
		||||
    <GeneDef>
 | 
			
		||||
        <defName>rjw_genes_zoophile</defName>
 | 
			
		||||
        <label>Zoophile</label>
 | 
			
		||||
        <displayCategory>rjw_genes_breeding</displayCategory>
 | 
			
		||||
        <description>Xenotypes with this Gene are Zoophile.</description>
 | 
			
		||||
        <iconPath>Genes/Icons/Zoophile</iconPath>
 | 
			
		||||
        <displayOrderInCategory>54</displayOrderInCategory>    
 | 
			
		||||
        <forcedTraits>
 | 
			
		||||
            <li>
 | 
			
		||||
                <def>Zoophile</def>
 | 
			
		||||
            </li>
 | 
			
		||||
        </forcedTraits>
 | 
			
		||||
    </GeneDef>
 | 
			
		||||
  <GeneDef>
 | 
			
		||||
      <defName>rjw_genes_zoophile</defName>
 | 
			
		||||
      <label>Zoophile</label>
 | 
			
		||||
      <displayCategory>rjw_genes_breeding</displayCategory>
 | 
			
		||||
      <description>Xenotypes with this Gene are Zoophile.</description>
 | 
			
		||||
      <iconPath>Genes/Icons/Zoophile</iconPath>
 | 
			
		||||
      <displayOrderInCategory>54</displayOrderInCategory>    
 | 
			
		||||
      <forcedTraits>
 | 
			
		||||
          <li>
 | 
			
		||||
              <def>Zoophile</def>
 | 
			
		||||
          </li>
 | 
			
		||||
      </forcedTraits>
 | 
			
		||||
  </GeneDef>
 | 
			
		||||
 | 
			
		||||
</Defs>
 | 
			
		||||
| 
						 | 
				
			
			@ -166,28 +166,40 @@
 | 
			
		|||
		<biostatMet>-1</biostatMet>
 | 
			
		||||
	</GeneDef>
 | 
			
		||||
 | 
			
		||||
		
 | 
			
		||||
	<GeneDef>
 | 
			
		||||
		<defName>rjw_genes_insectincubator</defName>
 | 
			
		||||
		<label>InsectIncubator</label>
 | 
			
		||||
		<geneClass>RJW_Genes.Gene_InsectIncubator</geneClass>
 | 
			
		||||
		<description>Pawns with this gene are able to host more insect eggs, hatch them faster and fertilize any inserted egg.</description>
 | 
			
		||||
		<iconPath>Genes/Icons/More_Egg_Space</iconPath>
 | 
			
		||||
		<displayOrderInCategory>52</displayOrderInCategory>
 | 
			
		||||
		<displayCategory>rjw_genes_hive</displayCategory>
 | 
			
		||||
		<biostatCpx>1</biostatCpx>
 | 
			
		||||
		<biostatMet>-1</biostatMet>
 | 
			
		||||
	</GeneDef>
 | 
			
		||||
 | 
			
		||||
	<GeneDef>
 | 
			
		||||
		<defName>rjw_genes_insectbreeder</defName>
 | 
			
		||||
		<label>InsectBreeder</label>	
 | 
			
		||||
		<description>Pawns with this gene are able to fertilize eggs with any fertile penis.</description>
 | 
			
		||||
		<iconPath>World/WorldObjects/Expanding/Insects</iconPath>
 | 
			
		||||
		<displayOrderInCategory>53</displayOrderInCategory>
 | 
			
		||||
		<displayCategory>rjw_genes_hive</displayCategory>
 | 
			
		||||
		<biostatCpx>1</biostatCpx>
 | 
			
		||||
		<biostatMet>-1</biostatMet>
 | 
			
		||||
	</GeneDef>
 | 
			
		||||
	
 | 
			
		||||
  <GeneDef>
 | 
			
		||||
    <defName>rjw_genes_insectincubator</defName>
 | 
			
		||||
    <label>Insect Incubator</label>	
 | 
			
		||||
	<geneClass>RJW_Genes.Gene_InsectIncubator</geneClass>
 | 
			
		||||
    <description>Pawns with this gene are able to hold more insect eggs.</description>
 | 
			
		||||
    <iconPath>Genes/Icons/More_Egg_Space</iconPath>
 | 
			
		||||
    <displayOrderInCategory>52</displayOrderInCategory>
 | 
			
		||||
    <displayCategory>rjw_genes_hive</displayCategory>
 | 
			
		||||
    <biostatCpx>1</biostatCpx>
 | 
			
		||||
    <biostatMet>-1</biostatMet>
 | 
			
		||||
  </GeneDef>
 | 
			
		||||
 | 
			
		||||
  <GeneDef>
 | 
			
		||||
    <defName>rjw_genes_insectbreeder</defName>
 | 
			
		||||
    <label>Insect Breeder</label>	
 | 
			
		||||
    <description>Pawns with this gene are able to fertilize eggs with any fertile penis.</description>
 | 
			
		||||
    <iconPath>World/WorldObjects/Expanding/Insects</iconPath>
 | 
			
		||||
    <displayOrderInCategory>53</displayOrderInCategory>
 | 
			
		||||
	<displayCategory>rjw_genes_hive</displayCategory>
 | 
			
		||||
    <biostatCpx>1</biostatCpx>
 | 
			
		||||
    <biostatMet>-1</biostatMet>
 | 
			
		||||
  </GeneDef>
 | 
			
		||||
  
 | 
			
		||||
  <GeneDef>
 | 
			
		||||
    <defName>rjw_genes_fervent_ovipositor</defName>
 | 
			
		||||
    <label>Fervent Ovipositor</label>	
 | 
			
		||||
	<geneClass>RJW_Genes.Gene_FerventOvipositor</geneClass>
 | 
			
		||||
    <description>Pawns that have a female (egg producing) ovipositor produce eggs at drastically increased speed.</description>
 | 
			
		||||
    <iconPath>World/WorldObjects/Expanding/Insects</iconPath>
 | 
			
		||||
    <displayOrderInCategory>55</displayOrderInCategory>
 | 
			
		||||
	<displayCategory>rjw_genes_hive</displayCategory>
 | 
			
		||||
    <biostatCpx>1</biostatCpx>
 | 
			
		||||
    <biostatMet>-1</biostatMet>
 | 
			
		||||
  </GeneDef>
 | 
			
		||||
  
 | 
			
		||||
</Defs>
 | 
			
		||||
							
								
								
									
										42
									
								
								Source/Genes/Hive/Genes/Gene_FerventOvipositor.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								Source/Genes/Hive/Genes/Gene_FerventOvipositor.cs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,42 @@
 | 
			
		|||
using System;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using System.Text;
 | 
			
		||||
using System.Threading.Tasks;
 | 
			
		||||
 | 
			
		||||
using Verse;
 | 
			
		||||
using rjw;
 | 
			
		||||
 | 
			
		||||
namespace RJW_Genes
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    /// <summary>
 | 
			
		||||
    /// Manages the rjw_genes_fervent_ovipositor to grow eggs much faster.
 | 
			
		||||
    /// 
 | 
			
		||||
    /// TODO: Move the Multiplier into XML 
 | 
			
		||||
    /// TODO: This gene only works after the first egg, the first egg for two new pawns spawns at the same time (strange). 
 | 
			
		||||
    /// </summary>
 | 
			
		||||
    public class Gene_FerventOvipositor : Gene
 | 
			
		||||
    {
 | 
			
		||||
 | 
			
		||||
        const int MULTIPLIER = 3; // Tick 3 times as much, making a pawn with this Gene Produce Eggs 4 times as fast as the normal.
 | 
			
		||||
 | 
			
		||||
        public override void Tick()
 | 
			
		||||
        {
 | 
			
		||||
            base.Tick();
 | 
			
		||||
 | 
			
		||||
            if (pawn == null) return;
 | 
			
		||||
 | 
			
		||||
            Hediff_PartBaseNatural OvipositorF = (Hediff_PartBaseNatural) pawn.health.hediffSet.GetFirstHediffOfDef(rjw.Genital_Helper.ovipositorF);
 | 
			
		||||
 | 
			
		||||
            if (OvipositorF == null) return;
 | 
			
		||||
 | 
			
		||||
            OvipositorF.nextEggTick = Math.Max(OvipositorF.nextEggTick - MULTIPLIER, -1);
 | 
			
		||||
 | 
			
		||||
            // DevNote: I first had a for-loop calling OviPositorF.tick(), but I fear that would be a performance sink.
 | 
			
		||||
            // Also, it would double other aspects as well, such as bleeding out through your insect-PP or dropping out the eggs.
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -44,6 +44,7 @@
 | 
			
		|||
    <Compile Include="Genes\Breeding\Gene_MechBreeder.cs" />
 | 
			
		||||
    <Compile Include="Genes\Breeding\PatchMechBirth.cs" />
 | 
			
		||||
    <Compile Include="Genes\Hive\Defs\HiveOffspringChanceDef.cs" />
 | 
			
		||||
    <Compile Include="Genes\Hive\Genes\Gene_FerventOvipositor.cs" />
 | 
			
		||||
    <Compile Include="Genes\Hive\Genes\Gene_InsectIncubator.cs" />
 | 
			
		||||
    <Compile Include="Genes\Hive\Patches\Patch_InsectBreeder_EggFertilization.cs" />
 | 
			
		||||
    <Compile Include="Genes\Hive\Patches\Patch_InsectIncubator_PregnancyHelper.cs" />
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue