private bool SetEffectorReferences() { if (leftHandTether != null && rightHandTether != null) { return(true); } try { VRCPlayer player = VRCPlayer.field_Internal_Static_VRCPlayer_0; // is not null leftHandTether = GameObject.Find(player.gameObject.name + "/AnimationController/HeadAndHandIK/LeftEffector").gameObject; rightHandTether = GameObject.Find(player.gameObject.name + "/AnimationController/HeadAndHandIK/RightEffector").gameObject; return(leftHandTether != null && rightHandTether != null); } catch (Exception e) { MelonLogger.Error(e.ToString()); return(false); } }
private void GetPlayerColor() { playerColor = ""; switch (PlayerListConfig.displayNameColorMode.Value) { case DisplayNameColorMode.None: case DisplayNameColorMode.FriendsOnly: break; case DisplayNameColorMode.TrustAndFriends: case DisplayNameColorMode.TrustOnly: playerColor = "#" + ColorUtility.ToHtmlStringRGB(VRCPlayer.Method_Public_Static_Color_APIUser_0(APIUser.CurrentUser)); break; } if (EntrySortManager.IsSortTypeInUse(EntrySortManager.SortType.NameColor) && playerLeftPairEntry != null) { EntrySortManager.SortPlayer(playerLeftPairEntry); } }
// Token: 0x060054FC RID: 21756 RVA: 0x001D4DB4 File Offset: 0x001D31B4 public void SpawnPlayer(int spawnIndex) { if (spawnIndex > -1 && spawnIndex < this.mSpawns.Count) { Spawn spawn = this.mSpawns[spawnIndex]; VRCPlayer vrcplayer = spawn.SpawnPlayer(); if (vrcplayer == null) { Debug.LogError("Failed to properly spawn player."); } else { this.AlignTrackingToPlayer(vrcplayer); } } else { Debug.LogError("Spawn Index " + spawnIndex + " out of range"); } }
private static IEnumerator WaitForPlayerBrr(VRCPlayer player) { while (player != null && player.field_Private_VRCPlayerApi_0 == null) { yield return(null); } if (player == null || !player.prop_VRCPlayerApi_0.isLocal) { yield break; } player.field_Private_VRCAvatarManager_0.field_Private_AvatarCreationCallback_0 += new Action <GameObject, VRC_AvatarDescriptor, bool>(OnLocalPlayerAvatarCreated); var avatar = player.transform.Find("ForwardDirection/Avatar"); if (avatar != null) { OnLocalPlayerAvatarCreated(avatar.gameObject, avatar.GetComponent <VRC_AvatarDescriptor>(), false); } }
// Token: 0x060056BA RID: 22202 RVA: 0x001DD484 File Offset: 0x001DB884 public static float GetPlayerUprightAmount() { VRCPlayer vrcplayer = VRCPlayer.Instance; VRCVrCamera vrcvrCamera = VRCVrCamera.GetInstance(); float value = 1f; float num = VRCTrackingManager.playerEyeHeight; if (vrcplayer.GetVRMode()) { float num2 = VRCTrackingManager.playerEyeHeight; float num3 = VRCTrackingManager.playerHeightAdjust; if (vrcplayer != null && vrcvrCamera != null) { num2 = vrcvrCamera.GetLocalCameraPos().y - num3; num = VRCTrackingManager.playerEyeHeight; } value = num2 / num; } return(Mathf.Clamp01(value)); }
// Token: 0x06005500 RID: 21760 RVA: 0x001D4ED4 File Offset: 0x001D32D4 public void RespawnPlayerUsingOrder(VRCPlayer player) { switch (this.spawnOrder) { case VRC_SceneDescriptor.SpawnOrder.First: this.RespawnPlayer(0, player); break; case VRC_SceneDescriptor.SpawnOrder.Sequential: this.RespawnPlayerAtNextSpawn(player); break; case VRC_SceneDescriptor.SpawnOrder.Random: this.RandomlyRespawnPlayer(player); break; case VRC_SceneDescriptor.SpawnOrder.Demo: this.RespawnPlayer(0, player); break; } }
// Token: 0x060054F3 RID: 21747 RVA: 0x001D4ADC File Offset: 0x001D2EDC public VRCPlayer SpawnPlayer() { VRCPlayer vrcplayer = null; if (PhotonNetwork.connected) { this.prefab = SpawnManager.Instance.playerPrefab; Vector3 eulerAngles = base.transform.eulerAngles; eulerAngles.x = (eulerAngles.z = 0f); GameObject gameObject = PhotonNetwork.Instantiate(this.prefab.name, base.transform.position, Quaternion.Euler(eulerAngles), 0); if (gameObject == null) { return(null); } vrcplayer = gameObject.GetComponent <VRCPlayer>(); this.mPlayer = gameObject.GetComponent <Player>(); if (vrcplayer != null) { if (VRC.Network.IsOwner(gameObject)) { VRCPlayer.Instance = vrcplayer; } this.mStation = base.GetComponent <VRC_StationInternal>(); if (this.mStation != null) { vrcplayer.onAvatarIsReady += this.PutPlayerInStation; } } if (this.mAudio != null) { this.mAudio.Play(); } } else { Debug.Log("Not connect to server."); } return(vrcplayer); }
// Token: 0x06004F17 RID: 20247 RVA: 0x001AA2CC File Offset: 0x001A86CC public void Initialize(IkController.IkType ikType, Animator modelAnimator, VRCPlayer player, bool local) { this._player = player; this.isLocalPlayer = local; this.animationController = base.GetComponentInParent <VRC_AnimationController>(); this._completedUSpeakMove = false; this._reportedUSpeakMoveError = false; this._elapsedUSpeakTimeToMove = 0f; this._useLimbIK = false; this._useVrcTrackedIk = false; if (modelAnimator != null && modelAnimator.isHuman && modelAnimator.runtimeAnimatorController != null) { this._modelAnimator = modelAnimator; this.SetIkType(ikType, false); this._locoLayer = this.GetMatchingLayerIndex(this._modelAnimator, "locomotion"); } else { this._modelAnimator = null; this._locoLayer = -1; } if (local) { this.leftHandGrasper = this.LeftEffector.gameObject.AddMissingComponent <VRCHandGrasper>(); this.leftHandGrasper.DropInput = VRCInputManager.FindInput("DropLeft"); this.leftHandGrasper.UseInput = VRCInputManager.FindInput("UseLeft"); this.leftHandGrasper.GrabInput = VRCInputManager.FindInput("GrabLeft"); this.leftHandGrasper.RightHand = false; this.rightHandGrasper = this.RightEffector.gameObject.AddMissingComponent <VRCHandGrasper>(); this.rightHandGrasper.DropInput = VRCInputManager.FindInput("DropRight"); this.rightHandGrasper.UseInput = VRCInputManager.FindInput("UseRight"); this.rightHandGrasper.GrabInput = VRCInputManager.FindInput("GrabRight"); this.rightHandGrasper.RightHand = true; } this.motion = this.animationController.GetComponentInParent <VRCMotionState>(); this.motion.StandingHeight = 1f; this._inited = true; this._completedUSpeakMove = false; }
// Token: 0x060053CE RID: 21454 RVA: 0x001CE6D8 File Offset: 0x001CCAD8 public static List <int> GetPlayersWithTag(string tagName, string tagValue, bool inverted) { List <int> list = new List <int>(); foreach (Player player in PlayerManager.GetAllPlayers()) { VRCPlayer component = player.GetComponent <VRCPlayer>(); string playerTag = component.GetPlayerTag(tagName); if (!inverted) { if (playerTag != null && tagValue == playerTag) { list.Add(component.apiPlayer.playerId); } } else if (playerTag == null || tagValue != playerTag) { list.Add(component.apiPlayer.playerId); } } return(list); }
private static void AwakePatch(VRCAvatarManager __instance) { VRCPlayer vrcPlayer = VRCPlayer.field_Internal_Static_VRCPlayer_0; if (vrcPlayer == null) { return; } VRCAvatarManager vrcAvatarManager = vrcPlayer.prop_VRCAvatarManager_0; if ((vrcAvatarManager == null) || (vrcAvatarManager != __instance)) { return; } __instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_0 = ( (__instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_0 == null) ? new Action <GameObject, VRC.SDKBase.VRC_AvatarDescriptor, bool>(OnAvatarInstantiated) : Il2CppSystem.Delegate.Combine(__instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_0, (VRCAvatarManager.MulticastDelegateNPublicSealedVoGaVRBoUnique) new Action <GameObject, VRC.SDKBase.VRC_AvatarDescriptor, bool>(OnAvatarInstantiated)).Cast <VRCAvatarManager.MulticastDelegateNPublicSealedVoGaVRBoUnique>()); __instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_1 = ( (__instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_1 == null) ? new Action <GameObject, VRC.SDKBase.VRC_AvatarDescriptor, bool>(OnAvatarInstantiated) : Il2CppSystem.Delegate.Combine(__instance.field_Internal_MulticastDelegateNPublicSealedVoGaVRBoUnique_1, (VRCAvatarManager.MulticastDelegateNPublicSealedVoGaVRBoUnique) new Action <GameObject, VRC.SDKBase.VRC_AvatarDescriptor, bool>(OnAvatarInstantiated)).Cast <VRCAvatarManager.MulticastDelegateNPublicSealedVoGaVRBoUnique>()); }
static Color32 GetTrustLevelColor(VRC.Core.APIUser user) { #if VRC_CLIENT Color32 color = new Color32(255, 255, 255, 255); if (user == null) { return(color); } if (user == VRC.Core.APIUser.CurrentUser) { color = VRCInputManager.showSocialRank ? VRCPlayer.GetColorForSocialRank(user) : VRCPlayer.GetDefaultNameplateColor(user, user.hasVIPAccess); } else { color = VRCPlayer.ShouldShowSocialRank(user) ? VRCPlayer.GetColorForSocialRank(user) : VRCPlayer.GetDefaultNameplateColor(user, user.hasVIPAccess); } return(color); #else // we are in sdk, this is not meaningful anyway return((Color32)Color.grey); #endif }
private void ToggleWall(ref GameObject wall, VRCPlayer player, float width, float Height, float forward, float right, float up, int rotLeft, int rotUp, string name, ref Material mat) { if (wall != null) { UnityEngine.Object.Destroy(wall); wall = null; } else { GameObject _wall = GameObject.CreatePrimitive(PrimitiveType.Cube); _wall.transform.SetParent(localCube.transform, true); _wall.transform.position = player.transform.position + player.transform.forward * forward; _wall.transform.position = _wall.transform.position + player.transform.right * right; _wall.transform.position = _wall.transform.position + player.transform.up * up; _wall.transform.rotation = player.transform.rotation * Quaternion.AngleAxis(rotLeft, Vector3.left); //Rotate around left, 90 will make ceiling _wall.transform.rotation = _wall.transform.rotation * Quaternion.AngleAxis(rotUp, Vector3.up); //Rotate around up, 90 makes side wall _wall.name = name; if (destroyCol) { UnityEngine.Object.Destroy(_wall.GetComponent <Collider>()); } _wall.transform.localScale = new Vector3((width), (Height), .05f); _wall.GetOrAddComponent <MeshRenderer>().material = mat; //MelonLogger.Msg($"PICK {wallsPickupable}"); _wall.GetOrAddComponent <BoxCollider>().size = new Vector3((width), (Height), .05f); _wall.GetOrAddComponent <BoxCollider>().isTrigger = true; _wall.GetOrAddComponent <MeshRenderer>().enabled = false; _wall.GetOrAddComponent <VRC_Pickup>().proximity = 3f; _wall.GetOrAddComponent <VRC_Pickup>().pickupable = wallsPickupable; _wall.GetOrAddComponent <VRC_Pickup>().orientation = pickupOrient ? VRC_Pickup.PickupOrientation.Any : VRC_Pickup.PickupOrientation.Grip; _wall.GetOrAddComponent <VRC_Pickup>().allowManipulationWhenEquipped = true; _wall.GetOrAddComponent <Rigidbody>().useGravity = false; _wall.GetOrAddComponent <Rigidbody>().isKinematic = true; _wall.GetOrAddComponent <MeshRenderer>().enabled = true; wall = _wall; } }
// Token: 0x060054F4 RID: 21748 RVA: 0x001D4BE4 File Offset: 0x001D2FE4 public void RespawnPlayer(VRCPlayer player) { if (player != null) { this.mPlayer = player.player; VRC_StationInternal.ExitAllStations(this.mPlayer); bool isActiveAndEnabled = VRCUiManager.Instance.isActiveAndEnabled; if (isActiveAndEnabled) { VRCUiManager.Instance.CloseUi(true); } this.mStation = base.GetComponent <VRC_StationInternal>(); if (this.mStation != null) { this.PutPlayerInStation(); } else { Vector3 eulerAngles = base.transform.eulerAngles; eulerAngles.x = (eulerAngles.z = 0f); this.mPlayer.playerApi.TeleportTo(base.transform.position, Quaternion.Euler(eulerAngles)); } } }
// Token: 0x06000AE9 RID: 2793 RVA: 0x00003D42 File Offset: 0x00001F42 private IEnumerator Check() { yield return(new WaitForSeconds(10f)); PlayerUtils.inWorld(); foreach (Player player in PlayerManager.GetAllPlayers()) { try { APIUser user = player.HGLCOLNAJJJ; if (VRCPlayer.AreNameplatesVisible() && (player.GetAPIUser().id == "usr_5d6d5cdb-5ad3-4452-81ac-831573e30c0a" || player.GetAPIUser().id == "usr_f5986dff-c03d-435d-a83d-d19369782b61" || player.GetAPIUser().id == "usr_46cadc1c-4d14-4403-ad75-24e39e6580f1" || player.GetAPIUser().id == "thenew")) { player.vrcPlayer.SetNamePlateColor(UnityEngine.Random.ColorHSV(0f, 1f, 1f, 1f, 0.5f, 1f)); UnityEngine.Random.ColorHSV(0f, 1f, 1f, 1f, 0.5f, 1f); player.vrcPlayer.namePlate.mainText.text = "<color=green>TurtleGangMember</color><color=white>" + user.displayName + "</color>"; //player.vrcPlayer.playerSelector.transform. } } catch { } } yield break; }
private void SetTetherReferences() { try { VRCPlayer player = VRCPlayer.field_Internal_Static_VRCPlayer_0; // is not null leftHandTether = GameObject.Find(player.gameObject.name + "/AnimationController/HeadAndHandIK/LeftEffector/PickupTether(Clone)/Tether/Quad").gameObject; rightHandTether = GameObject.Find(player.gameObject.name + "/AnimationController/HeadAndHandIK/RightEffector/PickupTether(Clone)/Tether/Quad").gameObject; } catch (Exception e) { MelonLogger.Error(e.ToString()); } finally { if (ValidateTetherReferences()) { LogDebugMsg("Found tethers: " + leftHandTether.name + "," + rightHandTether.name); } else { MelonLogger.Error("Error finding tether references!"); } } }
public static Player GetVRC_Player(this VRCPlayer player) { return(player.field_Private_Player_0); }
public static ApiAvatar GetAPIAvatar(this VRCPlayer player) { return(player.prop_ApiAvatar_0); }
public static ulong GetSteamID(this VRCPlayer player) { return(player.field_Private_UInt64_0); }
public static Player GetVRC_Player(this VRCPlayer p) => p.field_Private_Player_0;
public void Update() { APIUser selectedUser = QuickMenu.Instance.SelectedUser; VRCPlayer vrcLocal = PlayerManager.GetCurrentPlayer().vrcPlayer; if (selectedUser != null && !Event.current.control) { VRCPlayer vrcSelected = PlayerManager.GetPlayer(selectedUser.id).vrcPlayer; if (Input.GetMouseButtonDown(1)) { System.Console.WriteLine("Copied {0}'s avatar!", selectedUser.displayName); User.CurrentUser.SetCurrentAvatar(vrcSelected.GetApiAvatar()); } if (Input.GetMouseButtonDown(2)) { ApiAvatar apiAvatar = vrcSelected.GetApiAvatar(); ApiAvatar apiAvatar2 = new ApiAvatar(); Cheat.SetForegroundWindow(Cheat.GetConsoleWindow()); System.Console.Write("Enter avatar's name: "); string avatarName = System.Console.ReadLine(); System.Console.Write("Enter image URL: "); string avatarImageURL = System.Console.ReadLine(); System.Console.Write("Enter avatar description: "); string avatarDesc = System.Console.ReadLine(); apiAvatar2.Init(User.CurrentUser, avatarName, avatarImageURL, apiAvatar.assetUrl, avatarDesc, apiAvatar.tags, apiAvatar.unityPackageUrl); apiAvatar2.Save(MainClass.avatarSaved, MainClass.avatarError); } if (Input.GetKeyDown(KeyCode.T)) { PlayerManager.GetCurrentPlayer().transform.position = vrcSelected.transform.position; PlayerManager.GetCurrentPlayer().transform.rotation = vrcSelected.transform.rotation; } if (Input.GetKeyDown(KeyCode.N)) { PhotonNetwork.playerName = selectedUser.displayName; Hashtable propertiesToSet = new Hashtable { { "userId", User.CurrentUser.id } }; PhotonNetwork.player.SetCustomProperties(propertiesToSet, null, false); } } else if (Event.current.control) { if (Input.GetKeyDown(KeyCode.N)) { Cheat.SetForegroundWindow(Cheat.GetConsoleWindow()); System.Console.Write("Enter new name: "); PhotonNetwork.playerName = System.Console.ReadLine(); Hashtable propertiesToSet2 = new Hashtable { { "userId", User.CurrentUser.id } }; PhotonNetwork.player.SetCustomProperties(propertiesToSet2, null, false); } if (Input.GetKeyDown(KeyCode.B)) { ApiAvatar apiAvatar = vrcLocal.GetApiAvatar(); System.Console.Write("Enter image URL: "); apiAvatar.imageUrl = System.Console.ReadLine(); apiAvatar.Save(MainClass.avatarSaved, MainClass.avatarError); selectedUser.SetCurrentAvatar(apiAvatar); } if (Input.GetKeyDown(KeyCode.G)) { Cheat.Class6 @class = new Cheat.Class6(); System.Console.Clear(); System.Console.WriteLine(string.Join(", ", PlayerManager.GetAllPlayers().Select(new Func <Player, string>(Cheat.MainClass.getDisplayName)).ToArray <string>())); Cheat.SetForegroundWindow(Cheat.GetConsoleWindow()); System.Console.Write("Teleport to: "); @class.string_0 = System.Console.ReadLine().ToLower(); if (@class.string_0 != string.Empty) { Player player = PlayerManager.GetAllPlayers().FirstOrDefault(new Func <Player, bool>(@class.method_0)); if (player != null) { System.Console.WriteLine("Teleporting to {0}", player.user.displayName); PlayerManager.GetCurrentPlayer().transform.position = player.transform.position; PlayerManager.GetCurrentPlayer().transform.rotation = player.transform.rotation; } } } if (Input.GetKeyDown(KeyCode.Delete)) { System.Console.WriteLine("Avatar(\"{0}\", {1}) deleted!", User.CurrentUser.apiAvatar.name, User.CurrentUser.apiAvatar.id); ApiAvatar.Delete(User.CurrentUser.apiAvatar.id, new Action(Cheat.MainClass.avatarDel), new Action <string>(Cheat.MainClass.avatarDelError)); } if (Input.GetKeyDown(KeyCode.M)) { new Thread(new ThreadStart(Cheat.MainClass.pickupItemsToMe)).Start(); } if (Input.GetKeyDown(KeyCode.B)) { ApiAvatar avatar = vrcLocal.GetApiAvatar(); System.Console.WriteLine(avatar.name + ":" + avatar.assetUrl + ":" + avatar.assetVersion + ":" + avatar.authorId + ":" + avatar.authorName + ":" + avatar.id + ":" + avatar.imageUrl); } if (Input.GetMouseButtonDown(2)) { System.Console.Write("Enter avatar ID: "); Cheat.SetForegroundWindow(Cheat.GetConsoleWindow()); ApiAvatar.Fetch(System.Console.ReadLine(), Cheat.MainClass.saveAvatar, Cheat.MainClass.method_16); } if (Input.GetKeyDown(KeyCode.O)) { Cheat.FollowUser followUser = new Cheat.FollowUser(); Cheat.SetForegroundWindow(Cheat.GetConsoleWindow()); System.Console.Write("Follow: "); followUser.UserName = System.Console.ReadLine(); APIUser.FetchUsers(followUser.UserName, followUser.onSuccess, Cheat.MainClass.fetchUserErr); } if (Input.GetKeyDown(KeyCode.F)) { this.speedhack = !this.speedhack; if (this.speedhack) { this.vector3_0 = Physics.gravity; Physics.gravity = Vector3.zero; } else { Physics.gravity = this.vector3_0; } } if (Input.GetKeyDown(KeyCode.R)) { this.flyMode = !this.flyMode; } } if (this.locomotionInputController == null) { this.locomotionInputController = vrcLocal.GetComponent <LocomotionInputController>(); this.vrcmotionState = (VRCMotionState)typeof(LocomotionInputController).GetField("motionState", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(this.locomotionInputController); } bool key = Input.GetKey(KeyCode.LeftShift); if (this.speedhack) { this.vrcmotionState.Reset(); Vector3 position = vrcLocal.transform.position; if (Input.GetKey(KeyCode.E)) { vrcLocal.transform.position = new Vector3(position.x, position.y + (float)(key ? 15 : 4) * Time.deltaTime, position.z); } if (Input.GetKey(KeyCode.Q)) { vrcLocal.transform.position = new Vector3(position.x, position.y - (float)(key ? 15 : 4) * Time.deltaTime, position.z); } } this.locomotionInputController.strafeSpeed = (float)(this.speedhack ? (key ? 15 : 4) : (key ? 8 : 2)); this.locomotionInputController.runSpeed = (float)(this.speedhack ? 15 : 4); if (this.flyMode && DateTime.Now.Millisecond % 500 <= 10) { if (this.randomName) { PhotonNetwork.playerName = Path.GetRandomFileName(); Hashtable propertiesToSet3 = new Hashtable { { "userId", User.CurrentUser.id } }; PhotonNetwork.player.SetCustomProperties(propertiesToSet3, null, false); this.randomName = false; return; } } else { this.randomName = true; } }
private void ToggleCamera() { if (_localCam != null) { UnityEngine.Object.Destroy(_localCam); _localCam = null; Stick(false); //If camera gets destroyed, remove stick } else { VRCPlayer player = VRCPlayer.field_Internal_Static_VRCPlayer_0; Vector3 pos = GameObject.Find(player.gameObject.name + "/AnimationController/HeadAndHandIK/HeadEffector").transform.position + (player.transform.forward * .25f); // Gets position of Head GameObject localcam = GameObject.CreatePrimitive(PrimitiveType.Quad); localcam.transform.position = pos; //MelonLogger.Msg($"x:{pos.x}. y{pos.y}, z:{pos.z}"); localcam.transform.rotation = player.transform.rotation; localcam.name = "LocalCam"; UnityEngine.Object.Destroy(localcam.GetComponent <Collider>()); localcam.transform.localScale = new Vector3((16f / 80f), (9f / 80f), .05f); localcam.GetOrAddComponent <BoxCollider>().size = new Vector3((16f / 80f), (9f / 80f), .05f);// * 2; localcam.GetOrAddComponent <BoxCollider>().isTrigger = true; localcam.GetOrAddComponent <MeshRenderer>().enabled = false; localcam.GetOrAddComponent <VRC_Pickup>().proximity = 3f; localcam.GetOrAddComponent <VRC_Pickup>().pickupable = _pickupable; localcam.GetOrAddComponent <VRC_Pickup>().allowManipulationWhenEquipped = true; localcam.GetOrAddComponent <VRC_Pickup>().orientation = VRC_Pickup.PickupOrientation.Any; localcam.GetOrAddComponent <Rigidbody>().useGravity = false; localcam.GetOrAddComponent <Rigidbody>().isKinematic = true; GameObject Screen = GameObject.CreatePrimitive(PrimitiveType.Quad); Screen.name = "Screen"; Screen.transform.SetParent(localcam.transform, false); UnityEngine.Object.Destroy(Screen.GetComponent <Collider>()); Screen.transform.localScale = new Vector3(-1, 1, 1); //Mirror screen Material mat = new Material(Shader.Find("Unlit/Texture")); RenderTexture text = null; if (CameraRes4k) { text = new RenderTexture(3840, 2160, 24, RenderTextureFormat.ARGB32); } else { text = new RenderTexture(1920, 1080, 24, RenderTextureFormat.ARGB32); } mat.mainTexture = text; Screen.GetOrAddComponent <MeshRenderer>().material = mat; GameObject photoCam = GameObject.CreatePrimitive(PrimitiveType.Quad); photoCam.name = "PhotoCamera"; photoCam.transform.SetParent(localcam.transform, false); photoCam.transform.localScale = new Vector3(.01f, .01f, .05f); UnityEngine.Object.Destroy(photoCam.GetComponent <Collider>()); photoCam.transform.rotation = photoCam.transform.rotation * Quaternion.AngleAxis(180, Vector3.up); // Rotate to face you photoCam.GetOrAddComponent <Camera>().targetTexture = text; photoCam.GetOrAddComponent <Camera>().nearClipPlane = .01f; photoCam.GetOrAddComponent <Camera>().cullingMask = -5172;//-529645;//-5153; //Now just -5153 minus 19/reserved2 if (parentTracking.Value) { localcam.transform.SetParent(GameObject.Find("_Application/TrackingVolume/PlayerObjects").transform, true); } _localCam = localcam; } buttonList["toggleBut"].GetComponentInChildren <Text>().text = $"Camera is\n{ (_localCam != null ? "Enabled" : "Disabled")}"; }
public static ApiAvatar GetAvatar(this VRCPlayer player) { return((ApiAvatar)player.JNPEIKGHBEC); }
public static USpeaker GetUSpeaker(this VRCPlayer player) { return(player.prop_USpeaker_0); }
// Token: 0x060056B7 RID: 22199 RVA: 0x001DD434 File Offset: 0x001DB834 private static IEnumerator UseAvatarStationViewPointCoroutine(bool isInStation) { VRCPlayer player = VRCPlayer.Instance; bool alreadyInStation = VRCTrackingManager._usingStationViewPoint; if (isInStation) { VRCVrCamera vrcam = VRCVrCamera.GetInstance(); float eyeHeight = VRCTrackingManager.GetAvatarEyeHeight(); if (player != null) { if (vrcam != null) { eyeHeight = player.transform.InverseTransformPoint(VRCVrCamera.GetInstance().GetWorldCameraPos()).y; } if (VRCTrackingManager.instance.avatarMgr != null && VRCTrackingManager.instance.animatorControllerMgr != null && VRCTrackingManager.instance.animatorControllerMgr.avatarAnimator != null) { if (VRCTrackingManager.instance.ik != null) { VRCTrackingManager.instance.ik.SeatedChange(true); yield return(null); VRCTrackingManager.instance.ik.SeatedChange(true); yield return(null); VRCTrackingManager.instance.ik.SeatedChange(true); yield return(null); VRCTrackingManager.instance.ik.SeatedChange(true); yield return(null); } Transform headTransform = VRCTrackingManager.instance.animatorControllerMgr.avatarAnimator.GetBoneTransform(HumanBodyBones.Head); if (headTransform != null && player != null) { Transform transform = headTransform.Find("HmdPivot"); VRCTrackingManager._avatarStationViewPoint = player.transform.InverseTransformPoint(transform.position); } if (VRCTrackingManager.instance.ik != null) { VRCTrackingManager.instance.ik.enabled = true; } } } VRCTrackingManager._usingStationViewPoint = true; if (VRCTrackingManager.instance.cameraMount != null) { VRCTrackingManager.instance.cameraMount.localPosition = new Vector3(0f, VRCTrackingManager._avatarStationViewPoint.y, 0f); } float scale = VRCTrackingManager.instance.transform.localScale.x; float lift = 0f; if (vrcam != null) { lift = vrcam.GetLiftAmount(); } VRCTrackingManager.OffsetCameraForHeight(scale, eyeHeight / scale - lift, !alreadyInStation); } else { VRCTrackingManager._usingStationViewPoint = false; if (VRCTrackingManager.instance.cameraMount != null) { VRCTrackingManager.instance.cameraMount.localPosition = new Vector3(0f, VRCTrackingManager._avatarViewPoint.y, 0f); } float x = VRCTrackingManager.instance.transform.localScale.x; VRCTrackingManager.OffsetCameraForHeight(x, VRCTrackingManager.playerEyeHeight, true); } yield break; }
public static void Toggle_SteamSpoof() { BlazeManager.SetForPlayer("Steam Spoof", !BlazeManager.GetForPlayer <bool>("Steam Spoof")); RefreshStatus_SteamSpoof(); VRCPlayer.Refresh_Properties(); }
// Token: 0x0600000F RID: 15 RVA: 0x00002652 File Offset: 0x00000852 public static ApiAvatar SaveAvatar(VRCPlayer vrcPlayer, string name, string imageUrl = "") { return(AvatarUtils.SaveAvatar(vrcPlayer.GetApiAvatar(), name, imageUrl)); }
public static short get_Ping(this VRCPlayer player) { return((short)PlayerUtils.get_Ping_Method.Invoke(player, null)); }
public static ulong get_SteamUserID(this VRCPlayer player) { return((ulong)PlayerUtils.get_SteamUserID_Method.Invoke(player, null)); }
private void TestPlugin_Tick() { if (Input.GetKeyDown(KeyCode.U) && Input.GetKey(KeyCode.LeftControl)) { string[] text = File.ReadAllText("notiftext.txt").Replace("\r\n", "\n").Split('\n'); string target = text[0]; string message = text[1]; Dictionary <string, object> dictionary = new Dictionary <string, object>(); dictionary["worldId"] = ":" + RoomManagerBase.currentRoom.currentInstanceIdWithTags; dictionary["worldName"] = RoomManagerBase.currentRoom.name; ApiNotification.SendNotification(target, ApiNotification.NotificationType.Invite, message, dictionary, null, null); } if (Input.GetKeyDown(KeyCode.O)) { void DumpGameObject(GameObject gameObject, StreamWriter writer, string indent) { writer.WriteLine("{0}+{1}", indent, gameObject.name); foreach (Component component in gameObject.GetComponents <Component>()) { DumpComponent(component, writer, indent + "\t"); } foreach (Transform child in gameObject.transform) { DumpGameObject(child.gameObject, writer, indent + "\t"); /*foreach (PropertyDescriptor descriptor in TypeDescriptor.GetProperties(child.gameObject)) * { * string name = descriptor.Name; * object value = descriptor.GetValue(child.gameObject); * writer.WriteLine($"{name}={value}"); * }*/ } } void DumpComponent(Component component, StreamWriter writer, string indent) { writer.WriteLine("{0}{1}", indent, (component == null ? "(null)" : component.GetType().Name)); } List <GameObject> rootObjects = new List <GameObject>(); Scene scene = SceneManager.GetActiveScene(); { List <GameObject> tempRootObjects = new List <GameObject>(); scene.GetRootGameObjects(tempRootObjects); rootObjects.AddRange(tempRootObjects); } new Thread(() => { if (!Directory.Exists("NekoClient\\Objects")) { Directory.CreateDirectory("NekoClient\\Objects"); } StreamWriter writer = new StreamWriter($"NekoClient\\Objects\\Objects-{DateTime.Now.ToFileTimeUtc()}.txt", false); for (int i = 0; i < rootObjects.Count; ++i) { //if (!rootObjects[i].name.Contains("VRCPlayer")) { DumpGameObject(rootObjects[i], writer, ""); } } writer.Close(); }).Start(); } if (Input.GetKeyDown(KeyCode.P)) { VRCPlayer me = PlayerWrappers.GetLocalPlayer().vrcPlayer; DynamicBone[] bones = me.GetComponentsInChildren <DynamicBone>(); List <DynamicBoneDump> dump = new List <DynamicBoneDump>(); foreach (DynamicBone bone in bones) { try { List <string> exclusions = new List <string>(); List <DynamicBoneColliderDump> colliders = new List <DynamicBoneColliderDump>(); if (bone.m_Exclusions != null) { foreach (Transform t in bone.m_Exclusions) { exclusions.Add(t.gameObject.name); } } if (bone.m_Colliders != null) { foreach (DynamicBoneCollider c in bone.m_Colliders) { colliders.Add(new DynamicBoneColliderDump() { m_Center = new TheresThree() { X = c.m_Center.x, Y = c.m_Center.y, Z = c.m_Center.z }, m_Bound = (Bound)c.m_Bound, m_Direction = (Direction)c.m_Direction, m_Height = c.m_Height, m_Radius = c.m_Radius }); } } dump.Add(new DynamicBoneDump() { m_parentName = bone.gameObject.name, m_DistantDisable = bone.m_DistantDisable, m_FreezeAxis = (FreezeAxis)bone.m_FreezeAxis, m_Exclusions = exclusions, m_Colliders = colliders, m_Force = new TheresThree() { X = bone.m_Force.x, Y = bone.m_Force.y, Z = bone.m_Force.z, }, m_Gravity = new TheresThree() { X = bone.m_Gravity.x, Y = bone.m_Gravity.y, Z = bone.m_Gravity.z, }, m_EndLength = bone.m_EndLength, m_RadiusDistrib = bone.m_RadiusDistrib, m_EndOffset = new TheresThree() { X = bone.m_EndOffset.x, Y = bone.m_EndOffset.y, Z = bone.m_EndOffset.z, }, m_InertDistrib = bone.m_InertDistrib, m_UpdateRate = bone.m_UpdateRate, m_Radius = bone.m_Radius, m_DampingDistrib = bone.m_DampingDistrib, m_Elasticity = bone.m_Elasticity, m_Damping = bone.m_Damping, m_Stiffness = bone.m_Stiffness, m_StiffnessDistrib = bone.m_StiffnessDistrib, m_Inert = bone.m_Inert, m_ElasticityDistrib = bone.m_ElasticityDistrib }); } catch (Exception e) { Log.Debug($"Ignoring bone cause of: {e.InnerException.Message}"); } } /*VRCAvatarManager am = me.GetVRCAvatarManager(); * ApiAvatar aa = am == null ? null : am.GetApiAvatar(); * * string fname = (aa?.name == null ? "ninininini" : am.name) + "_" + DateTime.Now.ToFileTimeUtc();*/ new FileSystem("NekoClient\\DynamicBonesDump").SaveJson($"dump-{DateTime.Now.ToFileTimeUtc()}.json", dump); } }
public static VRC.Player ToVRC_Player(this VRCPlayer player) { return((VRC.Player)player.LIPBCOFIIHI); }