Example #1
0
        private IEnumerator FetchAvatar()
        {
            var avatarInt = SteamFriends.GetLargeFriendAvatar(SteamUser.GetSteamID());

            while (avatarInt == -1)
            {
                yield return(null);
            }

            if (avatarInt > 0)
            {
                Debug.Log("Found avatar.");
                uint width, height;
                SteamUtils.GetImageSize(avatarInt, out width, out height);

                byte[] avatarStream = new byte[4 * (int)width * (int)height];
                if (width > 0 && height > 0)
                {
                    SteamUtils.GetImageRGBA(avatarInt, avatarStream, 4 * (int)width * (int)height);
                }

                Texture2D downloadedAvatar = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
                downloadedAvatar.LoadRawTextureData(avatarStream);
                downloadedAvatar.Apply();

                Rect    rect  = new Rect(0, 0, 184, 184);
                Vector2 pivot = new Vector2(.5f, .5f);
                _playerProfilePicture.sprite = Sprite.Create(downloadedAvatar, rect, pivot);
                Debug.Log("Updated avatar.");
            }
            else
            {
                Debug.LogWarning("Couldn't fetch player avatar.");
            }
        }
Example #2
0
        private static Texture2D GetAvatar(CSteamID steamUser)
        {
            int  avatarInt = SteamFriends.GetLargeFriendAvatar(steamUser);
            bool success   = SteamUtils.GetImageSize(avatarInt, out uint imageWidth, out uint imageHeight);

            if (success && imageWidth > 0 && imageHeight > 0)
            {
                byte[]    Image         = new byte[imageWidth * imageHeight * 4];
                Texture2D returnTexture = new Texture2D((int)imageWidth, (int)imageHeight, TextureFormat.RGBA32, false, true);
                success = SteamUtils.GetImageRGBA(avatarInt, Image, (int)(imageWidth * imageHeight * 4));

                if (success)
                {
                    returnTexture.LoadRawTextureData(Image);
                    returnTexture.Apply();
                }

                return(returnTexture);
            }
            else
            {
                Debug.LogError("Couldn't get avatar.");
                return(new Texture2D(0, 0));
            }
        }
    void setAvatar()
    {
        uint width     = 0;
        uint height    = 0;
        int  avatarInt = SteamFriends.GetLargeFriendAvatar(SteamUser.GetSteamID());


        if (avatarInt > 0)
        {
            SteamUtils.GetImageSize(avatarInt, out width, out height);
        }

        if (width > 0 && height > 0)
        {
            byte[] avatarStream = new byte[4 * (int)width * (int)height];
            SteamUtils.GetImageRGBA(avatarInt, avatarStream, 4 * (int)width * (int)height);

            downloadedAvatar = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
            downloadedAvatar.LoadRawTextureData(avatarStream);
            downloadedAvatar.Apply();

            Playerimage.texture = downloadedAvatar;
            Playerimage.rectTransform.localScale = new Vector2(1, -1);
        }
        else
        {
            Debug.Log("Get Steam AvatarINT Error");
            needReLoad = true;
        }
    }
Example #4
0
        public override void OnEnter()
        {
            ulong    ID = ulong.Parse(this.steamID.Value);
            CSteamID IDsteam;

            IDsteam.m_SteamID = ID;

            int imageID = 0;

            switch (avatarSize)
            {
            case AvaterSize.Small:
                imageID = SteamFriends.GetSmallFriendAvatar(IDsteam);
                break;

            case AvaterSize.Medium:
                imageID = SteamFriends.GetMediumFriendAvatar(IDsteam);

                break;

            case AvaterSize.Large:
                imageID = SteamFriends.GetLargeFriendAvatar(IDsteam);

                break;
            }
            if (imageID != 0)
            {
                GetAvatar(imageID);
            }
            else
            {
                Fsm.Event(noAvatar);
            }
            Finish();
        }
Example #5
0
    public static Texture2D GetAvatar(CSteamID user)
    {
        int  FriendAvatar = SteamFriends.GetLargeFriendAvatar(user);
        uint ImageWidth;
        uint ImageHeight;
        bool success = SteamUtils.GetImageSize(FriendAvatar, out ImageWidth, out ImageHeight);

        Debug.LogError("Loading avatar for " + user.m_SteamID);

        if (success && ImageWidth > 0 && ImageHeight > 0)
        {
            byte[]    Image         = new byte[ImageWidth * ImageHeight * 4];
            Texture2D returnTexture = new Texture2D((int)ImageWidth, (int)ImageHeight, TextureFormat.RGBA32, false, true);
            success = SteamUtils.GetImageRGBA(FriendAvatar, Image, (int)(ImageWidth * ImageHeight * 4));
            if (success)
            {
                returnTexture.LoadRawTextureData(Image);
                returnTexture.Apply();
                Debug.LogError("Loaded avatar!");
            }
            else
            {
                Debug.LogError("Avatar loading failed!");
            }
            return(returnTexture);
        }
        else
        {
            Debug.LogError("Couldn't get avatar.");
            return(new Texture2D(0, 0));
        }
    }
        IEnumerator _FetchAcatar(CSteamID id, RawImage ui)
        {
            var AvatarInt = SteamFriends.GetLargeFriendAvatar(id);

            while (AvatarInt == -1)
            {
                yield return(null);
            }
            if (AvatarInt > 0)
            {
                SteamUtils.GetImageSize(AvatarInt, out width, out height);

                if (width > 0 && height > 0)
                {
                    byte[] avatarStream = new byte[4 * (int)width * (int)height];
                    SteamUtils.GetImageRGBA(AvatarInt, avatarStream, 4 * (int)width * (int)height);

                    downloadedAvatar = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
                    downloadedAvatar.LoadRawTextureData(avatarStream);
                    downloadedAvatar.Apply();

                    ui.texture = downloadedAvatar;
                }
            }
        }
Example #7
0
        /// <summary>
        /// Get image data from the Steam Api
        /// </summary>
        /// <param name="size">The image size to get from Steam</param>
        /// <param name="steamId">The steam id of the user to get the image for</param>
        /// <returns></returns>
        /// <exception cref="ArgumentException"></exception>
        /// <exception cref="SystemException"></exception>
        public SteamworksImage GetAvatarFromStreamApi(AvatarSize size, CSteamID steamId)
        {
            int imageHandle;

            switch (size)
            {
            case AvatarSize.Small:
                imageHandle = SteamFriends.GetSmallFriendAvatar(steamId);
                break;

            case AvatarSize.Medium:
                imageHandle = SteamFriends.GetMediumFriendAvatar(steamId);
                break;

            case AvatarSize.Large:
                imageHandle = SteamFriends.GetLargeFriendAvatar(steamId);
                break;

            default:
                throw new ArgumentException("Unknown Steam Avatar size!");
            }

            if (imageHandle == -1 || imageHandle == 0)
            {
                throw new SystemException("Invalid Steamworks image handle");
            }

            var image = new SteamworksImage();


            if (!SteamUtils.GetImageSize(imageHandle, out image.Width, out image.Height))
            {
                throw new SystemException("Couldn't get image size from Steamworks api");
            }

            uint imageSize = image.Width * image.Height * 4;

            var buffer = new byte[imageSize];

            if (!SteamUtils.GetImageRGBA(imageHandle, buffer, (int)imageSize))
            {
                throw new SystemException("Couldn't get image data  from Steamworks api");
            }

            image.imageData = new byte[imageSize];
            Array.Copy(buffer, 0, image.imageData, 0, imageSize);

            return(image);
        }
Example #8
0
        /// <summary>
        /// If Steam has already downloaded the user's avatar, then it will be returned as Texture2D.
        /// Otherwise, will return null if the user has no avatar image at all or the image is still loading.
        /// Will start the download of the user's avatar if Steam is not yet loading it.
        /// </summary>
        /// <returns>if Steam has already downloaded the user's avatar, then it will be returned as Texture2D; otherwise, will return null if the user has no avatar image at all or the image is still loading.</returns>
        /// <param name="p_steamIDUser">user ID to look for.</param>
        public Texture2D GetAvatarTexture(CSteamID p_steamIDUser)
        {
            int avatarImageHandle = SteamFriends.GetLargeFriendAvatar(p_steamIDUser);

            if (avatarImageHandle == -1)
            {
                // -1 => avatar image has not yet been downloaded by Steam -> request
                SteamFriends.RequestUserInformation(p_steamIDUser, false);
            }
            else if (avatarImageHandle != 0)             // 0 => this user has no avatar image set
            {
                return(GetSteamImageAsTexture2D(avatarImageHandle));
            }
            return(null);
        }
Example #9
0
        private void HandleSteamIdUpdated(ulong oldSteamId, ulong newSteamId)
        {
            var cSteamId = new CSteamID(newSteamId);

            displayNameText.text = SteamFriends.GetFriendPersonaName(cSteamId);

            int imageId = SteamFriends.GetLargeFriendAvatar(cSteamId);

            if (imageId == -1)
            {
                return;
            }

            profileImage.texture = GetSteamImageAsTexture(imageId);
        }
Example #10
0
    //Client side sync of just the steam id then the clients can pull the info
    private void HandeSteamIdUpdated(ulong oldSteamId, ulong newSteamId)
    {
        var CSteamID = new CSteamID(newSteamId);

        //You dont need to be steam friends this is just how Valve set it up
        displayNameText.text = SteamFriends.GetFriendPersonaName(CSteamID);

        int imageId = SteamFriends.GetLargeFriendAvatar(CSteamID);

        if (imageId == -1)
        {
            //Is not in cache
            return;
        }
        else
        {
            //Is in cache
            profileImage.texture = GetSteamImageAsTexture(imageId);
        }
    }
        /// <summary>
        /// This method fetches an avatar from a certain user (CSteamID)
        /// </summary>
        /// <param name="_steamID"></param>
        /// <returns></returns>
        public static Sprite FetchAvatar(CSteamID _steamID)
        {
            int  _avatarInt;
            uint _width, _height;

            Texture2D _downloadedAvatar;

            Rect _rect = new Rect(0, 0, 184, 184);

            Vector2 _pivot = new Vector2(0.5f, 0.5f);

            _avatarInt = SteamFriends.GetLargeFriendAvatar(_steamID);

            if (_avatarInt == -1)
            {
                for (int i = 0; i <= 2000; i++)
                {
                    Debug.Log("avatar not found");
                }
            }

            if (_avatarInt > 0)
            {
                SteamUtils.GetImageSize(_avatarInt, out _width, out _height);

                if (_width > 0 && _height > 0)
                {
                    byte[] _avatarStream = new byte[4 * (int)_width * (int)_height];

                    SteamUtils.GetImageRGBA(_avatarInt, _avatarStream, 4 * (int)_width * (int)_height);

                    _downloadedAvatar = new Texture2D((int)_width, (int)_height, TextureFormat.RGBA32, false);
                    _downloadedAvatar.LoadRawTextureData(_avatarStream);
                    _downloadedAvatar.Apply();

                    return(Sprite.Create(_downloadedAvatar, _rect, _pivot));
                }
            }

            return(null);
        }
Example #12
0
        /**
         * Gets the user's username and avatar.
         */
        partial void InitialisePartial()
        {
            m_name = SteamFriends.GetPersonaName();

            // Get avatar
            CSteamID id     = SteamUser.GetSteamID();
            int      avatar = SteamFriends.GetLargeFriendAvatar(id);

            if (avatar == 0)
            {
                // There is no avatar for this user.
                m_request.OnSuccess();
            }
            else if (avatar != -1)
            {
                // The avatar is available.
                m_image = CreateAvatar(avatar);

                m_request.OnSuccess();
            }
        }
Example #13
0
 IEnumerator SteamAvatar()
 {
     _avatarInt = SteamFriends.GetLargeFriendAvatar(SteamUser.GetSteamID());
     while (_avatarInt == -1)
     {
         yield return(null);
     }
     if (_avatarInt > 0)
     {
         SteamUtils.GetImageSize(_avatarInt, out width, out height);
         if (width > 0 && height > 0)
         {
             byte[] avatarSteam = new byte[4 * (int)width * (int)height];
             SteamUtils.GetImageRGBA(_avatarInt, avatarSteam, 4 * (int)width * (int)height);
             dowloadedAvatar = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
             dowloadedAvatar.LoadRawTextureData(avatarSteam);
             dowloadedAvatar.Apply();
             _steamAvatar.sprite = Sprite.Create(dowloadedAvatar, rect, pivot);
         }
     }
 }
Example #14
0
    Texture2D GetUserAvatar(CSteamID id)
    {
        int handler = SteamFriends.GetLargeFriendAvatar(id);

        switch (handler)
        {
        case -1:
            callAvatar = Callback <AvatarImageLoaded_t> .Create((cb) =>
            {
                if (id == cb.m_steamID)
                {
                    AvatarLoaded(cb);
                }
            });

            return(SteamAvatarImage);

        case 0:
            if (SteamFriends.RequestUserInformation(id, false))
            {
                callPersona = Callback <PersonaStateChange_t> .Create((cb) =>
                {
                    if (id == (CSteamID)cb.m_ulSteamID)
                    {
                        PersonaStateChangeRequest(cb);
                    }
                });

                return(SteamAvatarImage);
            }
            else
            {
                return(GetTex(handler));
            }

        default:
            return(GetTex(handler));
        }
    }
