Checking which zone the player's camera is facing based on enemy player

I’m not sure if I am framing this question properly, but how can I make ‘zones’ with CFrames? I am trying to check which ‘direction’ the player is looking toward on their screen so what I did was get the camera’s CFrame relative to the enemy player(since this is going to be for a melee combat system’s blocking mechanic and shift lock is forced) but I’m not sure how to turn that into getting which ‘zone’ the player is looking in. Here’s a picture illustrating what I mean by zones: https://gyazo.com/7c7ed735d3b9f07ffa527f9f47d3a925

So if the player does an overhead swing then by having my camera look to up green will block it, same for diagonal top right red, and all of the other directions.

Feel free to ask follow up questions, because again I am not sure if I am asking this very clearly. Explanations of how I should go about this and what I will need to learn(only experienced with the basics of CFrames and have avoided matrices) would be great.

You could use a technique called frustum culling to see if the player is even looking at a part then just size that part up and call it a day for the zones. (I have like 0 experience coding this so)