The "modern" convention for toon shading (or at least what I use) is to convert a Diffuse BSDF (gives gradient shading) to RGB using a Shader to RGB node (only works in eevee), and then converting the gradient shadows into shadow "sections" by using a ColorRamp set to "constant". You can then multiply the resulting "shadow sections" over your base texture(s):
You can change the shadow "influence" by adjusting the mix of the MixRGB node:
This works just the same way if you are mixing multiple textures. Just mix them as you normally would (I just used a Noise Texture as a mask for my example), then multiply the shadows over the final mix: