You don’t necessarily have to work with collection service, but for your implication it may help. You could tag all applicable lights, get them using :GetTagged() and change the properties of the returned lights.
Same thing with doors, if they are practically identical then they must open the same way, get the tagged doors and effect which door the player interacts with.
You can also have special functions for certain doors depending on the tag of the door. Setting up your game to easily add functionality should be a priority.