private void CheckOutline() { if (outlinerOptimizationCounter >= 10 && isOutlineCheckActive) { if (!BuilderInWorldUtils.IsPointerOverUIElement()) { DCLBuilderInWorldEntity entity = GetEntityOnPointer(); if (!isMultiSelectionActive) { outlinerController.CancelAllOutlines(); } else { outlinerController.CancelUnselectedOutlines(); } if (entity != null && !entity.IsSelected) { outlinerController.OutlineEntity(entity); } } outlinerOptimizationCounter = 0; } else { outlinerOptimizationCounter++; } }
private void MouseClick(int buttonID, Vector3 position) { if (!isEditModeActive) { return; } if (Time.timeSinceLevelLoad < nexTimeToReceiveInput) { return; } if (!BuilderInWorldUtils.IsPointerOverUIElement()) { HUDController.i.builderInWorldMainHud.HideExtraBtns(); } if (Utils.isCursorLocked || biwModeController.IsGodModeActive()) { if (buttonID == 0) { MouseClickDetected(); InputDone(); return; } outlinerController.CheckOutline(); } }
private void MouseWheel(float axisValue) { if (!canInputBeMade) { return; } if (!BuilderInWorldUtils.IsPointerOverUIElement()) { OnMouseWheel?.Invoke(axisValue); } }
private bool CanDrag() { if (!canInputBeMade || currentClickIsOnUi || BuilderInWorldUtils.IsPointerOverUIElement()) { return(false); } return(true); }
private void MouseDrag(int buttonId, Vector3 mousePosition, float axisX, float axisY) { if (!canInputBeMade) { return; } if (!BuilderInWorldUtils.IsPointerOverUIElement()) { OnMouseDrag?.Invoke(buttonId, mousePosition, axisX, axisY); } }
private void MouseDown(int buttonId, Vector3 mousePosition) { lastTimeMouseDown = Time.unscaledTime; lastMousePosition = mousePosition; if (!canInputBeMade) { return; } if (!BuilderInWorldUtils.IsPointerOverUIElement() && !BuilderInWorldUtils.IsPointerOverMaskElement(layerToStopClick)) { OnMouseDown?.Invoke(buttonId, mousePosition); } }
private void MouseDown(int buttonId, Vector3 mousePosition) { lastTimeMouseDown = Time.unscaledTime; lastMousePosition = mousePosition; currentClickIsOnUi = BuilderInWorldUtils.IsPointerOverUIElement(); if (!canInputBeMade) { return; } if (!currentClickIsOnUi) { OnMouseDown?.Invoke(buttonId, mousePosition); } }
private void MouseUp(int buttonId, Vector3 mousePosition) { if (!canInputBeMade) { return; } if (!BuilderInWorldUtils.IsPointerOverUIElement() && !BuilderInWorldUtils.IsPointerOverMaskElement(layerToStopClick)) { OnMouseUp?.Invoke(buttonId, mousePosition); if (Vector3.Distance(mousePosition, lastMousePosition) >= movementClickThreshold) { return; } if (Time.unscaledTime >= lastTimeMouseDown + msClickThreshold / 1000) { return; } OnMouseClick?.Invoke(buttonId, mousePosition); } }
public void CheckOutline() { if (outlinerOptimizationCounter >= 10 && isOutlineCheckActive) { if (!BuilderInWorldUtils.IsPointerOverUIElement()) { DCLBuilderInWorldEntity entity = builderInWorldEntityHandler.GetEntityOnPointer(); RemoveEntitiesOutsidePointerOrUnselected(); if (entity != null && !entity.IsSelected) { OutlineEntity(entity); } } outlinerOptimizationCounter = 0; } else { outlinerOptimizationCounter++; } }