// Token: 0x060062A9 RID: 25257 RVA: 0x0022FFB8 File Offset: 0x0022E3B8 public void ClearPlayerSelection() { if (this.selectedPlayer != null) { PlayerSelector playerSelector = this.selectedPlayer.playerSelector; playerSelector.Select(false); this.selectedPlayer = null; } if (this.hoveredPlayer != null) { PlayerSelector playerSelector2 = this.hoveredPlayer.playerSelector; playerSelector2.Hover(false); this.hoveredPlayer = null; } }
// Token: 0x060062A6 RID: 25254 RVA: 0x0022F9C8 File Offset: 0x0022DDC8 public void SetTargetInfo(VRCUiCursor.CursorRaycast target, bool useForUi) { if (this.inUse == null) { VRCUiCursor.CursorHandedness cursorHandedness = this.handedness; if (cursorHandedness != VRCUiCursor.CursorHandedness.Right) { if (cursorHandedness == VRCUiCursor.CursorHandedness.Left) { this.inUse = VRCInputManager.FindInput("UseLeft"); this.inDrop = VRCInputManager.FindInput("DropLeft"); } } else { this.inUse = VRCInputManager.FindInput("UseRight"); this.inDrop = VRCInputManager.FindInput("DropRight"); } if (this.inUse == null) { return; } } this.over = target.over; this.distance = target.hitInfo.distance; this.targetPosition = target.hitInfo.point; bool flag = false; if (useForUi) { if (target.over.Contains(VRCUiCursor.CursorOver.Ui)) { Vector2 screenPos = new Vector2(0f, 0f); UiShapeGenerator uiShapeGenerator = target.uiShape as UiShapeGenerator; if (uiShapeGenerator != null) { screenPos = uiShapeGenerator.GetPointerPosition(target.hitInfo.textureCoord); } else { screenPos = VRCVrCamera.GetInstance().screenCamera.WorldToScreenPoint(target.hitInfo.point); } this.uiInput.SetInputState(screenPos, target.hitInfo.point, this.inUse.down, this.inUse.up, this.inDrop.down, this.inDrop.up); if (this.uiInput.IsOverSelection()) { List <VRCUiCursor.CursorOver> list = new List <VRCUiCursor.CursorOver> { VRCUiCursor.CursorOver.UiSelectable }; list.AddRange(target.over); target.over = list.ToArray(); } flag = true; } if (target.over.Contains(VRCUiCursor.CursorOver.Player)) { if (this.inUse.click) { this.SelectHoveredPlayer(); } else { if (this.hoveredPlayer != null) { PlayerSelector playerSelector = this.hoveredPlayer.playerSelector; playerSelector.Hover(false); } this.hoveredPlayer = target.player; PlayerSelector playerSelector2 = this.hoveredPlayer.playerSelector; if (playerSelector2 != null) { playerSelector2.Hover(true); } } flag = true; } else if (this.hoveredPlayer != null) { PlayerSelector playerSelector3 = this.hoveredPlayer.playerSelector; if (playerSelector3 != null) { playerSelector3.Hover(false); } this.hoveredPlayer = null; } if (target.over.Contains(VRCUiCursor.CursorOver.Web)) { if (this.activeWebView != target.webPanel && this.activeWebView != null) { this.activeWebView.HandleFocusLoss(); } this.activeWebView = target.webPanel; if (this.activeWebView != null) { this.activeWebView.HandleRayHit(target.hitInfo); flag = true; } } else if (this.activeWebView != null) { this.activeWebView.HandleFocusLoss(); this.activeWebView = null; } if (target.over.Length == 0) { this.uiInput.SetInputState(Vector2.zero, target.hitInfo.point, false, true, false, true); } VRCUiCursor.CursorHandedness hand = this.handedness; if (!flag) { hand = VRCUiCursor.CursorHandedness.None; } VRCUiCursorManager.ForceCursorOn(hand); } VRC_Pickup selectedPickup = null; VRC_Interactable[] selectedInteractable = null; if (!VRCInputManager.legacyGrasp) { Component component; if (target.interactable == null) { component = null; } else { component = target.interactable.FirstOrDefault((VRC_Interactable i) => i.GetComponent <VRC_UseEvents>() != null || (i.GetComponent <VRC_Trigger>() != null && (i.GetComponent <VRC_Trigger>().HasInteractiveTriggers || i.GetComponent <VRC_Trigger>().HasPickupTriggers))); } Component component2 = component; this.outline.Clone(null); if (this.over.Contains(VRCUiCursor.CursorOver.Interactable) && component2 != null) { Transform trackedTransform = VRCTrackingManager.GetTrackedTransform((this.handedness != VRCUiCursor.CursorHandedness.Left) ? VRCTracking.ID.HandTracker_RightPalm : VRCTracking.ID.HandTracker_LeftPalm); bool flag2 = trackedTransform == null || VRCTrackingManager.IsPointWithinHMDView(trackedTransform.position); if (flag2) { this.outline.Clone(component2); if (TutorialManager.Instance != null) { TutorialManager.Instance.InteractableSelected(target.interactable, component2, this.handedness == VRCUiCursor.CursorHandedness.Left); } selectedInteractable = target.interactable; } } if (this.over.Contains(VRCUiCursor.CursorOver.Pickup) && target.pickup != null) { if (target.pickup.currentlyHeldBy == null) { this.outline.Clone(target.pickup); if (TutorialManager.Instance != null) { TutorialManager.Instance.PickupSelected(target.pickup, this.handedness == VRCUiCursor.CursorHandedness.Left); } selectedPickup = target.pickup; } else { this.outline.Clone(null); } } } else { this.outline.Clone(null); } VRCHandGrasper vrchandGrasper = null; if (VRCPlayer.Instance != null) { vrchandGrasper = VRCPlayer.Instance.GetHandGrasper((this.handedness != VRCUiCursor.CursorHandedness.Left) ? ControllerHand.Right : ControllerHand.Left); } if (vrchandGrasper != null) { vrchandGrasper.SetSelectedObject(selectedPickup, selectedInteractable); } }