Remove toy-assisted double prompts from mixed couples

This commit is contained in:
2026-06-24 22:37:09 +02:00
parent f334506a43
commit 63aad302f4
2 changed files with 27 additions and 20 deletions
-15
View File
@@ -461,11 +461,6 @@
"min_people": 2, "min_people": 2,
"max_people": 2 "max_people": 2
}, },
{
"text": "toy-assisted second contact aligned behind the body",
"min_people": 2,
"max_people": 2
},
{ {
"text": "stacked bodies in close contact", "text": "stacked bodies in close contact",
"min_people": 3 "min_people": 3
@@ -518,16 +513,6 @@
"cast": "women_only", "cast": "women_only",
"min_people": 2 "min_people": 2
}, },
{
"text": "penis and toy double penetration",
"cast": "mixed",
"min_people": 2
},
{
"text": "toy-assisted vaginal and anal penetration at the same time",
"cast": "mixed",
"min_people": 2
},
{ {
"text": "double anal penetration between men", "text": "double anal penetration between men",
"cast": "men_only", "cast": "men_only",
+27 -5
View File
@@ -575,11 +575,33 @@ def _cast_requirement_matches(requirement: str, women_count: int, men_count: int
return True return True
def _is_toy_assisted_double_couple_text(text: str) -> bool:
text = text.lower()
if "toy" not in text:
return False
return any(
token in text
for token in (
"double penetration",
"double-penetration",
"vaginal and anal penetration",
"second penetration point",
"second point of contact",
"second contact",
)
)
def _heuristic_cast_compatible(text: str, women_count: int, men_count: int) -> bool: def _heuristic_cast_compatible(text: str, women_count: int, men_count: int) -> bool:
text = text.lower() text = text.lower()
if not text: if not text:
return True return True
total = women_count + men_count total = women_count + men_count
if total == 2 and women_count == 1 and men_count == 1:
if "{double_act}" in text:
return False
if _is_toy_assisted_double_couple_text(text):
return False
if total == 1: if total == 1:
solo_blocked_terms = ( solo_blocked_terms = (
"partner", "partner",
@@ -3791,15 +3813,15 @@ def _role_graph(
graph = f"{man} thrusts his penis into {woman} while {third} adds a second penetration point from the front." graph = f"{man} thrusts his penis into {woman} while {third} adds a second penetration point from the front."
else: else:
if "bent-over" in item_text or "bent over" in item_text: if "bent-over" in item_text or "bent over" in item_text:
graph = f"{woman} is bent forward with hips raised while {man} is positioned behind her; {man}'s penis thrusts into {woman} while a toy is positioned at the second penetration point." graph = f"{woman} is bent forward with hips raised while {man} is positioned behind her and thrusts his penis into her ass."
elif "face-down" in item_text: elif "face-down" in item_text:
graph = f"{woman} lies face-down with hips raised while {man} is positioned behind her; {man}'s penis thrusts into {woman} while a toy is positioned at the second penetration point." graph = f"{woman} lies face-down with hips raised while {man} is positioned behind her and thrusts his penis into her ass."
elif "standing" in item_text: elif "standing" in item_text:
graph = f"{woman} stands braced with hips raised while {man} is positioned behind her; {man}'s penis thrusts into {woman} while a toy is positioned at the second penetration point." graph = f"{woman} stands braced with hips raised while {man} is positioned behind her and thrusts his penis into her ass."
elif "kneeling" in item_text: elif "kneeling" in item_text:
graph = f"{woman} kneels forward with hips raised while {man} is positioned behind her; {man}'s penis thrusts into {woman} while a toy is positioned at the second penetration point." graph = f"{woman} kneels forward with hips raised while {man} is positioned behind her and thrusts his penis into her ass."
else: else:
graph = f"{woman} is on all fours with hips raised while {man} is positioned behind her; {man}'s penis thrusts into {woman} while a toy is positioned at the second penetration point." graph = f"{woman} is on all fours with hips raised while {man} is positioned behind her and thrusts his penis into her ass."
elif people_count >= 3: elif people_count >= 3:
graph = f"{man} thrusts his penis into {woman} while {third} gives oral contact from the front." graph = f"{man} thrusts his penis into {woman} while {third} gives oral contact from the front."
else: else: