public void OnDrop(PointerEventData eventData) { if (eventData.pointerDrag != null) { OrbDraggable orbDraggable = eventData.pointerDrag.GetComponent <OrbDraggable>(); if (orbDraggable.OrbType == _orbType) { orbDraggable.SetOrbSlot(this); Vector2 pos = _rectTransform.position; //pos.y -= _rectTransform.rect.width / 4; //pos.x += _rectTransform.rect.height / 4; orbDraggable.RectTransform.position = pos; _hasOrb = true; } } }
public void SetEnemyDrawnOrb(Orb orb) { if (orb != null) { for (int orbIndex = 0; orbIndex < _enemyOrbPositionsOccupied.Length; orbIndex++) { OrbDraggable orbDraggable = _enemyOrbPositionsOccupied[orbIndex]; if (orbDraggable == null) { orbDraggable = GameObject.Instantiate <OrbDraggable>(_orbDraggablePrefab, _enemyDrawnOrbPositions[orbIndex].transform); orbDraggable.Setup(_context); _enemyOrbPositionsOccupied[orbIndex] = orbDraggable; } if (orbDraggable.OrbType == OrbType.NONE) { orbDraggable.SetOrb(orb); break; } } } }