I can assure you that it’s not a heavy load at all to constantly check many conditions every tick. Your desire to make your code more optimal is really admirable, but switching mapping contexes solely for this purpose would be going way out of the way.
What you’re currently doing is not a bad practice, it’s something everyone does because it’s the best way for this specific task.