Example #15
0
        public override void OnEnter()
        {
            imageID = 0;

            switch (avatarSize)
            {
            case AvaterSize.Small:
                imageID = SteamFriends.GetSmallFriendAvatar(SteamUser.GetSteamID());
                break;

            case AvaterSize.Medium:
                imageID = SteamFriends.GetMediumFriendAvatar(SteamUser.GetSteamID());

                break;

            case AvaterSize.Large:
                imageID = SteamFriends.GetLargeFriendAvatar(SteamUser.GetSteamID());

                break;
            }
            if (imageID != 0)
            {
                if (imageID != -1)
                {
                    GetAvatar(imageID);
                }
                else
                {
                    m_AvatarImageLoaded = Callback <AvatarImageLoaded_t> .Create(OnAvatarImageLoaded);

                    Fsm.Event(imageNotLoadedYet);
                }
            }
            else
            {
                Fsm.Event(noAvatar);
            }
            Finish();
        }
    public void UpdateDisplay()
    {
        // Make sure the right player updates
        if (!hasAuthority)
        {
            foreach (var player in Lobby.LobbyPlayers)
            {
                if (player.hasAuthority)
                {
                    player.UpdateDisplay();
                    break;
                }
            }

            return;
        }

        // Updates the lobby UI

        // Resets player names
        for (int i = 0; i < playerNames.Length; i++)
        {
            playerReadytexts[i].text = string.Empty;
            playerNames[i].color     = Color.grey;
            playerNames[i].text      = "Waiting For Player...";
        }

        // Resets player display images
        for (int i = 0; i < userImages.Length; i++)
        {
            Color grey = new Color(.2f, .2f, .2f, 1f); // Dark-grey
            userImages[i].color   = Color.black;
            userImages[i].texture = null;
        }

        for (int i = 0; i < Lobby.LobbyPlayers.Count; i++)
        {
            // Player Names
            playerNames[i].text = SteamFriends.GetFriendPersonaName(Lobby.LobbyPlayers[i].UserSteamID);
            if (Lobby.LobbyPlayers[i].UserSteamID == this.UserSteamID)
            {
                playerNames[i].color = Color.yellow;
            }
            else
            {
                playerNames[i].color = Color.white;
            }

            /*
             * // Extra indication of who the player is in lobby
             * if (Lobby.LobbyPlayers[i].UserSteamID == this.UserSteamID) {
             *  playerNames[i].text += "(you)";
             * } */

            // Player Ready Text
            playerReadytexts[i].text = Lobby.LobbyPlayers[i].IsReady ?
                                       "<color=green>Ready</color>" :
                                       "<color=red>Not Ready</color>";

            // Player Images
            userImages[i].color = Color.white;

            int imageId = SteamFriends.GetLargeFriendAvatar(Lobby.LobbyPlayers[i].UserSteamID);

            if (imageId == -1)
            {
                return;
            }

            userImages[i].texture = GetSteamImageAsTexture2D(imageId);
        }
    }
Example #17
0
    public void RenderOnGUI()
    {
        GUILayout.BeginArea(new Rect(Screen.width - 200, 0, 200, Screen.height));
        GUILayout.Label("Variables:");
        GUILayout.Label("m_Friend: " + m_Friend);
        GUILayout.Label("m_Clan: " + m_Clan);
        GUILayout.Label("m_CoPlayFriend: " + m_CoPlayFriend);
        GUILayout.Label("m_SmallAvatar:");
        GUILayout.Label(m_SmallAvatar);
        GUILayout.Label("m_MediumAvatar:");
        GUILayout.Label(m_MediumAvatar);
        GUILayout.Label("m_LargeAvatar:");
        GUILayout.Label(m_LargeAvatar);
        GUILayout.EndArea();

        GUILayout.BeginVertical("box");
        m_ScrollPos = GUILayout.BeginScrollView(m_ScrollPos, GUILayout.Width(Screen.width - 215), GUILayout.Height(Screen.height - 33));

        GUILayout.Label("GetPersonaName() : " + SteamFriends.GetPersonaName());

        if (GUILayout.Button("SetPersonaName(SteamFriends.GetPersonaName())"))
        {
            SteamAPICall_t handle = SteamFriends.SetPersonaName(SteamFriends.GetPersonaName());
            OnSetPersonaNameResponseCallResult.Set(handle);
            print("SteamFriends.SetPersonaName(" + SteamFriends.GetPersonaName() + ") : " + handle);
        }

        GUILayout.Label("GetPersonaState() : " + SteamFriends.GetPersonaState());

        GUILayout.Label("GetFriendCount(EFriendFlags.k_EFriendFlagImmediate) : " + SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate));

        {
            m_Friend = SteamFriends.GetFriendByIndex(0, EFriendFlags.k_EFriendFlagImmediate);
            GUILayout.Label("GetFriendByIndex(0, EFriendFlags.k_EFriendFlagImmediate) : " + m_Friend);
        }

        GUILayout.Label("GetFriendRelationship(m_Friend) : " + SteamFriends.GetFriendRelationship(m_Friend));

        GUILayout.Label("GetFriendPersonaState(m_Friend) : " + SteamFriends.GetFriendPersonaState(m_Friend));

        GUILayout.Label("GetFriendPersonaName(m_Friend) : " + SteamFriends.GetFriendPersonaName(m_Friend));

        {
            var  fgi = new FriendGameInfo_t();
            bool ret = SteamFriends.GetFriendGamePlayed(m_Friend, out fgi);
            GUILayout.Label("GetFriendGamePlayed(m_Friend, out fgi) : " + ret + " -- " + fgi.m_gameID + " -- " + fgi.m_unGameIP + " -- " + fgi.m_usGamePort + " -- " + fgi.m_usQueryPort + " -- " + fgi.m_steamIDLobby);
        }

        GUILayout.Label("GetFriendPersonaNameHistory(m_Friend, 1) : " + SteamFriends.GetFriendPersonaNameHistory(m_Friend, 1));

        GUILayout.Label("GetFriendSteamLevel(m_Friend) : " + SteamFriends.GetFriendSteamLevel(m_Friend));

        GUILayout.Label("GetPlayerNickname(m_Friend) : " + SteamFriends.GetPlayerNickname(m_Friend));

        {
            int FriendsGroupCount = SteamFriends.GetFriendsGroupCount();
            GUILayout.Label("GetFriendsGroupCount() : " + FriendsGroupCount);

            if (FriendsGroupCount > 0)
            {
                FriendsGroupID_t FriendsGroupID = SteamFriends.GetFriendsGroupIDByIndex(0);
                GUILayout.Label("SteamFriends.GetFriendsGroupIDByIndex(0) : " + FriendsGroupID);

                GUILayout.Label("GetFriendsGroupName(FriendsGroupID) : " + SteamFriends.GetFriendsGroupName(FriendsGroupID));

                int FriendsGroupMembersCount = SteamFriends.GetFriendsGroupMembersCount(FriendsGroupID);
                GUILayout.Label("GetFriendsGroupMembersCount(FriendsGroupID) : " + FriendsGroupMembersCount);

                if (FriendsGroupMembersCount > 0)
                {
                    CSteamID[] FriendsGroupMembersList = new CSteamID[FriendsGroupMembersCount];
                    SteamFriends.GetFriendsGroupMembersList(FriendsGroupID, FriendsGroupMembersList, FriendsGroupMembersCount);
                    GUILayout.Label("GetFriendsGroupMembersList(FriendsGroupID, FriendsGroupMembersList, FriendsGroupMembersCount) : " + FriendsGroupMembersList[0]);
                }
            }
        }

        GUILayout.Label("HasFriend(m_Friend, EFriendFlags.k_EFriendFlagImmediate) : " + SteamFriends.HasFriend(m_Friend, EFriendFlags.k_EFriendFlagImmediate));

        GUILayout.Label("GetClanCount() : " + SteamFriends.GetClanCount());

        m_Clan = SteamFriends.GetClanByIndex(0);
        GUILayout.Label("GetClanByIndex(0) : " + m_Clan);

        GUILayout.Label("GetClanName(m_Clan) : " + SteamFriends.GetClanName(m_Clan));

        GUILayout.Label("GetClanTag(m_Clan) : " + SteamFriends.GetClanTag(m_Clan));

        {
            int  Online;
            int  InGame;
            int  Chatting;
            bool ret = SteamFriends.GetClanActivityCounts(m_Clan, out Online, out InGame, out Chatting);
            GUILayout.Label("GetClanActivityCounts(m_Clan, out Online, out InGame, out Chatting) : " + ret + " -- " + Online + " -- " + InGame + " -- " + Chatting);
        }

        if (GUILayout.Button("DownloadClanActivityCounts(Clans, Clans.Length)"))
        {
            CSteamID[]     Clans  = { m_Clan, TestConstants.Instance.k_SteamId_Group_SteamUniverse };
            SteamAPICall_t handle = SteamFriends.DownloadClanActivityCounts(Clans, Clans.Length);
            OnDownloadClanActivityCountsResultCallResult.Set(handle);             // This call never seems to produce the CallResult.
            print("SteamFriends.DownloadClanActivityCounts(" + Clans + ", " + Clans.Length + ") : " + handle);
        }

        {
            int FriendCount = SteamFriends.GetFriendCountFromSource(m_Clan);
            GUILayout.Label("GetFriendCountFromSource(m_Clan) : " + FriendCount);

            if (FriendCount > 0)
            {
                GUILayout.Label("GetFriendFromSourceByIndex(m_Clan, 0) : " + SteamFriends.GetFriendFromSourceByIndex(m_Clan, 0));
            }
        }

        GUILayout.Label("IsUserInSource(m_Friend, m_Clan) : " + SteamFriends.IsUserInSource(m_Friend, m_Clan));

        if (GUILayout.Button("SetInGameVoiceSpeaking(SteamUser.GetSteamID(), false)"))
        {
            SteamFriends.SetInGameVoiceSpeaking(SteamUser.GetSteamID(), false);
            print("SteamFriends.SetInGameVoiceSpeaking(" + SteamUser.GetSteamID() + ", " + false + ")");
        }

        if (GUILayout.Button("ActivateGameOverlay(\"Friends\")"))
        {
            SteamFriends.ActivateGameOverlay("Friends");
            print("SteamFriends.ActivateGameOverlay(" + "\"Friends\"" + ")");
        }

        if (GUILayout.Button("ActivateGameOverlayToUser(\"friendadd\", TestConstants.Instance.k_SteamId_rlabrecque)"))
        {
            SteamFriends.ActivateGameOverlayToUser("friendadd", TestConstants.Instance.k_SteamId_rlabrecque);
            print("SteamFriends.ActivateGameOverlayToUser(" + "\"friendadd\"" + ", " + TestConstants.Instance.k_SteamId_rlabrecque + ")");
        }

        if (GUILayout.Button("ActivateGameOverlayToWebPage(\"http://steamworks.github.io\")"))
        {
            SteamFriends.ActivateGameOverlayToWebPage("http://steamworks.github.io");
            print("SteamFriends.ActivateGameOverlayToWebPage(" + "\"http://steamworks.github.io\"" + ")");
        }

        if (GUILayout.Button("ActivateGameOverlayToStore(TestConstants.Instance.k_AppId_TeamFortress2, EOverlayToStoreFlag.k_EOverlayToStoreFlag_None)"))
        {
            SteamFriends.ActivateGameOverlayToStore(TestConstants.Instance.k_AppId_TeamFortress2, EOverlayToStoreFlag.k_EOverlayToStoreFlag_None);
            print("SteamFriends.ActivateGameOverlayToStore(" + TestConstants.Instance.k_AppId_TeamFortress2 + ", " + EOverlayToStoreFlag.k_EOverlayToStoreFlag_None + ")");
        }

        if (GUILayout.Button("SetPlayedWith(TestConstants.Instance.k_SteamId_rlabrecque)"))
        {
            SteamFriends.SetPlayedWith(TestConstants.Instance.k_SteamId_rlabrecque);
            print("SteamFriends.SetPlayedWith(" + TestConstants.Instance.k_SteamId_rlabrecque + ")");
        }

        if (GUILayout.Button("ActivateGameOverlayInviteDialog(TestConstants.Instance.k_SteamId_rlabrecque)"))
        {
            SteamFriends.ActivateGameOverlayInviteDialog(TestConstants.Instance.k_SteamId_rlabrecque);
            print("SteamFriends.ActivateGameOverlayInviteDialog(" + TestConstants.Instance.k_SteamId_rlabrecque + ")");
        }

        if (GUILayout.Button("GetSmallFriendAvatar(m_Friend)"))
        {
            int ret = SteamFriends.GetSmallFriendAvatar(m_Friend);
            print("SteamFriends.GetSmallFriendAvatar(" + m_Friend + ") : " + ret);
            m_SmallAvatar = SteamUtilsTest.GetSteamImageAsTexture2D(ret);
        }

        if (GUILayout.Button("GetMediumFriendAvatar(m_Friend)"))
        {
            int ret = SteamFriends.GetMediumFriendAvatar(m_Friend);
            print("SteamFriends.GetMediumFriendAvatar(" + m_Friend + ") : " + ret);
            m_MediumAvatar = SteamUtilsTest.GetSteamImageAsTexture2D(ret);
        }

        if (GUILayout.Button("GetLargeFriendAvatar(m_Friend)"))
        {
            int ret = SteamFriends.GetLargeFriendAvatar(m_Friend);
            print("SteamFriends.GetLargeFriendAvatar(" + m_Friend + ") : " + ret);
            m_LargeAvatar = SteamUtilsTest.GetSteamImageAsTexture2D(ret);
        }

        if (GUILayout.Button("RequestUserInformation(m_Friend, false)"))
        {
            bool ret = SteamFriends.RequestUserInformation(m_Friend, false);
            print("SteamFriends.RequestUserInformation(" + m_Friend + ", " + false + ") : " + ret);
        }

        if (GUILayout.Button("RequestClanOfficerList(m_Clan)"))
        {
            SteamAPICall_t handle = SteamFriends.RequestClanOfficerList(m_Clan);
            OnClanOfficerListResponseCallResult.Set(handle);
            print("SteamFriends.RequestClanOfficerList(" + m_Clan + ") : " + handle);
        }

        GUILayout.Label("GetClanOwner(m_Clan) : " + SteamFriends.GetClanOwner(m_Clan));

        GUILayout.Label("GetClanOfficerCount(m_Clan) : " + SteamFriends.GetClanOfficerCount(m_Clan));

        GUILayout.Label("GetClanOfficerByIndex(m_Clan, 0) : " + SteamFriends.GetClanOfficerByIndex(m_Clan, 0));

        GUILayout.Label("GetUserRestrictions() : " + SteamFriends.GetUserRestrictions());

        if (GUILayout.Button("SetRichPresence(\"status\", \"Testing 1.. 2.. 3..\")"))
        {
            bool ret = SteamFriends.SetRichPresence("status", "Testing 1.. 2.. 3..");
            print("SteamFriends.SetRichPresence(" + "\"status\"" + ", " + "\"Testing 1.. 2.. 3..\"" + ") : " + ret);
        }

        if (GUILayout.Button("ClearRichPresence()"))
        {
            SteamFriends.ClearRichPresence();
            print("SteamFriends.ClearRichPresence()");
        }

        GUILayout.Label("GetFriendRichPresence(SteamUser.GetSteamID(), \"status\") : " + SteamFriends.GetFriendRichPresence(SteamUser.GetSteamID(), "status"));

        GUILayout.Label("GetFriendRichPresenceKeyCount(SteamUser.GetSteamID()) : " + SteamFriends.GetFriendRichPresenceKeyCount(SteamUser.GetSteamID()));

        GUILayout.Label("GetFriendRichPresenceKeyByIndex(SteamUser.GetSteamID(), 0) : " + SteamFriends.GetFriendRichPresenceKeyByIndex(SteamUser.GetSteamID(), 0));

        if (GUILayout.Button("RequestFriendRichPresence(m_Friend)"))
        {
            SteamFriends.RequestFriendRichPresence(m_Friend);
            print("SteamFriends.RequestFriendRichPresence(" + m_Friend + ")");
        }

        if (GUILayout.Button("InviteUserToGame(SteamUser.GetSteamID(), \"testing\")"))
        {
            bool ret = SteamFriends.InviteUserToGame(SteamUser.GetSteamID(), "testing");
            print("SteamFriends.InviteUserToGame(" + SteamUser.GetSteamID() + ", " + "\"testing\"" + ") : " + ret);
        }

        GUILayout.Label("GetCoplayFriendCount() : " + SteamFriends.GetCoplayFriendCount());

        if (GUILayout.Button("GetCoplayFriend(0)"))
        {
            m_CoPlayFriend = SteamFriends.GetCoplayFriend(0);
            print("SteamFriends.GetCoplayFriend(" + 0 + ") : " + m_CoPlayFriend);
        }

        GUILayout.Label("GetFriendCoplayTime(m_CoPlayFriend) : " + SteamFriends.GetFriendCoplayTime(m_CoPlayFriend));

        GUILayout.Label("GetFriendCoplayGame(m_CoPlayFriend) : " + SteamFriends.GetFriendCoplayGame(m_CoPlayFriend));

        if (GUILayout.Button("JoinClanChatRoom(m_Clan)"))
        {
            SteamAPICall_t handle = SteamFriends.JoinClanChatRoom(m_Clan);
            OnJoinClanChatRoomCompletionResultCallResult.Set(handle);
            print("SteamFriends.JoinClanChatRoom(" + m_Clan + ") : " + handle);
        }

        if (GUILayout.Button("LeaveClanChatRoom(m_Clan)"))
        {
            bool ret = SteamFriends.LeaveClanChatRoom(m_Clan);
            print("SteamFriends.LeaveClanChatRoom(" + m_Clan + ") : " + ret);
        }

        GUILayout.Label("GetClanChatMemberCount(m_Clan) : " + SteamFriends.GetClanChatMemberCount(m_Clan));

        GUILayout.Label("GetChatMemberByIndex(m_Clan, 0) : " + SteamFriends.GetChatMemberByIndex(m_Clan, 0));

        if (GUILayout.Button("SendClanChatMessage(m_Clan, \"Test\")"))
        {
            bool ret = SteamFriends.SendClanChatMessage(m_Clan, "Test");
            print("SteamFriends.SendClanChatMessage(" + m_Clan + ", " + "\"Test\"" + ") : " + ret);
        }

        //GUILayout.Label("SteamFriends.GetClanChatMessage() : " + SteamFriends.GetClanChatMessage()); // N/A - Must be called from within the callback OnGameConnectedClanChatMsg

        GUILayout.Label("IsClanChatAdmin(m_Clan, m_Friend) : " + SteamFriends.IsClanChatAdmin(m_Clan, m_Friend));

        GUILayout.Label("IsClanChatWindowOpenInSteam(m_Clan) : " + SteamFriends.IsClanChatWindowOpenInSteam(m_Clan));

        if (GUILayout.Button("OpenClanChatWindowInSteam(m_Clan)"))
        {
            bool ret = SteamFriends.OpenClanChatWindowInSteam(m_Clan);
            print("SteamFriends.OpenClanChatWindowInSteam(" + m_Clan + ") : " + ret);
        }

        if (GUILayout.Button("CloseClanChatWindowInSteam(m_Clan)"))
        {
            bool ret = SteamFriends.CloseClanChatWindowInSteam(m_Clan);
            print("SteamFriends.CloseClanChatWindowInSteam(" + m_Clan + ") : " + ret);
        }

        if (GUILayout.Button("SetListenForFriendsMessages(true)"))
        {
            bool ret = SteamFriends.SetListenForFriendsMessages(true);
            print("SteamFriends.SetListenForFriendsMessages(" + true + ") : " + ret);
        }

        if (GUILayout.Button("ReplyToFriendMessage(SteamUser.GetSteamID(), \"Testing!\")"))
        {
            bool ret = SteamFriends.ReplyToFriendMessage(SteamUser.GetSteamID(), "Testing!");
            print("SteamFriends.ReplyToFriendMessage(" + SteamUser.GetSteamID() + ", " + "\"Testing!\"" + ") : " + ret);
        }

        //GUILayout.Label("SteamFriends.GetFriendMessage() : " + SteamFriends.GetFriendMessage()); // N/A - Must be called from within the callback OnGameConnectedFriendChatMsg

        if (GUILayout.Button("GetFollowerCount(SteamUser.GetSteamID())"))
        {
            SteamAPICall_t handle = SteamFriends.GetFollowerCount(SteamUser.GetSteamID());
            OnFriendsGetFollowerCountCallResult.Set(handle);
            print("SteamFriends.GetFollowerCount(" + SteamUser.GetSteamID() + ") : " + handle);
        }

        if (GUILayout.Button("IsFollowing(m_Friend)"))
        {
            SteamAPICall_t handle = SteamFriends.IsFollowing(m_Friend);
            OnFriendsIsFollowingCallResult.Set(handle);
            print("SteamFriends.IsFollowing(" + m_Friend + ") : " + handle);
        }

        if (GUILayout.Button("EnumerateFollowingList(0)"))
        {
            SteamAPICall_t handle = SteamFriends.EnumerateFollowingList(0);
            OnFriendsEnumerateFollowingListCallResult.Set(handle);
            print("SteamFriends.EnumerateFollowingList(" + 0 + ") : " + handle);
        }

        GUILayout.Label("IsClanPublic(m_Clan) : " + SteamFriends.IsClanPublic(m_Clan));

        GUILayout.Label("IsClanOfficialGameGroup(m_Clan) : " + SteamFriends.IsClanOfficialGameGroup(m_Clan));

        GUILayout.EndScrollView();
        GUILayout.EndVertical();
    }
