void OnSceneDragableMouseDown(ISceneDragable currentSceneDragable) { currentSceneDragable.SceneDragableMesh.enabled = false; distance = Vector3.Distance(cam.transform.position, currentSceneDragable.SceneDragableTransform.position); initialPosition = currentSceneDragable.SceneDragableTransform.position; OnSceneDragableActions += OnSceneDragableMouseDrag; }
void SceneDragableResetPosition(ISceneDragable currentSceneDragable) { currentSceneDragable.SceneDragableTransform.position = initialPosition; currentSceneDragable.SceneDragableMesh.enabled = true; OnSceneDragableActions -= SceneDragableResetPosition; }
void OnSceneDragableMouseUp(ISceneDragable currentSceneDragable) { OnDrop?.Invoke(currentSceneDragable); OnSceneDragableDragEnd?.Invoke(); OnSceneDragableActions -= OnSceneDragableMouseUp; }