Improve POV face-sitting wording
This commit is contained in:
+20
-1
@@ -471,6 +471,16 @@ def _pov_hardcore_pose_sentence(
|
|||||||
def outercourse_sentence(base: str) -> str:
|
def outercourse_sentence(base: str) -> str:
|
||||||
return _clean(base).rstrip(".")
|
return _clean(base).rstrip(".")
|
||||||
|
|
||||||
|
if (
|
||||||
|
"face-sitting" in context
|
||||||
|
or "face sitting" in context
|
||||||
|
or ("straddles" in context and "face" in context and "pussy" in context)
|
||||||
|
):
|
||||||
|
return outercourse_sentence(
|
||||||
|
"The woman is above the camera in a close first-person underview, straddling the viewer's face with her thighs on both sides of his head; "
|
||||||
|
"her pussy is directly over the viewer's mouth in the lower foreground, tongue contact visible from below"
|
||||||
|
)
|
||||||
|
|
||||||
if _is_outercourse_text(context, action_lower):
|
if _is_outercourse_text(context, action_lower):
|
||||||
if any(term in context for term in ("boobjob", "titjob", "breast sex", "breast-sex")):
|
if any(term in context for term in ("boobjob", "titjob", "breast sex", "breast-sex")):
|
||||||
return outercourse_sentence(
|
return outercourse_sentence(
|
||||||
@@ -1763,6 +1773,11 @@ def _composition_phrase(
|
|||||||
action_lower = _clean(action).lower()
|
action_lower = _clean(action).lower()
|
||||||
composition_lower = composition.lower()
|
composition_lower = composition.lower()
|
||||||
detail_density = _normalize_hardcore_detail_density(detail_density)
|
detail_density = _normalize_hardcore_detail_density(detail_density)
|
||||||
|
if "first-person underview" in action_lower or "straddling the viewer's face" in action_lower:
|
||||||
|
if any(token in composition_lower for token in ("mirror-reflected", "oral scene", "face and body visible")):
|
||||||
|
return (
|
||||||
|
f"{prefix} close first-person underview with the woman's thighs framing the camera and the oral contact centered"
|
||||||
|
)
|
||||||
oral_pose_tokens = (
|
oral_pose_tokens = (
|
||||||
"kneeling oral",
|
"kneeling oral",
|
||||||
"side-lying oral",
|
"side-lying oral",
|
||||||
@@ -1833,7 +1848,11 @@ def _expression_phrase(expression: Any) -> str:
|
|||||||
expression = _clean(expression)
|
expression = _clean(expression)
|
||||||
if not expression:
|
if not expression:
|
||||||
return ""
|
return ""
|
||||||
if ";" in expression or re.search(r"\b(?:Woman|Man) [A-Z] has\b|\bthe (?:woman|man) has\b", expression):
|
if ";" in expression or re.search(
|
||||||
|
r"\b(?:Woman|Man) [A-Z] has\b|\bthe (?:woman|man) has\b",
|
||||||
|
expression,
|
||||||
|
flags=re.IGNORECASE,
|
||||||
|
):
|
||||||
return f"Expressions: {expression}"
|
return f"Expressions: {expression}"
|
||||||
return f"with {expression}"
|
return f"with {expression}"
|
||||||
|
|
||||||
|
|||||||
@@ -5198,6 +5198,7 @@ def _role_graph(
|
|||||||
*((item_axis_values or {}).values()),
|
*((item_axis_values or {}).values()),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
man_is_pov = man in pov_set
|
||||||
woman_gives = any(
|
woman_gives = any(
|
||||||
term in text
|
term in text
|
||||||
for term in (
|
for term in (
|
||||||
@@ -5232,6 +5233,11 @@ def _role_graph(
|
|||||||
if "sixty-nine" in position_text or ("sixty-nine" in text and not position_text):
|
if "sixty-nine" in position_text or ("sixty-nine" in text and not position_text):
|
||||||
return f"{woman} and {man} lie head-to-hips in a sixty-nine position, with {woman}'s mouth on {man}'s penis and {man}'s mouth on {woman}'s pussy."
|
return f"{woman} and {man} lie head-to-hips in a sixty-nine position, with {woman}'s mouth on {man}'s penis and {man}'s mouth on {woman}'s pussy."
|
||||||
if "face-sitting" in position_text or ("face-sitting" in text and not position_text):
|
if "face-sitting" in position_text or ("face-sitting" in text and not position_text):
|
||||||
|
if man_is_pov:
|
||||||
|
return (
|
||||||
|
f"{woman} is above the POV camera, straddling the POV viewer's face with thighs on both sides of his head, "
|
||||||
|
"pussy directly over the POV viewer's mouth for close first-person underview tongue contact."
|
||||||
|
)
|
||||||
return f"{man} lies on his back while {woman} straddles his face with her thighs around his head and {man}'s mouth pressed to her pussy."
|
return f"{man} lies on his back while {woman} straddles his face with her thighs around his head and {man}'s mouth pressed to her pussy."
|
||||||
if "straddled oral" in position_text or ("straddled oral" in text and not position_text):
|
if "straddled oral" in position_text or ("straddled oral" in text and not position_text):
|
||||||
if woman_gives and not man_gives:
|
if woman_gives and not man_gives:
|
||||||
|
|||||||
Reference in New Issue
Block a user