vegapnk / Cumpilation

Fluid-Based RJW-Mechanics
GNU Affero General Public License v3.0
3 stars 1 forks source link

Use Consumable for Cum-Fluid #5

Open vegapnk opened 2 months ago

vegapnk commented 2 months ago

I got a patch send on Discord by Nalzurin for changing the Cum-Fluid to use a Consumable.

<?xml version="1.0" encoding="utf-8"?>
<Patch>

<Operation Class="PatchOperationConditional">
<xpath>Defs/rjw.SexFluidDef[defName="Cum"]/consumable</xpath>
<nomatch Class="PatchOperationAdd">
<xpath>Defs/rjw.SexFluidDef[defName="Cum"]</xpath>
<value>
        <consumable>Cumpilation_Cum</consumable>
</value>
</nomatch>
    <match Class="PatchOperationReplace">
      <xpath>Defs/rjw.SexFluidDef[defName="Cum"]/consumable</xpath>
      <value>
        <consumable>Cumpilation_Cum</consumable>
      </value>
    </match>
</Operation>
  <Operation Class="PatchOperationAdd">
    <xpath>Defs/rjw.SexFluidDef[defName="Cum"]</xpath>
    <value>
      <consumableFluidRatio>0.01</consumableFluidRatio>
    </value>
  </Operation>
  <Operation Class="PatchOperationRemove">
    <xpath>Defs/rjw.SexFluidDef[defName="Cum"]/baseNutrition</xpath>
  </Operation>
</Patch>

That would mean that a lot of the logic from consumption / progression can be put into the item only, and does not need to be duplicated.

Right now, it would have the issue that the food-thought is given twice and the record is also bumped twice. This very likely already happens for Insect-Jelly ...

On the other hand I might want to have this a bit separate, because e.g. drinking breast-milk should be handled different than handling cow milk. Well not very but I don't want to be too vegan here.

Relevant RJW-XML RJW - Example with Fluid

vegapnk commented 1 month ago

"Just" Adding this patch makes the donor run empty on food need, and the recipient not get any 🤔

If I do not add it, things work more as expected. This is likely (maybe?) just an issue with the default values.