Yep, both answers you’ve received are good, i’m just adding a couple of links.
You can use the official smart lighting feature, as @jason_brown and @stevesell mentioned, and set up four different automations (one to match each of the four rules in your post) and everything should work fine. The advantage of this approach is that smartlighting is the only smartapp at present that can run locally. And because you’re running an official feature, if you have any problems, smartthings support can help.
https://support.smartthings.com/hc/en-us/articles/205380404-Smart-Lights
Alternatively, as @jkp suggested, you could do this with core. In fact you could probably do it just by setting up one rule in core. The difference is that since this is custom code, it won’t run locally, SmartThings support won’t help you with it, and the set up is way more complex. But it’s also a much more powerful rules engine than the official features, so it’s very popular. And because you don’t have to do each piece separately, long-term maintenance can be simplified.
So you wouldn’t need it for this particular example, but you might want to start using it anyway. There are many people in the community who could help you with it.