Start of Cocoon Gene, minor fixes to cockeater

This commit is contained in:
Vegapnk 2023-04-10 12:33:05 +02:00
parent 88f588631c
commit fead22f28c
12 changed files with 253 additions and 6 deletions

View file

@ -4,7 +4,7 @@
<defName>rjw_genes_cockeater</defName>
<label>Eat Cock</label>
<description>Eat the cock of another pawn, restoring fertilin based on the size of the cock.</description>
<iconPath>Things/Mote/Heart</iconPath>
<iconPath>Genes/Icons/cockeater</iconPath>
<stunTargetWhileCasting>true</stunTargetWhileCasting>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
@ -27,8 +27,7 @@
</targetParams>
</verbProperties>
<comps>
<li Class="RJW_Genes.CompProperties_AbilityCockEater"> <!-- namespace needs to be changed when copied to another mod-->
</li>
<li Class="RJW_Genes.CompProperties_AbilityCockEater"/> <!-- namespace needs to be changed when copied to another mod-->
</comps>
</AbilityDef>
</Defs>

View file

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<AbilityDef ParentName="AbilityTouchBase">
<defName>rjw_genes_cocoonweaver</defName>
<label>Cocoon</label>
<description>Weaves the victim into a (self-sustaining) cocoon. The victim cannot move, but can be bred.</description>
<iconPath>Things/Mote/Heart</iconPath>
<stunTargetWhileCasting>true</stunTargetWhileCasting>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<warmupMote>Mote_CocoonStencil</warmupMote>
<warmupEffecter>CocoonWeave</warmupEffecter>
<jobDef>CastAbilityOnThingMelee</jobDef>
<displayOrder>403</displayOrder>
<verbProperties>
<verbClass>Verb_CastAbilityTouch</verbClass>
<drawAimPie>false</drawAimPie>
<range>-1</range>
<warmupTime>15</warmupTime>
<targetParams>
<canTargetAnimals>true</canTargetAnimals>
<canTargetSelf>false</canTargetSelf>
<canTargetBuildings>false</canTargetBuildings>
<canTargetMechs>false</canTargetMechs>
<canTargetBloodfeeders>true</canTargetBloodfeeders>
</targetParams>
</verbProperties>
<comps>
<li Class="RJW_Genes.CompProperties_AbilityCocoonWeaver"/>
</comps>
</AbilityDef>
</Defs>

View file

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<EffecterDef>
<defName>CocoonWeave</defName>
<children>
<li>
<subEffecterClass>SubEffecter_SprayerChance</subEffecterClass>
<moteDef>Mote_WeaveA</moteDef>
<burstCount>1</burstCount>
<chancePerTick>0.05</chancePerTick>
<scale>0.25~0.5</scale>
<spawnLocType>RandomDrawPosOnTarget</spawnLocType>
<attachToSpawnThing>true</attachToSpawnThing>
</li>
<li>
<subEffecterClass>SubEffecter_SprayerChance</subEffecterClass>
<moteDef>Mote_WeaveB</moteDef>
<burstCount>1</burstCount>
<chancePerTick>0.05</chancePerTick>
<scale>0.25~0.5</scale>
<spawnLocType>RandomDrawPosOnTarget</spawnLocType>
<attachToSpawnThing>true</attachToSpawnThing>
</li>
</children>
</EffecterDef>
<ThingDef ParentName="MoteBase" Name="MoteCocoonBase" Abstract="True">
<thingClass>MoteAttached</thingClass>
<altitudeLayer>MoteOverhead</altitudeLayer>
<mote>
<solidTime>0.45</solidTime>
<fadeInTime>0.1</fadeInTime>
<fadeOutTime>0.2</fadeOutTime>
</mote>
<graphicData>
<graphicClass>Graphic_MoteWithAgeSecs</graphicClass>
<shaderType>PawnSilhouetteStencilColorAnimated</shaderType>
<drawSize>(0.65, 0.65)</drawSize>
<shaderParameters>
<_NumFrames>5</_NumFrames>
<_FramesPerSec>7.5</_FramesPerSec>
</shaderParameters>
</graphicData>
</ThingDef>
<ThingDef ParentName="MoteBase">
<defName>Mote_CocoonStencil</defName>
<thingClass>MoteAttached</thingClass>
<altitudeLayer>Terrain</altitudeLayer>
<mote>
<fadeInTime>0.1</fadeInTime>
<fadeOutTime>0.1</fadeOutTime>
<solidTime>999999</solidTime>
<needsMaintenance>True</needsMaintenance>
</mote>
<graphicData>
<graphicClass>Graphic_PawnBodySilhouette</graphicClass>
<shaderType>PawnSilhouetteStencil</shaderType>
<texPath>Things/Mote/Transparent</texPath>
</graphicData>
</ThingDef>
<ThingDef ParentName="MoteCocoonBase">
<defName>Mote_WeaveA</defName>
<graphicData>
<texPath>Things/Mote/Cocoon/WeaveA</texPath>
</graphicData>
</ThingDef>
<ThingDef ParentName="MoteCocoonBase">
<defName>Mote_WeaveB</defName>
<graphicData>
<texPath>Things/Mote/Cocoon/WeaveB</texPath>
</graphicData>
</ThingDef>
</Defs>

View file

@ -67,6 +67,11 @@
<displayPriorityInXenotype>8</displayPriorityInXenotype>
</GeneCategoryDef>
<GeneCategoryDef>
<defName>rjw_genes_hive</defName>
<label>Hive</label>
<displayPriorityInXenotype>7</displayPriorityInXenotype>
</GeneCategoryDef>
</Defs>

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<GeneDef>
<defName>rjw_genes_cocoonweaver</defName>
<label>Cocoon Weaver</label>
<labelShortAdj>cocooner</labelShortAdj>
<description>Carriers of this gene can produce a cocoon to prepare helpless victims for breeding.</description>
<iconPath>Things/Mote/Heart</iconPath>
<displayOrderInCategory>11</displayOrderInCategory>
<displayCategory>rjw_genes_hive</displayCategory>
<abilities>
<li>rjw_genes_cocoonweaver</li>
</abilities>
<descriptionHyperlinks>
<AbilityDef>rjw_genes_cocoonweaver</AbilityDef>
</descriptionHyperlinks>
<biostatCpx>1</biostatCpx>
<biostatMet>-1</biostatMet>
</GeneDef>
</Defs>