public override void OnDrop(PointerEventData eventData)
    {
        //base.OnDrop(eventData);
        DraggableBoat db = eventData.pointerDrag.GetComponent <DraggableBoat>();

        db = eventData.pointerDrag.GetComponent <DraggableBoat>();
        if (_zone != null)
        {
            _zoneDetails.UpdateDetails(_zone);
        }

        if (db != null && db.Boat.CheckAvailable())
        {
            db.Boat.AffectNewZone(_zone);

            if (_list != null)
            {
                _list.AddBoat(db.Boat);
            }
            Destroy(eventData.pointerDrag);
        }
        else
        {
            DraggablePlayerBoat dpb = eventData.pointerDrag.GetComponent <DraggablePlayerBoat>();
            if (dpb != null)
            {
                dpb.Player.CurrentZone = _zone;
            }
            Destroy(eventData.pointerDrag);
        }
    }
 public virtual void UpdateView()
 {
     for (int i = 0; i < transform.childCount; ++i)
     {
         Destroy(transform.GetChild(i).gameObject);
     }
     DraggablePlayerBoat go = Instantiate(_playerBoatPrefab, transform);
 }
    public override void OnDrop(PointerEventData eventData)
    {
        //base.OnDrop(eventData);
        DraggablePlayerBoat playerBoat = eventData.pointerDrag.GetComponent <DraggablePlayerBoat>();

        if (playerBoat != null)
        {
            playerBoat.Player.CurrentZone = null;
            _dpbc.UpdateView();
            Destroy(eventData.pointerDrag);
        }
    }