public void InitiateUnlinking() { currentLinkId = items[currentHoverItem].page.id; currentlyConnectingLink = Instantiate(removeLinkPrefab).GetComponent <MapItemLink>().SetTransforms(items[currentHoverItem].transform, null, sizeSlider); currentlyConnectingLink.followMouse = true; isCreatingLink = false; }
private void OnDisable() { currentLinkId = -1; if (currentlyConnectingLink != null) { Destroy(currentlyConnectingLink.gameObject); currentlyConnectingLink = null; } Clear(); }
public void Clear() { currentLinkId = -1; if (currentlyConnectingLink != null) { Destroy(currentlyConnectingLink.gameObject); currentlyConnectingLink = null; } for (int i = 0; i < items.Count; i++) { Destroy(items[i].gameObject); } items.Clear(); }
private void Update() { if (!GameManager.Instance.prevMenu) { if (Input.GetMouseButtonDown(0)) { currentHoverItem = GetIndexOfFirstMapItem(Input.mousePosition); if (currentHoverItem >= 0) { previourMousePosition = Input.mousePosition; startMousePosition = Input.mousePosition; } isDrag = false; } else if (Input.GetMouseButton(0) && currentHoverItem >= 0 && DeltaWorldMousePosition != Vector2.zero) { items[currentHoverItem].rectTransform.position = items[currentHoverItem].rectTransform.position + (Vector3)DeltaWorldMousePosition; previourMousePosition = Input.mousePosition; if (((Vector2)Input.mousePosition - startMousePosition).sqrMagnitude > maxRangeTilDrag && !isDrag) { isDrag = true; } } else if (Input.GetMouseButtonUp(0) && currentHoverItem >= 0) { UpdateCurrentHoverAnchors(); if (!isDrag) { if (currentLinkId >= 0) { if (isCreatingLink) { CreateLink(currentLinkId, items[currentHoverItem].page.id); } else { RemoveLink(currentLinkId, items[currentHoverItem].page.id); } if (currentlyConnectingLink != null) { Destroy(currentlyConnectingLink.gameObject); currentlyConnectingLink = null; } currentLinkId = -1; } else { GameManager.Instance.inMenu = true; mapItemContextMenu.position = Camera.main.ScreenToWorldPoint(Input.mousePosition) + Vector3.forward * mapItemContextMenu.position.z; panelTitle.text = items[currentHoverItem].page.name; onItempressedEvent.Invoke(); } } } else if (Input.GetMouseButtonUp(0) && currentlyConnectingLink != null) { Destroy(currentlyConnectingLink.gameObject); currentlyConnectingLink = null; currentLinkId = -1; } } }