Promote multi-person hardcore action routing

This commit is contained in:
2026-06-27 19:19:37 +02:00
parent 658743d876
commit 2b41a82869
6 changed files with 150 additions and 7 deletions
+7 -2
View File
@@ -525,7 +525,8 @@ def hardcore_position_template_required(config: dict[str, Any]) -> bool:
def hardcore_allowed_subcategory_slugs(config: dict[str, Any]) -> set[str]:
family = normalize_hardcore_position_family(config.get("family"))
allowed = set(HARDCORE_POSITION_FAMILY_SUBCATEGORIES.get(family, HARDCORE_POSITION_FAMILY_SUBCATEGORIES["any"]))
base_allowed = set(HARDCORE_POSITION_FAMILY_SUBCATEGORIES.get(family, HARDCORE_POSITION_FAMILY_SUBCATEGORIES["any"]))
allowed = set(base_allowed)
if not config.get("allow_penetration", True):
allowed.difference_update({"penetrative_sex", "anal_double_penetration", "threesomes", "group_sex_orgy"})
if not config.get("allow_foreplay", True):
@@ -554,7 +555,11 @@ def hardcore_allowed_subcategory_slugs(config: dict[str, Any]) -> set[str]:
allowed.discard("cumshot_climax")
if not config.get("allow_double", True) and family == "anal":
allowed.add("anal_double_penetration")
return allowed or set(HARDCORE_POSITION_FAMILY_SUBCATEGORIES["any"])
if allowed:
return allowed
if family != "any":
return base_allowed
return set(HARDCORE_POSITION_FAMILY_SUBCATEGORIES["any"])
def is_hardcore_sexual_category(category: dict[str, Any]) -> bool: