Hey Everyone!
I recently went through this multiplayer chat HUD tutorial.
Everything works just fine in blueprints.
I wanted to try to code the (fairly simple) player state in C++, but I got stuck and was unable to find an example.
Here is the blueprint section, that grabs the playerstate array, and loops through them.
And here is the C++ code I have been experimenting with:
UE_LOG(LogTemp, Log, TEXT("[LEET] [AMyPlayerState] BroadcastChatMessage_Implementation - get game state "));
	AMyGameState* TheGameState = Cast<AMyGameState>(GetWorld()->GetGameState());
	UE_LOG(LogTemp, Log, TEXT("[LEET] [AMyPlayerState] BroadcastChatMessage_Implementation - get player array "));
	TArray<APlayerState *> player_array = TheGameState->PlayerArray;
	UE_LOG(LogTemp, Log, TEXT("[LEET] [AMyPlayerState] BroadcastChatMessage_Implementation - loop over player array "));
	for (int32 b = 0; b < player_array.Num(); b++)
		{
			UE_LOG(LogTemp, Log, TEXT("[LEET] [AMyPlayerState] PlayerState Found "));
			// Cast it back to our player state.  Right now it's just an array 
			AMyPlayerState* ThePlayerState = Cast<AMyPlayerState>(player_array[b]);
			// Convert string to text
			FText theText = FText::FromString(ThePlayerState->GetName());
			// Call recievemessage on the client
			ThePlayerState->ReceiveChatMessage(theText, ChatMessageIn);
		}
With this code, I see my logging up to “get player array”, then the server crashes.
Thanks for the assist!
 
  