Example #18
0
    void GetUserAvatar()
    {
        int ret = SteamFriends.GetLargeFriendAvatar(theUser);

        UAI.texture = UserListScript.GetSteamImageAsTexture2D(ret);
    }
Example #19
0
    private void RenderPageOne()
    {
        GUILayout.Label("SteamFriends.GetPersonaName() : " + SteamFriends.GetPersonaName());

        if (GUILayout.Button("SteamFriends.SetPersonaName(SteamFriends.GetPersonaName())"))
        {
            SteamAPICall_t handle = SteamFriends.SetPersonaName(SteamFriends.GetPersonaName());
            OnSetPersonaNameResponseCallResult.Set(handle);
            print("SteamFriends.SetPersonaName(" + SteamFriends.GetPersonaName() + ") : " + handle);
        }

        GUILayout.Label("SteamFriends.GetPersonaState() : " + SteamFriends.GetPersonaState());
        GUILayout.Label("SteamFriends.GetFriendCount(k_EFriendFlagImmediate) : " + SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate));
        if (SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate) == 0)
        {
            Debug.LogError("You must have atleast one friend to use this Test");
            return;
        }

        m_Friend = SteamFriends.GetFriendByIndex(0, EFriendFlags.k_EFriendFlagImmediate);
        GUILayout.Label("SteamFriends.GetFriendByIndex(0, k_EFriendFlagImmediate) : " + m_Friend);
        GUILayout.Label("SteamFriends.GetFriendRelationship(m_Friend) : " + SteamFriends.GetFriendRelationship(m_Friend));
        GUILayout.Label("SteamFriends.GetFriendPersonaState(m_Friend) : " + SteamFriends.GetFriendPersonaState(m_Friend));
        GUILayout.Label("SteamFriends.GetFriendPersonaName(m_Friend) : " + SteamFriends.GetFriendPersonaName(m_Friend));

        {
            var  fgi = new FriendGameInfo_t();
            bool ret = SteamFriends.GetFriendGamePlayed(m_Friend, out fgi);
            GUILayout.Label("SteamFriends.GetFriendGamePlayed(m_Friend, out fgi) : " + ret + " -- " + fgi.m_gameID + " -- " + fgi.m_unGameIP + " -- " + fgi.m_usGamePort + " -- " + fgi.m_usQueryPort + " -- " + fgi.m_steamIDLobby);
        }


        GUILayout.Label("SteamFriends.GetFriendPersonaNameHistory(m_Friend, 1) : " + SteamFriends.GetFriendPersonaNameHistory(m_Friend, 1));
        GUILayout.Label("SteamFriends.GetFriendSteamLevel(m_Friend) : " + SteamFriends.GetFriendSteamLevel(m_Friend));
        GUILayout.Label("SteamFriends.GetPlayerNickname(m_Friend) : " + SteamFriends.GetPlayerNickname(m_Friend));

        {
            int FriendsGroupCount = SteamFriends.GetFriendsGroupCount();
            GUILayout.Label("SteamFriends.GetFriendsGroupCount() : " + FriendsGroupCount);

            if (FriendsGroupCount > 0)
            {
                FriendsGroupID_t FriendsGroupID = SteamFriends.GetFriendsGroupIDByIndex(0);
                GUILayout.Label("SteamFriends.GetFriendsGroupIDByIndex(0) : " + FriendsGroupID);
                GUILayout.Label("SteamFriends.GetFriendsGroupName(FriendsGroupID) : " + SteamFriends.GetFriendsGroupName(FriendsGroupID));

                int FriendsGroupMembersCount = SteamFriends.GetFriendsGroupMembersCount(FriendsGroupID);
                GUILayout.Label("SteamFriends.GetFriendsGroupMembersCount(FriendsGroupID) : " + FriendsGroupMembersCount);

                if (FriendsGroupMembersCount > 0)
                {
                    CSteamID[] FriendsGroupMembersList = new CSteamID[FriendsGroupMembersCount];
                    SteamFriends.GetFriendsGroupMembersList(FriendsGroupID, FriendsGroupMembersList, FriendsGroupMembersCount);
                    GUILayout.Label("SteamFriends.GetFriendsGroupMembersList(FriendsGroupID, FriendsGroupMembersList, FriendsGroupMembersCount) : " + FriendsGroupMembersList[0]);
                }
            }
        }

        GUILayout.Label("SteamFriends.HasFriend(m_Friend, k_EFriendFlagImmediate) : " + SteamFriends.HasFriend(m_Friend, EFriendFlags.k_EFriendFlagImmediate));

        GUILayout.Label("SteamFriends.GetClanCount() : " + SteamFriends.GetClanCount());
        if (SteamFriends.GetClanCount() == 0)
        {
            Debug.LogError("You must have atleast one clan to use this Test");
            return;
        }

        m_Clan = SteamFriends.GetClanByIndex(0);
        GUILayout.Label("SteamFriends.GetClanByIndex(0) : " + m_Clan);
        GUILayout.Label("SteamFriends.GetClanName(m_Clan) : " + SteamFriends.GetClanName(m_Clan));
        GUILayout.Label("SteamFriends.GetClanTag(m_Clan) : " + SteamFriends.GetClanTag(m_Clan));

        {
            int  Online;
            int  InGame;
            int  Chatting;
            bool ret = SteamFriends.GetClanActivityCounts(m_Clan, out Online, out InGame, out Chatting);
            GUILayout.Label("SteamFriends.GetClanActivityCounts(m_Clan, out Online, out InGame, out Chatting) : " + ret + " -- " + Online + " -- " + InGame + " -- " + Chatting);
        }

        if (GUILayout.Button("SteamFriends.DownloadClanActivityCounts(m_Clans, 2)"))
        {
            CSteamID[]     Clans  = { m_Clan, new CSteamID(103582791434672565) }; // m_Clan, Steam Universe
            SteamAPICall_t handle = SteamFriends.DownloadClanActivityCounts(Clans, 2);
            OnDownloadClanActivityCountsResultCallResult.Set(handle);             // This call never seems to produce a callback.
            print("SteamFriends.DownloadClanActivityCounts(" + Clans + ", 2) : " + handle);
        }

        {
            int FriendCount = SteamFriends.GetFriendCountFromSource(m_Clan);
            GUILayout.Label("SteamFriends.GetFriendCountFromSource(m_Clan) : " + FriendCount);

            if (FriendCount > 0)
            {
                GUILayout.Label("SteamFriends.GetFriendFromSourceByIndex(m_Clan, 0) : " + SteamFriends.GetFriendFromSourceByIndex(m_Clan, 0));
            }
        }

        GUILayout.Label("SteamFriends.IsUserInSource(m_Friend, m_Clan) : " + SteamFriends.IsUserInSource(m_Friend, m_Clan));

        if (GUILayout.Button("SteamFriends.SetInGameVoiceSpeaking(SteamUser.GetSteamID(), false)"))
        {
            SteamFriends.SetInGameVoiceSpeaking(SteamUser.GetSteamID(), false);
            print("SteamClient.SetInGameVoiceSpeaking(" + SteamUser.GetSteamID() + ", false);");
        }

        if (GUILayout.Button("SteamFriends.ActivateGameOverlay(\"Friends\")"))
        {
            SteamFriends.ActivateGameOverlay("Friends");
            print("SteamClient.ActivateGameOverlay(\"Friends\")");
        }

        if (GUILayout.Button("SteamFriends.ActivateGameOverlayToUser(\"friendadd\", 76561197991230424)"))
        {
            SteamFriends.ActivateGameOverlayToUser("friendadd", new CSteamID(76561197991230424));             // rlabrecque
            print("SteamClient.ActivateGameOverlay(\"friendadd\", 76561197991230424)");
        }

        if (GUILayout.Button("SteamFriends.ActivateGameOverlayToWebPage(\"http://google.com\")"))
        {
            SteamFriends.ActivateGameOverlayToWebPage("http://google.com");
            print("SteamClient.ActivateGameOverlay(\"http://google.com\")");
        }

        if (GUILayout.Button("SteamFriends.ActivateGameOverlayToStore(440, k_EOverlayToStoreFlag_None)"))
        {
            SteamFriends.ActivateGameOverlayToStore((AppId_t)440, EOverlayToStoreFlag.k_EOverlayToStoreFlag_None);             // 440 = TF2
            print("SteamClient.ActivateGameOverlay(440, k_EOverlayToStoreFlag_None)");
        }

        if (GUILayout.Button("SteamFriends.SetPlayedWith(76561197991230424)"))
        {
            SteamFriends.SetPlayedWith(new CSteamID(76561197991230424));             //rlabrecque
            print("SteamClient.SetPlayedWith(76561197991230424)");
        }

        if (GUILayout.Button("SteamFriends.ActivateGameOverlayInviteDialog(76561197991230424)"))
        {
            SteamFriends.ActivateGameOverlayInviteDialog(new CSteamID(76561197991230424));             //rlabrecque
            print("SteamClient.ActivateGameOverlayInviteDialog(76561197991230424)");
        }

        if (GUILayout.Button("SteamFriends.GetSmallFriendAvatar(m_Friend)"))
        {
            int FriendAvatar = SteamFriends.GetSmallFriendAvatar(m_Friend);
            print("SteamFriends.GetSmallFriendAvatar(" + m_Friend + ") - " + FriendAvatar);

            uint ImageWidth;
            uint ImageHeight;
            bool ret = SteamUtils.GetImageSize(FriendAvatar, out ImageWidth, out ImageHeight);

            if (ret && ImageWidth > 0 && ImageHeight > 0)
            {
                byte[] Image = new byte[ImageWidth * ImageHeight * 4];

                ret = SteamUtils.GetImageRGBA(FriendAvatar, Image, (int)(ImageWidth * ImageHeight * 4));

                m_SmallAvatar = new Texture2D((int)ImageWidth, (int)ImageHeight, TextureFormat.RGBA32, false, true);
                m_SmallAvatar.LoadRawTextureData(Image);                 // The image is upside down! "@ares_p: in Unity all texture data starts from "bottom" (OpenGL convention)"
                m_SmallAvatar.Apply();
            }
        }

        if (GUILayout.Button("SteamFriends.GetMediumFriendAvatar(m_Friend)"))
        {
            int FriendAvatar = SteamFriends.GetMediumFriendAvatar(m_Friend);
            print("SteamFriends.GetMediumFriendAvatar(" + m_Friend + ") - " + FriendAvatar);

            uint ImageWidth;
            uint ImageHeight;
            bool ret = SteamUtils.GetImageSize(FriendAvatar, out ImageWidth, out ImageHeight);

            if (ret && ImageWidth > 0 && ImageHeight > 0)
            {
                byte[] Image = new byte[ImageWidth * ImageHeight * 4];

                ret            = SteamUtils.GetImageRGBA(FriendAvatar, Image, (int)(ImageWidth * ImageHeight * 4));
                m_MediumAvatar = new Texture2D((int)ImageWidth, (int)ImageHeight, TextureFormat.RGBA32, false, true);
                m_MediumAvatar.LoadRawTextureData(Image);
                m_MediumAvatar.Apply();
            }
        }

        if (GUILayout.Button("SteamFriends.GetLargeFriendAvatar(m_Friend)"))
        {
            int FriendAvatar = SteamFriends.GetLargeFriendAvatar(m_Friend);
            print("SteamFriends.GetLargeFriendAvatar(" + m_Friend + ") - " + FriendAvatar);

            uint ImageWidth;
            uint ImageHeight;
            bool ret = SteamUtils.GetImageSize(FriendAvatar, out ImageWidth, out ImageHeight);

            if (ret && ImageWidth > 0 && ImageHeight > 0)
            {
                byte[] Image = new byte[ImageWidth * ImageHeight * 4];

                ret = SteamUtils.GetImageRGBA(FriendAvatar, Image, (int)(ImageWidth * ImageHeight * 4));
                if (ret)
                {
                    m_LargeAvatar = new Texture2D((int)ImageWidth, (int)ImageHeight, TextureFormat.RGBA32, false, true);
                    m_LargeAvatar.LoadRawTextureData(Image);
                    m_LargeAvatar.Apply();
                }
            }
        }
    }
