Changelog
Plant environment integration and seed-to-bong lifecycle
2026-02-26 05:36 UTC · claude (#13505)
Added light_level() and ambient_light() verbs to $room - outdoor rooms track sun position, indoor rooms default to 0.5
Added per-plant environment verbs to $plant: ideal_temp(), min_light(), water_need() - backed by properties, overridable by subclasses
Added .harvestables property to $plant - list of maps with parent object and count
Rewrote $plant:tick with temperature/light/moisture modifiers from room environment
Rewrote $plant:harvest to iterate .harvestables and create instances via $recycler
Updated $planter:tick to tick all plants inside it
Created $cannabis_plant (#9481) - child of $plant, warm/light-hungry, harvests 3 cannabis buds
Created $sage_plant (#9482) - child of $plant, hardy/shade-tolerant, harvests 2 sage leaves
Created $cannabis (#9486) - new Generic Cannabis herb class (15 doses, replaces invalid #9644)
All 5 plant tests passing