Python 2, 97 95 75 72 71 70 69 64 55 54 52 51 50 bytes
lambda a,b:(60>a+b>-1<a>b/22*b-3)*~(19<b-(b<30)>a)
Takes input as pre-ordered a,b
.
Returns -2
, -1
, 0
for ended
, in play
, invalid
.
-1 byte, thanks to Kevin Cruijssen