Example #20
0
    // Use this for initialization
    void Start()
    {
        DontDestroyOnLoad(lobbyCanvas);

        // fill out all callbacks on SteamHub.Lobby_Callbacks
        var callbacks = new SteamHub.Lobby_Callbacks();

        callbacks.LobbyCreated     = MyCallbacks_LobbyCreated;
        callbacks.LobbyEntered     = MyCallbacks_LobbyEntered;
        callbacks.LobbyListUpdated = MyCallbacks_LobbyListUpdated;
        callbacks.LobbyDataUpdated = MyCallbacks_LobbyDataUpdated;
        callbacks.LobbyChatUpdate  = MyCallbacks_LobbyChatUpdate;
        callbacks.LobbyChatMessage = MyCallbacks_LobbyChatMessage;



        // call LobbyManager_Start
        SteamHub.LobbyManager_Start(callbacks);

        Text t = createLobbyText.GetComponent <Text>();

        t.text = "Create or join a lobby please";

        SteamHub.Lobby_RefreshList();

        if (SteamManager.Initialized && profilePic != null)
        {
            profileName.text = SteamFriends.GetPersonaName();
            SteamFriends.SetRichPresence("status", "Main Menu");

            //display profile pic in top right
            CSteamID m_Friend = SteamUser.GetSteamID();

            int FriendAvatar = SteamFriends.GetLargeFriendAvatar(m_Friend);
            print("SteamFriends.GetLargeFriendAvatar(" + m_Friend + ") - " + FriendAvatar);

            uint ImageWidth;
            uint ImageHeight;
            bool ret = Steamworks.SteamUtils.GetImageSize(FriendAvatar, out ImageWidth, out ImageHeight);

            if (ret && ImageWidth > 0 && ImageHeight > 0)
            {
                byte[] Image = new byte[ImageWidth * ImageHeight * 4];

                ret = Steamworks.SteamUtils.GetImageRGBA(FriendAvatar, Image, (int)(ImageWidth * ImageHeight * 4));
                if (ret)
                {
                    m_LargeAvatar = new Texture2D((int)ImageWidth, (int)ImageHeight, TextureFormat.RGBA32, false, true);
                    m_LargeAvatar.LoadRawTextureData(Image);
                    m_LargeAvatar.Apply();

                    profilePic.GetComponent <Image>().sprite = Sprite.Create(m_LargeAvatar, new Rect(0, 0, 184, 184), new Vector2(184, 184));
                }
            }
        }

        if (SteamManager.Initialized)
        {
            Debug.Log("Steam Online");

            steamNotification.GetComponent <Text>().color = Color.green;
            steamNotification.GetComponent <Text>().text  = "STEAM ONLINE";
            // steamNotification.SetActive(false);

            //bool ret0 =
            SteamUserStats.RequestCurrentStats();

            //we're going to use Spacewar's "NumWins" to track kills and "AverageSpeed" as ELO for matchmaking
            //NumLosses as deaths?
            //float myELO;
            //SteamUserStats.GetStat("AverageSpeed", out myELO);
            //bool ret4 = SteamUserStats.ResetAllStats(true);
            int Data;
            //bool ret =
            SteamUserStats.GetStat("NumGames", out Data);
            // Debug.Log(Data + " " + ret);

            currentEloText.GetComponent <Text>().text = "CURRENT ELO: " + Data;

            currentEloVisualFeedback.fillAmount = Data / 100.0f;

            // int m_nTotalNumWins;
            //SteamUserStats.GetStat("NumWins", out m_nTotalNumWins);
            //Debug.Log(m_nTotalNumWins);

            //SteamUserStats.SetStat("NumWins", 10);

            //bool bSuccess = SteamUserStats.StoreStats();
            //Debug.Log(bSuccess);
        }
        else
        {
            Debug.Log("Steam Offline");

            steamNotification.GetComponent <Text>().color = Color.red;
            steamNotification.GetComponent <Text>().text  = "STEAM OFFLINE";
        }
    }
Example #21
0
        /// <summary>
        /// Most users who didn't set their avatar have a question mark as their avatar texture.
        /// However, Steam allows to check if there is no texture set at all, which will probably never happen.
        /// </summary>
        /// <returns><c>true</c> if the given user has a custom avatar image or uses the default question mark texture as avatar; otherwise, <c>false</c>.</returns>
        /// <param name="p_steamIDUser">user ID to look for.</param>
        public bool IsAvatarTextureSet(CSteamID p_steamIDUser)
        {
            int avatarImageHandle = SteamFriends.GetLargeFriendAvatar(p_steamIDUser);

            return(avatarImageHandle != 0);
        }