diff --git a/desktop/src-common/advent/screens/rooms/outside_house.clj b/desktop/src-common/advent/screens/rooms/outside_house.clj index b897a447..59f304e5 100644 --- a/desktop/src-common/advent/screens/rooms/outside_house.clj +++ b/desktop/src-common/advent/screens/rooms/outside_house.clj @@ -507,13 +507,19 @@ (update-in entities [:room :entities] #(assoc % :note (get-in entities [:room :note]))) entities)) +(defn add-charcoal-if-necessary [entities] + (if (and (get-in entities [:state :seen-frankie?]) + (not (actions/has-obtained? entities :charcoal))) + (update-in entities [:room :entities] assoc :charcoal (get-in entities [:room :charcoal])) + entities)) + (defn make-night [screen entities] (as-> entities entities (update-in entities [:room :entities] #(dissoc % :butterfly)) (update-in entities [:room :entities] #(assoc % :cauldron (get-in entities [:room :cauldron]))) - (update-in entities [:room :entities] assoc :charcoal (get-in entities [:room :charcoal])) + (add-charcoal-if-necessary entities) (utils/play-sound! screen entities (get-in entities [:room :cauldron-sound :sound]) (utils/sourced-volume-fn :cauldron 0.15 [139 73])