Skip to content

Celebrate harvest festival ๐ŸŽƒย #17

Description

@noyainrain

Simulate annual dates and unlock seasonal furniture (๐ŸŽƒโšฑ๏ธ๐Ÿฎ) and clothing (๐ŸŽฉ) for the harvest festival.

Draft

class Schedule:
    """Simulation schedule of a :class:`Space`."""

    """Related space."""
    space: Space

    class DateMethod:
        """Simulate an annual date."""

        """Annotated function."""
        func: Callable[[Schedule], Awaitable[None]]
        """Month of the date."""
        month: int
        """Day of the date."""
        day: int

    @staticmethod
    def date(month: int, day: int) -> Callable[[Callable[[Schedule], Awaitable[None]]], DateMethod]:
        """Decorator to define an annual date on *day* of *month*."""
        return partial(Schedule.DateMethod, month=month, day=day)

    async def run(self) -> None:
        """Simulate all scheduled dates."""

    # Example
    @date(31, 10)
    async def start_jenseits_festival(self) -> None: ...

class Space:
    """Simulation schedule."""
    schedule: Schedule

Alf ๐Ÿง, the rural hedonist:

  • Greetings friend, the name is Alf! As the leaves begin to fall, Jenseits festival is drawing near!
  • Lanterns made from carved pumpkins ward off malicious spirits. (You get a carved pumpkin blueprint ๐Ÿ“‹๐ŸŽƒ)
  • This time of year, graves open up a path to Jenseits through which spirits may enter our world. (You get an urn blueprint ๐Ÿ“‹โšฑ๏ธ)
  • (Alf is almost drooling) What would I do for a seasonal delicacy, like a hearty stew ๐Ÿฒ?
  • (You give ๐Ÿฒ to Alf) I'm delighted, friend! Are you dressing up for the festival? (You get a top hat pattern ๐Ÿ“‹๐ŸŽฉ)
  • Jenseits festival is drawing near!
  • Enjoy Jenseits festival, friend!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions