I tried to model as much of my game's actual mechanics in GameObjects and components, rather than code, as I could. I have loads of MonoBehaviours that simply invoke or relay UnityEvents in particular ways, to allow me to build simple game rules directly in my scene and prefabs.