Tighten hardcore Krea action wording
This commit is contained in:
+24
-24
@@ -551,7 +551,7 @@ def _heuristic_cast_compatible(text: str, women_count: int, men_count: int) -> b
|
||||
"double penetration" in text
|
||||
or "two partners penetrating" in text
|
||||
or "front-and-back penetration" in text
|
||||
or "one cock in pussy and one cock in ass" in text
|
||||
or "one penis in pussy and one penis in ass" in text
|
||||
or "pussy and ass filled" in text
|
||||
or "vaginal and anal penetration at the same time" in text
|
||||
or "front-and-back double penetration" in text
|
||||
@@ -582,9 +582,9 @@ def _heuristic_cast_compatible(text: str, women_count: int, men_count: int) -> b
|
||||
if any(term in text for term in penetration_terms) and not any(term in text for term in toy_terms):
|
||||
return False
|
||||
male_terms = (
|
||||
" cock",
|
||||
"cock ",
|
||||
"cocks",
|
||||
" penis",
|
||||
"penis ",
|
||||
"penises",
|
||||
"cum",
|
||||
"creampie",
|
||||
"facial",
|
||||
@@ -596,7 +596,7 @@ def _heuristic_cast_compatible(text: str, women_count: int, men_count: int) -> b
|
||||
)
|
||||
if any(term in text for term in male_terms) and not any(term in text for term in toy_terms):
|
||||
return False
|
||||
elif men_count < 2 and "cocks" in text:
|
||||
elif men_count < 2 and "penises" in text:
|
||||
return False
|
||||
if women_count == 0:
|
||||
if "penetrative sex" in text and not any(term in text for term in ("anal", "ass", "male/male", "men")):
|
||||
@@ -2484,7 +2484,7 @@ def _role_graph(
|
||||
return f"{solo} is shown in a solo explicit climax pose with thighs open, one hand on her body, and visible arousal on skin and sheets."
|
||||
return f"{solo} is shown in a solo explicit adult pose with self-touch, open body framing, and direct camera awareness."
|
||||
if "cumshot" in slug or "climax" in slug:
|
||||
return f"{solo} is shown in a solo explicit climax pose with one hand on his cock, body angled toward the camera, and visible ejaculation detail."
|
||||
return f"{solo} is shown in a solo explicit climax pose with one hand on his penis, body angled toward the camera, and visible ejaculation detail."
|
||||
return f"{solo} is shown in a solo explicit adult pose with direct camera awareness and clear body framing."
|
||||
|
||||
if women_count > 0 and men_count == 0:
|
||||
@@ -2510,7 +2510,7 @@ def _role_graph(
|
||||
c = any_man({a, b}) if len(men) >= 3 else ""
|
||||
used = {a, b}
|
||||
if "oral" in slug:
|
||||
graph = f"{a} kneels and takes {b}'s cock in his mouth while holding his hips."
|
||||
graph = f"{a} kneels and takes {b}'s penis in his mouth while holding his hips."
|
||||
elif "anal" in slug or "double" in slug or "penetrative" in slug:
|
||||
graph = f"{a} penetrates {b} anally while {b}'s hips are held open."
|
||||
elif "threesome" in slug or "group" in slug or "orgy" in slug:
|
||||
@@ -2518,9 +2518,9 @@ def _role_graph(
|
||||
graph = f"{a} penetrates {b} anally while {helper} gives oral contact from the front."
|
||||
used.add(helper)
|
||||
elif "cumshot" in slug or "climax" in slug:
|
||||
graph = f"{a} climaxes over {b}'s body while {b} keeps eye contact and one hand on his cock."
|
||||
graph = f"{a} climaxes over {b}'s body while {b} keeps eye contact and one hand on his penis."
|
||||
else:
|
||||
graph = f"{a} and {b} keep explicit cock and anal contact visible."
|
||||
graph = f"{a} and {b} keep explicit penis and anal contact visible."
|
||||
return graph + support_sentence(used)
|
||||
|
||||
# Mixed cast.
|
||||
@@ -2529,29 +2529,29 @@ def _role_graph(
|
||||
third = any_person({woman, man}) if people_count >= 3 else ""
|
||||
if "oral" in slug:
|
||||
if "sixty-nine" in item_text or ("blowjob" in item_text and ("cunnilingus" in item_text or "pussy" in item_text)):
|
||||
graph = f"{woman} and {man} are in mutual oral contact with mouth-to-genital contact visible."
|
||||
graph = f"{woman} has {man}'s penis in her mouth while {man} uses his mouth on {woman}'s pussy, with both mouths pressed to genitals."
|
||||
elif any(term in item_text for term in ("cunnilingus", "pussy licking", "tongue on pussy", "mouth on pussy")):
|
||||
graph = f"{man} gives oral to {woman} while {woman}'s thighs are held open for the camera."
|
||||
graph = f"{man} gives oral to {woman}, mouth on her pussy while {woman}'s thighs are held open for the camera."
|
||||
else:
|
||||
graph = f"{woman} gives oral to {man} while {man} holds her hair and hips."
|
||||
graph = f"{woman} takes {man}'s penis in her mouth while {man} holds her hair and hips."
|
||||
elif "anal" in slug or "double" in slug:
|
||||
if "double" in item_text or "toy" in item_text:
|
||||
if people_count >= 3:
|
||||
graph = f"{man} penetrates {woman} while {third} adds a second point of contact from the front."
|
||||
graph = f"{man} thrusts his penis into {woman} while {third} adds a second penetration point from the front."
|
||||
else:
|
||||
graph = f"{man} penetrates {woman} while a toy adds a second point of contact."
|
||||
graph = f"{man} thrusts his penis into {woman} while a toy adds a second penetration point."
|
||||
elif people_count >= 3:
|
||||
graph = f"{man} penetrates {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:
|
||||
graph = f"{man} penetrates {woman} anally while keeping her hips held open."
|
||||
graph = f"{man} thrusts his penis into {woman}'s ass while keeping her hips held open."
|
||||
elif "threesome" in slug:
|
||||
graph = f"{man} penetrates {woman} while {third or any_person({woman, man})} uses mouth or hands on the exposed body."
|
||||
graph = f"{man} thrusts his penis into {woman} while {third or any_person({woman, man})} uses mouth or hands on the exposed body."
|
||||
elif "group" in slug or "orgy" in slug:
|
||||
graph = f"{man} penetrates {woman} while surrounding partners give oral contact and keep hands on hips, breasts, and thighs."
|
||||
graph = f"{man} thrusts his penis into {woman} while surrounding partners give oral contact and keep hands on hips, breasts, and thighs."
|
||||
elif "cumshot" in slug or "climax" in slug:
|
||||
graph = f"{man} climaxes on {woman}'s body while {woman} stays posed with thighs open and direct eye contact."
|
||||
else:
|
||||
graph = f"{man} and {woman} keep penetration and body contact visible."
|
||||
graph = f"{man}'s penis thrusts into {woman} with penetration and body contact visible."
|
||||
return graph + support_sentence({woman, man, third} if third else {woman, man})
|
||||
|
||||
|
||||
@@ -3251,10 +3251,10 @@ INSTA_OF_PLATFORM_STYLES = {
|
||||
|
||||
INSTA_OF_HARDCORE_CLOTHING_CONTINUITY = {
|
||||
"none": "",
|
||||
"same_outfit": "Woman A keeps the softcore outfit in the hardcore scene",
|
||||
"partially_removed": "Woman A's softcore outfit is partially removed or pushed aside for the hardcore scene",
|
||||
"implied_nude": "Woman A is nude-adjacent in the hardcore scene, with the softcore outfit slipping off or covering only part of the body",
|
||||
"explicit_nude": "Woman A is fully nude in the hardcore scene, with the removed softcore outfit visible nearby",
|
||||
"same_outfit": "Woman A keeps her teaser outfit on, with sexual contact still clearly visible",
|
||||
"partially_removed": "Woman A's teaser outfit is pushed aside and partly removed, exposing the sexual contact clearly",
|
||||
"implied_nude": "Woman A is partly nude, with the teaser outfit slipping off or covering only part of the body",
|
||||
"explicit_nude": "Woman A is fully nude, with the removed teaser outfit visible nearby",
|
||||
}
|
||||
|
||||
INSTA_OF_NEGATIVE = (
|
||||
@@ -3609,7 +3609,7 @@ def _insta_of_hardcore_clothing_state(mode: str, softcore_outfit: str) -> str:
|
||||
if mode == "none" or not outfit:
|
||||
return ""
|
||||
base = INSTA_OF_HARDCORE_CLOTHING_CONTINUITY[mode]
|
||||
return f"Clothing state: {base}; softcore visual reference: {outfit}."
|
||||
return f"Clothing state: {base}; teaser outfit detail: {outfit}."
|
||||
|
||||
|
||||
def _insta_of_partner_styling(
|
||||
|
||||
Reference in New Issue
Block a user