NetMulticast function client NULL

Hi.

I have two clients and a dedicated server.

When a client press a button he does a bunch of actions and then calls a server function

UFunction(Server, Reliable, WithValidation)
void ServerSwap();

And this server function just calls a netMulticast function

UFunction(NetMulticast)
void AllSwap();

void ServerSwap_Implementation()
{
   AllSwap();
}

Then the NetMulticast function checks if it’s a client, because I don’t want the server to do anything and if it is he just assigns something to a variable.

void AllSwap_Implementation()
{
   if(Role < Role_Authority)
   {
      float Temp = FloatArray[0];
   }
}

So putting a breakpoint there, I see that the server tries to go in but he can’t because of the role check, and then both clients go in. everything should be alright. the problem is that the first client that goes in has for some reason everything not initialized (NULL).

FloatArray is an array of floats that I have and I initialize this on the PostBeginPlay. Im sure that by the point I press the button this has been initialized because it has been used before. and isn’t just this “FloatArray”. everything for that client that I try to call from this particular function is set to NULL. The second client has everything fine though.

I’m not sure what’s going on here! anybody can add some light to it?

Note1: All the functions are created and called in my own playerController
Note2: I wrote the code just know for this post so if for some reason there is a sintax mistake it’s because I just tried to explain myself as much as I could and I dont have the source code with me at the moment.