public void OnBeginDrag(PointerEventData eventData) { // Этот блок на свякий случай. // Прецедентов не было, но удаление может сломаться. if (_draggedPropItem != null) { Debug.LogError("Была ошибка при удалении."); Destroy(_draggedPropItem.gameObject); } var propScheme = PropItemViewModel.Prop.Scheme; var canUse = propScheme.Use != null; var canRead = propScheme.Sid == HISTORY_BOOK_SID; var canEquip = propScheme.Equip != null; var canDnd = canUse || canRead || canEquip; if (!canDnd) { return; } var parentCanvas = FindObjectOfType <Canvas>(); var draggedPropItemObj = _diContainer.InstantiatePrefab(DraggedPropItemPrefab, parentCanvas.transform); _draggedPropItem = draggedPropItemObj.GetComponent <DraggedPropItem>(); _draggedPropItem.Init(PropItemViewModel); PropItemViewModel.SetDraggingState(true); _inventoryState.SelectedProp = PropItemViewModel; }
public void OnBeginDrag(PointerEventData eventData) { // Этот блок на свякий случай. // Прецедентов не было, но удаление может сломаться. if (_draggedPropItem != null) { Debug.LogError("Была ошибка при удалении."); Destroy(_draggedPropItem.gameObject); } var parentCanvas = FindObjectOfType <Canvas>(); var draggedPropItemObj = _diContainer.InstantiatePrefab(DraggedPropItemPrefab, parentCanvas.transform); _draggedPropItem = draggedPropItemObj.GetComponent <DraggedPropItem>(); _draggedPropItem.Init(InventorySlotViewModel); InventorySlotViewModel.SetDraggingState(true); }