Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We are updating our Terms of Service for all Unity subscription plans, effective October 13, 2022, to create a more streamlined, user-friendly set of terms. Please review them here: unity.com/legal/terms-of-service.
    Dismiss Notice
  3. Have a look at our Games Focus blog post series which will show what Unity is doing for all game developers – now, next year, and in the future.
    Dismiss Notice
  4. Join us on Thursday, September 29, for a day with Unity's SRP teams here on the forum or on Reddit, and discuss topics around URP, HDRP, and the Scriptable Render Pipeline in general.
    Dismiss Notice

Question Photon : Changing playerpref string to hash/custom player player property.

Discussion in 'Multiplayer' started by joshuaradec, Jan 10, 2022.

  1. joshuaradec

    joshuaradec

    Joined:
    Jun 14, 2019
    Posts:
    14
    I have a script where at runtime, a playerpref is called, but unfortunately, on clientside, everything will just a copy of said pref, which is not what I wanted as it creates issue.

    I am stuDYING custom player property and hash, a bit new to photon in general, but got myself overwhelmed and stuck.

    This is where the playerpref get saved

    Code (CSharp):
    1. private void OnAvatarCreated(string url)
    2.         {
    3.             if (avatar) Destroy(avatar);
    4.  
    5.             webView.SetVisible(false);
    6.             loadingLabel.SetActive(true);
    7.             displayButton.SetActive(false);
    8.             PlayerPrefs.SetString("URLRPM", url);
    9.  
    10.             AvatarLoader avatarLoader = new AvatarLoader();
    11.             avatarLoader.LoadAvatar(url, null, OnAvatarImported);
    12.         }
    And this is when it's loaded

    Code (CSharp):
    1.   public void Start()
    2.     {
    3.         AvatarURL = PlayerPrefs.GetString("URLRPM"
    4. }
    5.  
    6. public void AvatarLoaderHa()
    7.     {
    8.         AvatarLoader avatarLoader = new AvatarLoader();
    9.         avatarLoader.LoadAvatar(AvatarURL, OnAvatarImported, OnAvatarLoaded);
    10.  
    11.    }
    the AvatarURL is what I believe is the key, but as in yet, I am unable to solve it.
     
  2. joshuaradec

    joshuaradec

    Joined:
    Jun 14, 2019
    Posts:
    14
    On that note, I also need help in send and grab/get hashtable
     
  3. tobiass

    tobiass

    Joined:
    Apr 7, 2009
    Posts:
    2,904
    Using Hashtables should not be an issue. Is it? If so, you may want to first read up on some C# / programming basics. Just enough to feel at home, when these things are required.
    Do you know how to instantiate regular / non-customized avatars in PUN? If not, start with that. For that, I would recommend the PUN Basics Tutorial.
    To customize avatars, I would recommend to create a basic prefab. Instantiate that, then load and apply a custom avatar to it, per player. The benefit here is that PUN never runs into a situation where it would have to wait for an avatar to load, when it is asked to instantiate some character (this is not supported).
     
unityunity