Rewrote the baker-family example around a unified story: the annual Harvest Baking Competition is Saturday. Martha's sourdough starter Old Maggie is sluggish from a cold snap, Jane is secretly entering the FreeStyle category, Emma's science fair project is "The Chemistry of Fermentation", Henry is judging for the first time and worried about impartiality, and Roland is defending last year's title. The week's schedules (Mon guild meeting → Tue test bakes → Wed sourcing → Thu dough prep → Fri science fair → Sat competition → Sun recovery) are now fully populated with narrative-specific actions. Files split for composability: - behaviors/baker_behaviors.sb → 5 focused files by character/domain - schema/types.sb → 4 files (core, baking, world, social) - schedules/work_schedules.sb → 4 files (one per schedule) - relationships/baker_family_relationships.sb → family + bakery Strong typing: replaced all enumerable string fields with concepts (BakerSpecialty, Occupation, LocationType, InstitutionType, ParentingStyle, Intensity, BakeryDomain, BakingDiscipline, ManagementDomain, CompetitiveAdvantage). Remove new-syntax-demo.sb (superseded by baker-family example).
58 lines
1.9 KiB
Plaintext
58 lines
1.9 KiB
Plaintext
//! Baker's schedule — Martha and Jane's competition week
|
|
//!
|
|
//! Modifies WorkWeek: pre-dawn start, then a full week of competition prep
|
|
//! building toward Saturday's Harvest Baking Competition.
|
|
|
|
schedule BakerSchedule modifies WorkWeek {
|
|
// Bakers start before dawn
|
|
override work {
|
|
05:00 -> 13:00
|
|
action:BakingWork
|
|
intensity:High
|
|
}
|
|
|
|
block pre_dawn_prep {
|
|
04:00 -> 05:00
|
|
action:PrepKitchen
|
|
}
|
|
|
|
block afternoon_rest { 14:00 -> 16:00, action:Resting }
|
|
|
|
// Monday: Guild meeting — competition rules announced, tension with Roland
|
|
recurrence GuildMeeting on Monday {
|
|
block guild_evening { 18:00 -> 20:00, action:AttendGuildMeeting }
|
|
}
|
|
|
|
// Tuesday: Test competition recipes, Old Maggie still sluggish
|
|
recurrence RecipeTesting on Tuesday {
|
|
block test_bake { 14:00 -> 17:00, action:TestCompetitionRecipe }
|
|
}
|
|
|
|
// Wednesday: Source premium flour and imported butter
|
|
recurrence SupplierDay on Wednesday {
|
|
block source_ingredients { 14:00 -> 16:00, action:SourceIngredients }
|
|
}
|
|
|
|
// Thursday: Mix competition dough, feed Old Maggie extra, 24h rise begins
|
|
recurrence CompPrep on Thursday {
|
|
block comp_prep { 14:00 -> 18:00, action:PrepCompetitionDough }
|
|
}
|
|
|
|
// Friday: Regular baking day + Emma's science fair in the evening
|
|
recurrence ScienceFair on Friday {
|
|
block science_fair { 17:00 -> 19:00, action:AttendScienceFair }
|
|
}
|
|
|
|
// Saturday: Competition day!
|
|
recurrence CompetitionDay on Saturday {
|
|
block competition { 06:00 -> 16:00, action:CompetitionRoutine }
|
|
block celebration { 17:00 -> 22:00, action:Celebration }
|
|
}
|
|
|
|
// Sunday: Recovery and family time
|
|
recurrence SundayRest on Sunday {
|
|
block family_morning { 08:00 -> 12:00, action:FamilyBreakfast }
|
|
block rest { 12:00 -> 18:00, action:Resting }
|
|
}
|
|
}
|