Unfortunately, the 'obvious solution' is not simple or easy to code. Since it's not causing problems for the intended play experience, I'm probably going to leave it as-is unless I'm hit by a sudden stroke of mania.