Files
Untitled-Cat-Game/untitled/generation.py
2026-06-25 14:23:33 -04:00

34 lines
1.1 KiB
Python

import random
from untitled import PACKAGE_ROOT, content, namegen, rules
def generate_trait_sentence(traits):
article = "An" if traits["size"][0] in "aeiou" else "A"
description = f'{article} {traits["size"]} {traits["color"]} kitten with {traits["eyes"]} eyes who {traits["personality"]}'
return description
def generate_cat_choice(personality=None):
size = random.choice(content.CAT_SIZES)
color = random.choice(content.CAT_COLORS)
eyes = random.choice(content.CAT_EYE_COLORS)
personality = personality or random.choice(content.CAT_PERSONALITIES)
traits = {
"size": size,
"color": color,
"eyes": eyes,
"personality": personality,
}
return generate_trait_sentence(traits), traits
def generate_cat_choices(n=5):
personalities = random.sample(content.CAT_PERSONALITIES, n)
return [generate_cat_choice(p) for p in personalities]
with open(PACKAGE_ROOT / "assets" / "cat_names.txt") as f:
names = f.read().splitlines()
cat_name_generator = namegen.NameGenerator(names, rules.validate_auto_gen_cat_name)