void Update() { if (Input.GetMouseButtonUp(0) && !isMarker) { if (currentConnectionUI && currentConnectionUI.hasTrap) { EventBus.PublishEvent(new TrapAlreadyExistsHereEvent()); } // if (currentConnectionUI && currentConnectionUI.activeConnection) if (CanPlaceAtConnection(currentConnectionUI)) { currentConnectionUI.hasTrap = true; Vector3 trapPosition = currentConnectionUI.GetTrapPosition(); trap = Instantiate(itemPrefab, trapPosition, GetItemQuaternion()); trap.GetComponent <Trap>().SetTendril(currentConnectionUI.tendril); MoneyManager.Instance.RemoveMoney(itemPrefab.GetComponent <PurchasableObject>().cost); isMarker = true; StartCoroutine(ShrinkIcon()); trapOwningConnection = currentConnectionUI; } else { Destroy(gameObject); } } }