public void OnDrop(PointerEventData eventData) { if (RectTransformUtility.RectangleContainsScreenPoint(DropRect, Input.mousePosition)) { UIDragHandler dragHandler = eventData.pointerDrag.GetComponent <UIDragHandler>(); if (dragHandler != null && !dragHandler.isDropped) { dragHandler.isDropped = true; // Get owing character BasePlayerCharacterEntity owningCharacter = BasePlayerCharacterController.OwningCharacter; if (owningCharacter == null) { return; } UICharacterItemDragHandler draggedItemUI = dragHandler as UICharacterItemDragHandler; if (draggedItemUI != null) { switch (draggedItemUI.sourceLocation) { case UICharacterItemDragHandler.SourceLocation.NonEquipItems: case UICharacterItemDragHandler.SourceLocation.EquipItems: draggedItemUI.uiCharacterItem.OnClickSetRefineItem(); break; } } } } }
private void Awake() { this._drager = this.gameObject.AddComponent<UIDragHandler>(); this._drager._beginCall = this.OnBeginDrag; this._drager._dragCall = this.OnDrag; this._drager._endCall = this.OnEndDrag; this._drager.SetEnable(false); _selected.SetActive(false); this._clickBtn.onClick.AddListener(OnClick); }
private void Awake() { img = GetComponent <Image>(); btn = GetComponent <Button>(); dh = gameObject.AddComponent <UIDragHandler>(); dh.OnDragStart += OnDragStart; dh.OnDragEnd += OnDragEnd; GameManager.Instance.OnCardTurnStartEvent += () => { btn.interactable = true; dh.enabled = true; }; GameManager.Instance.OnCardWillbeUsedEvent += () => { btn.interactable = false; dh.enabled = false; }; CardSystem.Instance.OnShowCardEvent += ShowCard; }
public void OnDrop(PointerEventData eventData) { if (uiCharacterItem == null) { Debug.LogWarning("[UIEquipItemSlotDropHandler] `uicharacterItem` is empty"); return; } if (RectTransformUtility.RectangleContainsScreenPoint(DropRect, Input.mousePosition)) { UIDragHandler dragHandler = eventData.pointerDrag.GetComponent <UIDragHandler>(); if (dragHandler != null && !dragHandler.isDropped) { dragHandler.isDropped = true; // Get owing character BasePlayerCharacterEntity owningCharacter = BasePlayerCharacterController.OwningCharacter; if (owningCharacter == null) { return; } UICharacterItemDragHandler draggedItemUI = dragHandler as UICharacterItemDragHandler; if (draggedItemUI != null) { switch (draggedItemUI.sourceLocation) { case UICharacterItemDragHandler.SourceLocation.EquipItems: break; case UICharacterItemDragHandler.SourceLocation.NonEquipItems: // If dropped non equip item to equip slot, equip it owningCharacter.RequestEquipItem((short)draggedItemUI.uiCharacterItem.IndexOfData, (byte)uiCharacterItem.InventoryType, (short)uiCharacterItem.IndexOfData); break; } } } } }
public void OnDrop(PointerEventData eventData) { if (uiCharacterHotkey == null) { Debug.LogWarning("[UICharacterHotkeyDropHandler] `uiCharacterHotkey` is empty"); return; } if (RectTransformUtility.RectangleContainsScreenPoint(DropRect, Input.mousePosition)) { UIDragHandler dragHandler = eventData.pointerDrag.GetComponent <UIDragHandler>(); if (dragHandler != null && !dragHandler.isDropped) { dragHandler.isDropped = true; // Get owing character BasePlayerCharacterEntity owningCharacter = BasePlayerCharacterController.OwningCharacter; if (owningCharacter == null) { return; } string swappingHotkeyId = string.Empty; HotkeyType swappingType = HotkeyType.None; int swappingDataId = 0; // If dragged item UI UICharacterItemDragHandler draggedItemUI = dragHandler as UICharacterItemDragHandler; if (draggedItemUI != null) { if (draggedItemUI.sourceLocation == UICharacterItemDragHandler.SourceLocation.Hotkey) { swappingHotkeyId = draggedItemUI.uiCharacterHotkey.Data.hotkeyId; swappingType = uiCharacterHotkey.Data.type; swappingDataId = uiCharacterHotkey.Data.dataId; } if (uiCharacterHotkey.CanAssignCharacterItem(draggedItemUI.CacheUI.Data.characterItem)) { // Assign item to hotkey owningCharacter.RequestAssignHotkey(uiCharacterHotkey.Data.hotkeyId, HotkeyType.Item, draggedItemUI.CacheUI.Data.characterItem.dataId); } if (draggedItemUI.sourceLocation == UICharacterItemDragHandler.SourceLocation.Hotkey) { // Swap key owningCharacter.RequestAssignHotkey(swappingHotkeyId, swappingType, swappingDataId); } } // If dragged skill UI UICharacterSkillDragHandler draggedSkillUI = dragHandler as UICharacterSkillDragHandler; if (draggedSkillUI != null) { if (draggedSkillUI.sourceLocation == UICharacterSkillDragHandler.SourceLocation.Hotkey) { swappingHotkeyId = draggedSkillUI.uiCharacterHotkey.Data.hotkeyId; swappingType = uiCharacterHotkey.Data.type; swappingDataId = uiCharacterHotkey.Data.dataId; } if (uiCharacterHotkey.CanAssignCharacterSkill(draggedSkillUI.CacheUI.Data.characterSkill)) { // Assign item to hotkey owningCharacter.RequestAssignHotkey(uiCharacterHotkey.Data.hotkeyId, HotkeyType.Skill, draggedSkillUI.CacheUI.Data.characterSkill.dataId); } if (draggedSkillUI.sourceLocation == UICharacterSkillDragHandler.SourceLocation.Hotkey) { // Swap key owningCharacter.RequestAssignHotkey(swappingHotkeyId, swappingType, swappingDataId); } } } } }