//actualizar inventario public void ActInventario() { print("actualizado"); for (int i = 0; i < pool.Count; i++) { if (i < inventario.Count) { ObjInventarioId o = inventario [i]; pool [i].sprite.sprite = bd.BD [o.id].sprite; pool [i].cant.text = o.cant.ToString(); pool [i].id = i; pool [i].button.onClick.RemoveAllListeners(); pool [i].button.onClick.AddListener(() => gameObject.SendMessage(bd.BD [o.id].funcion, SendMessageOptions.DontRequireReceiver)); pool [i].gameObject.SetActive(true); } else { pool [i].gameObject.SetActive(false); } } if (inventario.Count > pool.Count) { for (int i = pool.Count; i < inventario.Count; i++) { InventarioInterface oi = Instantiate(prefab, inventarioUI); pool.Add(oi); oi.transform.position = Vector3.zero; oi.transform.localScale = Vector3.one; ObjInventarioId o = inventario [i]; pool [i].sprite.sprite = bd.BD [o.id].sprite; pool [i].cant.text = o.cant.ToString(); pool [i].id = i; pool [i].admin = this; pool [i].button.onClick.RemoveAllListeners(); pool [i].button.onClick.AddListener(() => gameObject.SendMessage(bd.BD [o.id].funcion, SendMessageOptions.DontRequireReceiver)); pool [i].gameObject.SetActive(true); } } }
//Cuando se suelta el objeto se va lejos para que no se vea public void OnEndDrag(PointerEventData eventData) { arrastrando = null; InventarioObjPlaceHolder.current.transform.position = new Vector3(100000, 100000, 100000); }
//cuando es arrastrado public void OnBeginDrag(PointerEventData eventData) { arrastrando = this; InventarioObjPlaceHolder.current.sprite.sprite = sprite.sprite; }