Why the Client doesnt update Replicated Variable in time?

Hello,
Well it took sometime until i realized that the problem on my code was that the client doesnt get the replicated variable value imediatly. Here is half of a function that is executed on event begin play:![alt text][1]

I dont understand why…
This is what i think that should happen:

1 - Authority Part: The server gonna add a skill reference to the array and then, if the skill is valid it gonna print valid on the screen.

2- Remote Part: The Client gona check the replicated array (witch the server already added some members) and if the skill that served added was valid it gonna print valid.

But no… the server prints valid and the client prints Not valid… I already separeted the Remote and Authority parts into 2 functions and put 1st the server part and then the client (order) so the server would add the skills 1st but nothing changed… the client always print invalid.

Why?

Thank you very much