Beispiel #1
0
 public static bool GetFriendGamePlayed(CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo)
 {
     InteropHelp.TestIfAvailableClient();
     return(NativeMethods.ISteamFriends_GetFriendGamePlayed(CSteamAPIContext.GetSteamFriends(), steamIDFriend, out pFriendGameInfo));
 }
		public static extern bool ISteamFriends_GetFriendGamePlayed(CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo);
 private static extern bool _GetFriendGamePlayed(IntPtr self, SteamId steamIDFriend, ref FriendGameInfo_t pFriendGameInfo);
        internal bool GetFriendGamePlayed(SteamId steamIDFriend, ref FriendGameInfo_t pFriendGameInfo)
        {
            var returnValue = _GetFriendGamePlayed(Self, steamIDFriend, ref pFriendGameInfo);

            return(returnValue);
        }
	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();
				}
			}
		}
	}
		/// <summary>
		/// <para> returns true if the friend is actually in a game, and fills in pFriendGameInfo with an extra details</para>
		/// </summary>
		public static bool GetFriendGamePlayed(CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo) {
			InteropHelp.TestIfAvailableClient();
			return NativeMethods.ISteamFriends_GetFriendGamePlayed(steamIDFriend, out pFriendGameInfo);
		}
Beispiel #7
0
 internal bool GetFriendGamePlayed(SteamId steamIDFriend, ref FriendGameInfo_t pFriendGameInfo)
 {
     return(_GetFriendGamePlayed(Self, steamIDFriend, ref pFriendGameInfo));
 }
Beispiel #8
0
 /// returns true if the friend is actually in a game, and fills in pFriendGameInfo with an extra details
 public static bool GetFriendGamePlayed(CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo)
 {
     pFriendGameInfo = new FriendGameInfo_t();
     return(false);
 }
        public static string GetFriendPersonaName(CSteamID steamIDFriend) => default;               // 0x000000018094F0E0-0x000000018094F140

        public static bool GetFriendGamePlayed(CSteamID steamIDFriend, out FriendGameInfo_t pFriendGameInfo)
        {
            pFriendGameInfo = default;
            return(default);