public static void ShowFriendRequest(PlayerIndex player, Gamer gamer) { SteamFriends.ActivateGameOverlayToUser( "friendadd", gamer.steamID ); }
public bool ShowPlayerProfile(ulong id) { if (!SteamUtils.IsOverlayEnabled()) { return(false); } SteamFriends.ActivateGameOverlayToUser("steamid", (CSteamID)id); return(true); }
public override void OnEnter() { if (!Application.isEditor) { ulong ID = ulong.Parse(this.steamID.Value); CSteamID IDsteam; IDsteam.m_SteamID = ID; SteamFriends.ActivateGameOverlayToUser(overlayType.ToString(), IDsteam); } else { Debug.LogWarning("Steam Overlay does not work in editor mode"); Finish(); } Finish(); }
private Container leaderboardEntry(LeaderboardEntry_t entry) { Container container = this.main.UIFactory.CreateButton(delegate() { if (SteamWorker.SteamInitialized) { SteamFriends.ActivateGameOverlayToUser("steamid", entry.m_steamIDUser); } }); this.resizeContainer(container, 4.0f); TextElement rank = this.main.UIFactory.CreateLabel(entry.m_nGlobalRank.ToString()); rank.AnchorPoint.Value = new Vector2(1, 0); rank.Position.Value = new Vector2(this.width * 0.15f, 0); container.Children.Add(rank); TextElement name = this.main.UIFactory.CreateLabel(); name.FilterUnicode.Value = true; if (SteamFriends.RequestUserInformation(entry.m_steamIDUser, true)) { // Need to wait for a callback before we know their username name.Add(new Binding <string>(name.Text, () => SteamFriends.GetFriendPersonaName(entry.m_steamIDUser), this.PersonaNotification)); } else { // We already know the username name.Text.Value = SteamFriends.GetFriendPersonaName(entry.m_steamIDUser); } name.Position.Value = new Vector2(this.width * 0.15f + this.spacing, 0); container.Children.Add(name); TextElement score = this.main.UIFactory.CreateLabel(SecondsToTimeString((float)entry.m_nScore / 1000.0f)); score.AnchorPoint.Value = new Vector2(1, 0); score.Position.Value = new Vector2(this.width - 4.0f - this.spacing, 0); container.Children.Add(score); return(container); }
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(); }
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(); } } } }
private void GetMouseInput(float a_deltaTime) { if (Time.timeSinceLevelLoad < 0.5f) { return; } bool flag = !this.m_inventory.IsVisible() && !this.m_communicator.IsActive(true) && false == this.m_popupGui.IsActive(); Vector3 mousePosition = Input.mousePosition; bool flag2 = (this.m_lastMousePos - mousePosition).sqrMagnitude > 4f; this.m_lastMousePos = mousePosition; Ray ray = Camera.main.ScreenPointToRay(mousePosition); if (flag2) { this.m_hideCursorTime = Time.time + 1f; } bool flag3 = Time.time < this.m_hideCursorTime; if (flag3 != Screen.showCursor) { Screen.showCursor = flag3; } if (Input.GetMouseButton(1) && flag) { this.m_buildRot += a_deltaTime * 90f; while (this.m_buildRot > 360f) { this.m_buildRot -= 360f; } } if (Input.GetMouseButtonDown(1)) { RaycastHit raycastHit; if (Physics.Raycast(ray, out raycastHit, 100f, 665600)) { int layer = raycastHit.transform.gameObject.layer; if (layer != 13) { if (layer == 17) { if (!this.m_inventory.IsShopActive()) { RemoteItem component = raycastHit.transform.GetComponent <RemoteItem>(); if (null != component && this.m_inventory.IsVisible()) { this.m_itemGui.Show(component, ray.GetPoint(4.5f)); } } } } else if (flag) { RemoteCharacter component2 = raycastHit.transform.GetComponent <RemoteCharacter>(); if (null != component2 && null != this.m_client) { ulong steamId = this.m_client.GetSteamId(component2.m_id); if (Global.isSteamActive && 0UL < steamId) { SteamFriends.ActivateGameOverlayToUser("steamid", new CSteamID(steamId)); } } } } } else if (Input.GetMouseButtonDown(0)) { if (flag) { this.ResetTarget(); } bool flag4 = false; RaycastHit raycastHit2; if (Physics.Raycast(ray, out raycastHit2, 100f, 6995488)) { switch (raycastHit2.transform.gameObject.layer) { case 9: case 13: if (flag) { RemoteCharacter component3 = raycastHit2.transform.GetComponent <RemoteCharacter>(); if (null != component3) { if (!component3.m_isOwnPlayer) { this.m_currentTarget = component3; flag4 = true; } } else if (flag && Input.GetAxis("Vertical") == 0f && Input.GetAxis("Horizontal") == 0f) { this.CalculatePath(raycastHit2.point, 12 != raycastHit2.transform.gameObject.layer); } } break; case 10: case 12: case 21: if (flag && Input.GetAxis("Vertical") == 0f && Input.GetAxis("Horizontal") == 0f && null != this.m_client && !this.m_client.IsInVehicle()) { Vector3 point = raycastHit2.point; this.m_walkIndicator.position = new Vector3(raycastHit2.point.x, 0.1f, raycastHit2.point.z); this.CalculatePath(point, 12 != raycastHit2.transform.gameObject.layer); } break; case 11: case 15: case 19: case 22: flag4 = flag; break; case 17: if (this.m_inventory.IsShopActive()) { RemoteItem component4 = raycastHit2.transform.GetComponent <RemoteItem>(); if (null != component4 && component4.m_type != 254 && this.m_inventory.IsVisible()) { this.m_buySellPos = this.m_inventory.ToWorldPos(component4.transform.localPosition); bool flag5 = this.m_buySellPos.x < 6f; float num = (!flag5) ? this.m_inventory.GetShopBuyMultiplier() : this.m_inventory.GetShopSellMultiplier(); string text = (!flag5) ? LNG.Get("BUY") : LNG.Get("SELL"); int num2 = (int)(Items.GetValue(component4.m_type, component4.m_amountOrCond) * num + 0.5f); string text2 = (!Items.HasCondition(component4.m_type)) ? ("x " + component4.m_amountOrCond) : (component4.m_amountOrCond.ToString() + "%"); ItemDef itemDef = Items.GetItemDef(component4.m_type); if (flag5 || this.m_client.GetGoldCount() >= num2) { string a_caption = string.Concat(new object[] { text, "\n", LNG.Get(itemDef.ident), "\n", text2, "\nfor ", num2, " ", LNG.Get("CURRENCY"), "?" }); this.m_buySellPopupSessionId = this.m_popupGui.ShowGui(true, a_caption); } else { string a_caption2 = string.Concat(new object[] { LNG.Get("ITEMSHOP_TOO_LESS_GOLD"), "\n", num2, " ", LNG.Get("CURRENCY") }); this.m_popupGui.ShowGui(true, a_caption2); } } } else if (Time.time < this.m_doubleClickTime) { this.m_doubleClickTime = 0f; if (null != raycastHit2.transform) { Vector3 localPosition = raycastHit2.transform.localPosition; Vector3 zero = Vector3.zero; if (this.m_inventory.DragDrop(ref localPosition, ref zero)) { this.m_sendDragPos = localPosition; this.m_sendDropPos = Vector3.zero; } } } else { this.m_dragItem = raycastHit2.transform; this.m_startDragPos = this.m_dragItem.localPosition; } break; } } if (flag4) { this.CalculateRotTowardsMouse(mousePosition); this.m_stopAttackingTime = Time.time + 0.3f; } } else if (Input.GetMouseButtonUp(0) && null != this.m_dragItem) { Vector3 startDragPos = this.m_startDragPos; Vector3 localPosition2 = this.m_dragItem.localPosition; if (this.m_inventory.DragDrop(ref startDragPos, ref localPosition2)) { if (startDragPos != localPosition2) { this.m_sendDragPos = startDragPos; this.m_sendDropPos = localPosition2; } else { this.m_dragItem.localPosition = this.m_startDragPos; this.m_doubleClickTime = Time.time + 0.5f; } } this.m_dragItem = null; } if (null != this.m_dragItem) { this.m_dragItem.position = ray.GetPoint(5f); Vector3 localPosition3 = this.m_dragItem.localPosition; localPosition3.z = 0f; this.m_dragItem.localPosition = localPosition3; } else if (!flag2) { if (this.m_mouseOverDur != -1f) { this.m_mouseOverDur += a_deltaTime; if (this.m_mouseOverDur > 0.1f) { this.m_buildingHealthIndicator.position = Vector3.up * 1000f; this.m_tooltip.position = Vector3.up * 1000f; this.m_tooltipHudR.position = Vector3.up * 1000f; this.m_tooltipHudR.parent = null; this.m_tooltipHudL.position = Vector3.up * 1000f; this.m_tooltipHudL.parent = null; if (this.m_mouseOverRenderers != null && this.m_mouseOverRenderers.Length != 0) { foreach (Renderer renderer in this.m_mouseOverRenderers) { if (null != renderer) { renderer.gameObject.layer = this.m_mouseOverLayer; } } this.m_mouseOverRenderers = null; } if (null != this.m_mouseOverTransform) { this.m_mouseOverTransform.localScale = this.m_initialMouseOverScale; this.m_mouseOverTransform = null; } RaycastHit raycastHit3; if (Physics.Raycast(ray, out raycastHit3, 100f, 7007776)) { if (raycastHit3.transform.gameObject.layer == 5) { string[] array = raycastHit3.transform.gameObject.name.Split(new char[] { '-' }); if (array != null && 1 < array.Length) { if ("tooltip" == array[0]) { this.m_tooltipHudRText.text = LNG.Get(array[1]); this.m_tooltipHudR.position = raycastHit3.transform.position - raycastHit3.transform.right * 0.3f; this.m_tooltipHudR.rotation = raycastHit3.transform.rotation; this.m_tooltipHudR.parent = raycastHit3.transform; } else if ("mission" == array[0]) { int a_index = 0; try { a_index = int.Parse(array[1]); } catch (Exception ex) { Debug.LogWarning("ClientInput.cs: " + ex.ToString()); } Mission mission = this.m_client.GetMission(a_index); if (mission != null) { this.m_tooltipHudLText.text = string.Concat(new object[] { this.GetMissionText(mission), LNG.Get("TIME_LEFT"), ": ", (int)(mission.m_dieTime / 60f), " min" }); this.m_tooltipHudL.position = raycastHit3.transform.position + raycastHit3.transform.right * 0.3f; this.m_tooltipHudL.rotation = raycastHit3.transform.rotation; this.m_tooltipHudL.parent = raycastHit3.transform; } } } } else { this.m_mouseOverTransform = raycastHit3.transform; this.m_initialMouseOverScale = this.m_mouseOverTransform.localScale; if (raycastHit3.transform.gameObject.layer == 17) { if (this.m_inventory.IsVisible()) { this.m_inventory.ShowInfo(raycastHit3.transform.position); } } else if (raycastHit3.transform.gameObject.layer == 10) { this.m_mouseOverTransform.localScale *= 1.33f; } else if (raycastHit3.transform.gameObject.layer == 19) { RemoteBuilding component5 = raycastHit3.transform.parent.GetComponent <RemoteBuilding>(); if (null != this.m_buildingHealthIndicator && null != component5) { Vector3 b = Vector3.up * 4f; float x = 0.25f * (float)(3 - (int)(component5.m_health * 0.033f)); this.m_buildingHealthIndicator.renderer.material.mainTextureOffset = new Vector2(x, 0f); this.m_buildingHealthIndicator.position = raycastHit3.transform.position + b; } } else if (raycastHit3.transform.gameObject.layer == 15) { bool flag6 = "building_10" == raycastHit3.transform.gameObject.name || "building_11" == raycastHit3.transform.gameObject.name; Vector3 b2 = Vector3.up * ((!flag6) ? 3f : 6.5f); this.m_tooltipText.text = LNG.Get("TOOLTIP_RESOURCE"); this.m_tooltip.position = raycastHit3.transform.position + b2; } else if (raycastHit3.transform.gameObject.layer == 21) { Vector3 b3 = Vector3.up * 2f; this.m_tooltipText.text = LNG.Get("TOOLTIP_ITEMSTORAGE"); this.m_tooltip.position = raycastHit3.transform.position + b3; } else if (raycastHit3.transform.gameObject.layer == 9) { RemoteCharacter component6 = raycastHit3.transform.GetComponent <RemoteCharacter>(); if (null == component6) { Vector3 b4 = Vector3.up * 3f; this.m_tooltipText.text = LNG.Get("TOOLTIP_INTERACT"); this.m_tooltip.position = raycastHit3.transform.position + b4; } } else if (raycastHit3.transform.gameObject.layer == 22) { MissionObjective component7 = raycastHit3.transform.GetComponent <MissionObjective>(); if (null != component7) { Vector3 b5 = Vector3.up * 3f; this.m_tooltipText.text = LNG.Get("MISSION_TYPE_" + component7.m_type.ToString("d")); this.m_tooltip.position = raycastHit3.transform.position + b5; } } this.m_mouseOverRenderers = raycastHit3.transform.GetComponentsInChildren <Renderer>(); if (this.m_mouseOverRenderers.Length == 0 && null != raycastHit3.transform.parent) { this.m_mouseOverRenderers = raycastHit3.transform.parent.GetComponentsInChildren <Renderer>(); } if (this.m_mouseOverRenderers.Length != 0) { this.m_mouseOverLayer = this.m_mouseOverRenderers[0].gameObject.layer; foreach (Renderer renderer2 in this.m_mouseOverRenderers) { renderer2.gameObject.layer = 20; } } } } this.m_mouseOverDur = -1f; } } } else { this.m_mouseOverDur = 0f; } }
public void Profile(ulong steamid) { SteamFriends.ActivateGameOverlayToUser("steamid", new CSteamID(steamid)); }
public static void ShowGamerCard(PlayerIndex player, Gamer gamer) { SteamFriends.ActivateGameOverlayToUser("steamid", gamer.steamID); }
public void FriendRemove(ulong steamID) { CSteamID ID = new CSteamID(steamID); SteamFriends.ActivateGameOverlayToUser("friendremove", ID); }
public void FriendRequestIgnore(ulong steamID) { CSteamID ID = new CSteamID(steamID); SteamFriends.ActivateGameOverlayToUser("friendrequestignore", ID); }
public void FriendAdd(ulong steamID) { CSteamID ID = new CSteamID(steamID); SteamFriends.ActivateGameOverlayToUser("friendadd", ID); }
public void ChatTo(ulong steamID) { CSteamID ID = new CSteamID(steamID); SteamFriends.ActivateGameOverlayToUser("chat", ID); }
public static void ShowPlayerReview(PlayerIndex player, Gamer gamer) { // Comments/Rating are on the user profile SteamFriends.ActivateGameOverlayToUser("steamid", gamer.steamID); }
private void LateUpdate() { if (null != this.m_guimaster) { string clickedButtonName = this.m_guimaster.GetClickedButtonName(); string rightClickedButtonName = this.m_guimaster.GetRightClickedButtonName(); string text = (!(string.Empty != clickedButtonName)) ? rightClickedButtonName : clickedButtonName; if (string.Empty != text) { if (text.StartsWith("btnpe_") && null != this.m_client) { ulong num = 0UL; try { num = ulong.Parse(text.Substring("btnpe_".Length)); } catch (Exception) { } if (0UL < num) { if (this.m_invitePartyMode) { if (!this.m_invitedSteamIds.Contains(num) && this.m_client.GetSteamId() != num) { this.m_client.SendPartyRequest(ePartyControl.invite, num); this.m_invitedSteamIds.Add(num); this.UpdateList(); this.m_descriptionText.text = LNG.Get("PARTY_SENT_INVITE"); } } else if (string.Empty != clickedButtonName) { if (Global.isSteamActive) { SteamFriends.ActivateGameOverlayToUser("steamid", new CSteamID(num)); } } else if (this.m_client.GetSteamId() != num) { if (this.m_mutedSteamIds.Contains(num)) { this.m_mutedSteamIds.Remove(num); } else { this.m_mutedSteamIds.Add(num); } this.UpdateList(); } } } else if (text.StartsWith("btn_page_")) { try { this.m_page = int.Parse(text.Substring("btn_page_".Length)) - 1; this.UpdateList(); } catch (Exception) { } } } } }
void OpenChat() { SteamFriends.ActivateGameOverlayToUser("chat", m_Friend); }
// ReSharper disable once InconsistentNaming // ReSharper disable once UnusedMember.Local private void OnGUI() { if (LabelStyle == null) { // Setup label style LabelStyle = new GUIStyle(GUI.skin.label) { fontSize = 12 }; } if (!IsOpen || ChatBox.IsChatOpen) { return; } // Lock the view LocalPlayer.FpCharacter.LockView(); // Apply the skin GUI.skin = ModAPI.Gui.Skin; // Create the menu MenuRect = new Rect((Camera.main.pixelWidth - Width) / 2, 10, Width, Height); GUI.Box(MenuRect, "", GUI.skin.window); CurrentTab = GUI.Toolbar(new Rect(MenuRect.xMin, MenuRect.yMin, MenuRect.width, ToolbarHeight), CurrentTab, new[] { nameof(Values.Self), "Chat", "Voice", "Players", "Spawn", "Sphere", "Aura" }, GUI.skin.GetStyle("Tabs")); Y = MenuRect.yMin + ToolbarHeight + Padding; // ReSharper disable once SwitchStatementMissingSomeCases switch (CurrentTab) { #region Self case 0: { Y -= Padding; //GUI.Box(new Rect(MenuRect.xMin, Y - 1f, Width - 8f, Height - ToolbarHeight), "", GUI.skin.box); Values.Self.ScrollPosition = GUI.BeginScrollView(new Rect(MenuRect.xMin, Y, Width, Height - ToolbarHeight - 5), Values.Self.ScrollPosition, new Rect(0, 0, Width - 24, Height * 2)); Y = Padding; AddLabel("OPTIONS", increaseY: true, autoAlign: false); AddLabel("InstantRevive:", autoAlign: false); AddCheckBox(ref Values.Self.InstaRevive, increaseY: true, autoAlign: false); AddLabel("Visible:", autoAlign: false); AddCheckBox(ref Values.Self.Visible, increaseY: true, autoAlign: false); AddLabel("Fire trail:", autoAlign: false); AddCheckBox(ref Values.Self.FireTrail, increaseY: true, autoAlign: false); AddLabel("God mode:", autoAlign: false); AddCheckBox(ref Values.Self.GodMode, increaseY: true, autoAlign: false); AddLabel("Fly mode:", autoAlign: false); AddCheckBox(ref Values.Self.FlyMode, increaseY: true, autoAlign: false); if (Values.Self.FlyMode) { AddLabel("Noclip:", autoAlign: false); AddCheckBox(ref Values.Self.NoClip, increaseY: true, autoAlign: false); } AddLabel("InstantTree:", autoAlign: false); AddCheckBox(ref Values.Self.InstantTree, increaseY: true, autoAlign: false); AddLabel("InstantDestroy:", autoAlign: false); AddCheckBox(ref Values.Self.InstaDestroy, increaseY: true, autoAlign: false); AddLabel("Move speed:", autoAlign: false); AddSlider(ref Values.Self.SpeedMultiplier, 1, 10, increaseY: true, autoAlign: false); AddLabel("Jump power:", autoAlign: false); AddSlider(ref Values.Self.JumpMultiplier, 1, 10, increaseY: true, autoAlign: false); Y += Padding; AddLabel("STATS", autoAlign: false); const float checkBoxPosition = 360; AddLabel("Fix", checkBoxPosition, increaseY: true, autoAlign: false); AddStatSlider("Health:", ref Values.Stats.FixedHealth, ref LocalPlayer.Stats.Health, 0, 100, ref Values.Stats.FixHealth, checkBoxPosition, false); AddStatSlider("Battery charge:", ref Values.Stats.FixedBatteryCharge, ref LocalPlayer.Stats.BatteryCharge, 0, 100, ref Values.Stats.FixBatteryCharge, checkBoxPosition, false); AddStatSlider("Fullness:", ref Values.Stats.FixedFullness, ref LocalPlayer.Stats.Fullness, 0, 1, ref Values.Stats.FixFullness, checkBoxPosition, false); AddStatSlider("Stamina:", ref Values.Stats.FixedStamina, ref LocalPlayer.Stats.Stamina, 0, 100, ref Values.Stats.FixStamina, checkBoxPosition, false); AddStatSlider("Energy:", ref Values.Stats.FixedEnergy, ref LocalPlayer.Stats.Energy, 0, 100, ref Values.Stats.FixEnergy, checkBoxPosition, false); AddStatSlider("Thirst:", ref Values.Stats.FixedThirst, ref LocalPlayer.Stats.Thirst, 0, 1, ref Values.Stats.FixThirst, checkBoxPosition, false); AddStatSlider("Starvation:", ref Values.Stats.FixedStarvation, ref LocalPlayer.Stats.Starvation, 0, 1, ref Values.Stats.FixStarvation, checkBoxPosition, false); AddStatSlider("Body temp:", ref Values.Stats.FixedBodyTemp, ref LocalPlayer.Stats.BodyTemp, 10, 60, ref Values.Stats.FixBodyTemp, checkBoxPosition, false); GUI.EndScrollView(); break; } #endregion #region Chat case 1: { AddLabel("Chat as...", increaseY: true); AddRadioButtons(ref GriefClientPro.ChatManager.ChatAsValue, ChatManager.ChatAsNames, ChatManager.ChatAsCount, width: ChatManager.ChatAsCount * 100, increaseY: true); if (GriefClientPro.ChatManager.CurrentChatAs == ChatManager.ChatAs.Self) { AddLabel("Chat as while invisible...", increaseY: true); AddRadioButtons(ref GriefClientPro.ChatManager.ChatAsInvisibleValue, ChatManager.ChatAsInvisibleNames, ChatManager.ChatAsInvisibleCount, width: ChatManager.ChatAsInvisibleCount * 100, increaseY: true); } AddLabel("Prefix options", increaseY: true); AddCheckBox(ref GriefClientPro.ChatManager.UsePrefixWhenVisible, 20); AddLabel("Visible", 40); AddCheckBox(ref GriefClientPro.ChatManager.UsePrefixWhenInvisible, 100); AddLabel("Invisible", 120); AddLabel("Prefix: ", 190); GriefClientPro.ChatManager.Prefix = GUI.TextField(new Rect(MenuRect.xMin + Padding + 235, Y, 50, 20), GriefClientPro.ChatManager.Prefix); IncreaseY(); if (GriefClientPro.ChatManager.CurrentChatAs == ChatManager.ChatAs.Selected || GriefClientPro.ChatManager.CurrentChatAsInvisible == ChatManager.ChatAsInvisible.Selected) { // Validate current player GriefClientPro.ChatManager.ValidatePlayer(); AddLabel("Select a player", increaseY: true); if (GriefClientPro.PlayerManager.Players.Count == 0) { AddLabel("- none found -", 20, increaseY: true); } else { foreach (var player in GriefClientPro.PlayerManager.Players) { // Add checkbox if (GUI.Toggle(new Rect(MenuRect.xMin + Padding + 20, Y, 20, 20), GriefClientPro.ChatManager.LastChattedAs?.SteamId == player.SteamId, "")) { // Apply player GriefClientPro.ChatManager.LastChattedAs = player; } // Add player name AddLabel(player.FriendlyName, 40, increaseY: true); } } } break; } #endregion #region Voice case 2: { AddLabel("Sendng voice as...", increaseY: true); AddRadioButtons(ref GriefClientPro.VoiceManager.ChatAsValue, VoiceManager.ChatAsNames, VoiceManager.ChatAsCount, width: VoiceManager.ChatAsCount * 100, increaseY: true); if (GriefClientPro.VoiceManager.CurrentChatAs == VoiceManager.VoiceChatAs.Self) { AddLabel("Chat as while invisible...", increaseY: true); AddRadioButtons(ref GriefClientPro.VoiceManager.ChatAsInvisibleValue, VoiceManager.ChatAsInvisibleNames, VoiceManager.ChatAsInvisibleCount, width: VoiceManager.ChatAsInvisibleCount * 100, increaseY: true); } if (GriefClientPro.VoiceManager.CurrentChatAs == VoiceManager.VoiceChatAs.Selected || GriefClientPro.VoiceManager.CurrentChatAsInvisible == VoiceManager.VoiceChatAsInvisible.Selected) { // Validate current player GriefClientPro.VoiceManager.ValidatePlayer(); AddLabel("Select a player", increaseY: true); if (GriefClientPro.PlayerManager.Players.Count == 0) { AddLabel("- none found -", 20, increaseY: true); } else { foreach (var player in GriefClientPro.PlayerManager.Players) { // Add checkbox if (GUI.Toggle(new Rect(MenuRect.xMin + Padding + 20, Y, 20, 20), GriefClientPro.VoiceManager.LastChattedAs?.SteamId == player.SteamId, "")) { // Apply player GriefClientPro.VoiceManager.LastChattedAs = player; } // Add player name AddLabel(player.FriendlyName, 40, increaseY: true); } } } break; } #endregion #region Players case 3: { // Kill, Fire trail, teleport, trap, steam AddLabel("Player Name"); AddLabel("Kill", 160); AddLabel("Fire trail", 220, increaseY: true); if (GriefClientPro.PlayerManager.Players.Count == 0) { AddLabel("- none found -", 20, increaseY: true); } else { foreach (var player in GriefClientPro.PlayerManager.Players) { // Add player name AddLabel(player.FriendlyName); if (player.SteamId > 0) { // Add kill checkbox if (GUI.Toggle(new Rect(MenuRect.xMin + Padding + 160, Y, 20, 20), GriefClientPro.KillAllPlayers.PermaKillPlayers.Contains(player.SteamId), "")) { GriefClientPro.KillAllPlayers.AddPlayerToPermaKill(player); } else { GriefClientPro.KillAllPlayers.RemovePlayerToPermaKill(player); } // Add fire trail checkbox if (GUI.Toggle(new Rect(MenuRect.xMin + Padding + 220, Y, 20, 20), LastFirePositions.ContainsKey(player.SteamId), "")) { if (!LastFirePositions.ContainsKey(player.SteamId)) { LastFirePositions.Add(player.SteamId, Vector3.zero); } } else { LastFirePositions.Remove(player.SteamId); } } // Add teleport button if (AddButton("Teleport", 300, 75)) { LocalPlayer.Transform.position = player.Position; } // Add trap extreme button if (AddButton("Trap", 385, 60)) { if (SpawnOffsets == null) { SpawnOffsets = new List <Vector3>(); const int size = 5; for (var x = -size; x < size; x++) { for (var y = -1; y < size / 2; y++) { for (var z = -size; z < size; z++) { SpawnOffsets.Add(new Vector3(x * 8, y * 8, z * 8)); } } } // Order offsets closest first SpawnOffsets = SpawnOffsets.OrderBy(o => Vector3.Distance(Vector3.zero, o)).ThenBy(o => Vector3.Angle(Vector3.zero, o)).ToList(); } foreach (var offset in SpawnOffsets) { // Set the rotation of spawned objects facing the target player var rotation = Quaternion.LookRotation(new Vector3(offset.z, offset.y, -offset.x) - Vector3.zero); // Spawn the traps //BoltPrefabsHelper.Spawn(BoltPrefabs.Trap_TripWireExplosiveBuilt, position, rotation); BoltPrefabsHelper.Spawn(BoltPrefabs.Bomb_Timed_Placed, player.Position + offset, rotation); } } // Add steam profile button if (player.SteamId > 0 && AddButton("Steam", 455, 75)) { SteamFriends.ActivateGameOverlayToUser("steamid", new CSteamID(player.SteamId)); } Y += StepY; } } break; } #endregion #region Spawn case 4: { break; } #endregion #region Sphere case 5: { AddLabel("Enabled actions", Padding * 2, increaseY: true); Y += Padding; AddLabel("BluePrints:"); AddCheckBox(ref SphereAction.Enabled.BluePrints, increaseY: true); AddLabel("BreakableCrates:"); AddCheckBox(ref SphereAction.Enabled.BreakableCrates, increaseY: true); AddLabel("Buildings:"); AddCheckBox(ref SphereAction.Enabled.Buildings, increaseY: true); AddLabel("Bushes:"); AddCheckBox(ref SphereAction.Enabled.Bushes, increaseY: true); AddLabel("SuitCases:"); AddCheckBox(ref SphereAction.Enabled.SuitCases, increaseY: true); AddLabel("Trees:"); AddCheckBox(ref SphereAction.Enabled.Trees, increaseY: true); AddLabel("TreeStumps:"); AddCheckBox(ref SphereAction.Enabled.TreeStumps, increaseY: true); AddLabel("KillPlayers:"); AddCheckBox(ref SphereAction.Enabled.KillPlayers, increaseY: true); break; } #endregion #region Aura case 6: { AddLabel("Execute selected actions around camera", increaseY: true); AddLabel("Status: " + (Aura.Active ? "Active" : "Offline"), Padding * 3, increaseY: true); Y += Padding; AddLabel("Radius: " + Math.Round(Aura.Radius)); Aura.Radius = AddSlider(ref Aura._radius, Aura.MinRadius, Aura.MaxRadius, width: MenuRect.width - Padding * 3 - 160, increaseY: true); AddLabel("KillEnemies:"); AddCheckBox(ref Aura.Enabled.KillEnemies, increaseY: true); AddLabel("KillPlayers:"); AddCheckBox(ref Aura.Enabled.KillPlayers, increaseY: true); AddLabel("RepairBuildings:"); AddCheckBox(ref Aura.Enabled.RepairBuildings, increaseY: true); break; } #endregion } }