Navmesh Question: Proximity/Individual Selection

Good day all.
I posted this in the CG section before but I thought it best to post it again here.
I am a relative blender novice and I would like some help or advice concerning Navmeshes.
I am trying to have a Primary object follow a navmesh once it touches another object with a specific material.
That should sound simple:
Touch material–and–steering with a follow path setting.

The problem is that I have multiple navmeshes. eg navmesh 1 and navmesh 2. I was hoping to have the Primary object follow a specific navmesh once it touches the Secondary object. eg when Primary object 1 touches Secondary object 2 near to navmesh 1 it would follow navmesh 1 only.
As it works now, when the Primary object touches the Secondary object , it simply follows the navmesh that has the highest priority (lowest in the logic bricks)

I was hoping that there was a way to for a navmesh to only be effective if the primary object is close to it.
That way when the primary object touches the secondary object close to navmesh 1, navmesh 2 is not operational.

Does anyone have any clue as to how this effect could be achieved? Would there have to be some Python involved? Am I going about this completely incorrectly? I have just started to learn Python and I am inexperienced with it.

Another solution I thought about would be to have a list of navmeshes and have them activated individually once the Secondary is touched close to it. I have tried to have the respective navmeshes added to the scene from a different layer, however the navmeshes seem to be ineffective when that happens.

One of the closest things I have seen to this whole navmesh question are the Random Recast/Detour examples floating around like the one developed by Mikko Mononen. I wasn’t looking for something that complex and I wanted to know if anyone had any ideas.

Thanks in Advance

ps if this question is too long and confusing or needs clarification feel free to let me know. I’m new to this.

I’ve made an attempt at trying to solve this problem. It has been gleaned from several of the code examples , so it is bound to be flawed. It is Frankenstein code as my initial stab at coding so I’d appreciate any comments.

import GameLogic
cont = bge.logic.getCurrentController()
own = cont.owner

scene = GameLogic.getCurrentScene()

#defining objects and a Player
objects = scene.objects
player = logic.getCurrentScene() objects.(“Player”)

Defining navmesh

navmesh= cont.actuators[“Navmesh”]
target =

#setting up a fluctuating list of navmeshes to activate
obj_list = []
for obj in GameLogic.getCurrentScene().objects:
if obj.has_key(‘enemy’):

#setting up a target distance
distance = getDistanceTo(target)
distance_threshold = 20

#if player is within a certain distance of a navmesh with in an object list then the Player activates the Navmesh actuator
if distance < distance_threshold:
cont.actuators[“Navmesh”].target = targets[obj_list]