I can see in the shooter game this
UPROPERTY(Transient, ReplicatedUsing=OnRep_CurrentWeapon)
class AShooterWeapon* CurrentWeapon;
/** current weapon rep handler */
UFUNCTION()
void OnRep_CurrentWeapon(class AShooterWeapon* LastWeapon);
Where is LastWeapon is filled from?