C++ Two Player Controllers and Input

I have Two Player Controllers that I have spawned in my code, one is just the default one that the game spawns and then another that I have spawned using SpawnPlayerController, and SpawnDefaultPawnFor. I am working on a gauntlet style game and need to be able to send input to both. I set up there Input Bindings using this function which gets called in their constructors.

void ABeatBrawl2GameMode::SetupPlayerInput(ABeatBrawl2PlayerController* PlayC)
{

	
	

	PlayersInGame.Add(PlayC);


	FString Origin = "SetDestination";

	FString AddPart = FString::FromInt(PlayersInGame.Num());


	Origin += AddPart;

	
	print(Origin);


	FName Final = FName(*Origin);



	PlayC->InputComponent->BindAction(Final, IE_Pressed, PlayC, &ABeatBrawl2PlayerController::OnSetDestinationPressed);
	PlayC->InputComponent->BindAction(Final, IE_Released, PlayC, &ABeatBrawl2PlayerController::OnSetDestinationReleased);

}

It know that it gets called twice, but for some reason even thought the binding names for both are in my input settings. Only the Player Controller bound to the first one will move. He is bound to move when I left Click, the second Player Controller should move when I right click, but the function does not get called. These are all modifications of the Top-down c++ setup.

You’re not going to get the other player controller to do anything because you don’t have anything telling it to do that. By default the first controller IS you, so when you press a key it gets all that input sent to it. But the second controller is just a random controller, nothing is telling the input to go to it. You will have to setup some custom code that gets the second player controller and then proceeds to send input during right-click, because right now all that input is only going to the default controller