When working on this project I set myself the challenge of making a game using as few scripts as possible, and try to make sure that each script was modular and worked differently depending on what object had that script on it as well as being able to talk to eachother without any major issues.
I wanted to do this in order to both improve my skills in programming, and to ensure that my workflow thinking was up to par with the amount of scripts that connected with each other.
I started off by creating a couple of "mother" scripts that would have the most important information, such as timers, interactions, and UI information in them. I used these scripts to base my child scripts on in order to minimize the total amount of code in each script, and to make sure that each script opperated under the same logic.