Skip to content
Snippets Groups Projects
Commit 65aada83 authored by Ed86's avatar Ed86
Browse files

fix for cum on body not being applied for futas

cum on body no longer applied on receiving slimes, goes into their food need
parent d7cda3e2
No related branches found
No related tags found
No related merge requests found
......@@ -361,12 +361,12 @@ namespace rjw
Pawn giver, receiver;
//dispenser of the seed
if (pawn.gender == Gender.Male || pawn.RaceProps.IsMechanoid || xxx.is_insect(pawn))
if (Genital_Helper.has_penis(pawn) || xxx.is_mechanoid(pawn) || xxx.is_insect(pawn))
{
giver = pawn;
receiver = partner;
}
else if (partner != null && (partner.gender == Gender.Male || partner.RaceProps.IsMechanoid || xxx.is_insect(partner)))
else if (partner != null && (Genital_Helper.has_penis(partner) || xxx.is_mechanoid(partner) || xxx.is_insect(partner)))
{
giver = partner;
receiver = pawn;
......@@ -376,6 +376,9 @@ namespace rjw
return;
}
//slimes do not waste fluids?
//if (xxx.is_slime(giver)) return;
//determine entity:
int entityType = SemenHelper.CUM_NORMAL;
if (xxx.is_mechanoid(giver))
......@@ -502,12 +505,37 @@ namespace rjw
if (cumAmount > 0)
{
SemenHelper.cumOn(giver, genitals, cumAmount * 0.3f, giver, entityType);//cum on self - smaller amount
foreach (BodyPartRecord bpr in targetParts)
if (xxx.is_slime(receiver))
{
//slime absorb cum
//this needs balancing, since cumamount ranges 0-10(?) which is fine for cum/hentai but not very realistic for feeding
//using TransferNutrition for now
//Log.Message("cumAmount " + cumAmount);
//float nutrition_amount = cumAmount/10;
Need_Food need = need = giver.needs.TryGetNeed<Need_Food>();
if (need == null)
{
//Log.Message("xxx::TransferNutrition() " + xxx.get_pawnname(pawn) + " doesn't track nutrition in itself, probably shouldn't feed the others");
return;
}
if (receiver?.needs?.TryGetNeed<Need_Food>() != null)
{
//Log.Message("xxx::TransferNutrition() " + xxx.get_pawnname(partner) + " can receive");
float nutrition_amount = Math.Min(need.MaxLevel / 15f, need.CurLevel); //body size is taken into account implicitly by need.MaxLevel
receiver.needs.food.CurLevel += nutrition_amount;
}
}
else
{
if (bpr != null)
SemenHelper.cumOn(giver, genitals, cumAmount * 0.3f, giver, entityType);//cum on self - smaller amount
foreach (BodyPartRecord bpr in targetParts)
{
SemenHelper.cumOn(receiver, bpr, cumAmount, giver, entityType);//cum on partner
if (bpr != null)
{
SemenHelper.cumOn(receiver, bpr, cumAmount, giver, entityType);//cum on partner
}
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment