Thanks for playing it! The artist/storywriter did a great job. On the coding side, I had to make sure the dialogs and the events trigger at the right time.
We kept the story linear so it is easier to track game state. The dialogs are chained to trigger flag changes in certain order. Each interactive object or room script checks the flags to know what to show and what to hide, and which interactions to allow.
Day transitions trigger certain flags, apply visual effects like fade to black, reset the room scene, teleport the player, and trigger a specific "morning" dialog. The game state is continuous across days otherwise.