public void OnEndDrag(PointerEventData eventData) { Vector3 worldPosition1; //Vector3 mousePos = Input.mousePosition; transform.position = new Vector3(transform.position.x, transform.position.y, 1); // important pour detecter la zone if (Camera.main != null) { worldPosition1 = Camera.main.ScreenToWorldPoint(Input.mousePosition); worldPosition1.z = -1 * worldPosition1.z; print(-1 * Vector2.up); print(Vector2.up); RaycastHit2D hit = Physics2D.Raycast(worldPosition1, -Vector2.up); if (hit.collider != null) { print(hit.collider.name); if (hit.collider.name == "ZoneNormal(Clone)(Clone)") { ZoneController zc = hit.collider.GetComponent <ZoneController>(); zc.onDropOn(); zc.onDropOnCard(cardName); if (cardName == TresorCard.TresorCardName.Sandbag) { if (zc.GetZone().getEtat() == Etat.EtatName.Inondee) { zc.GetZone().setEtat(Etat.EtatName.Normale); //TODO GERER ICI LE SANDBAG, JE LE DEFAUSSE PAS JE LE LAISSE LA this.p.defausseCard(cardName); } } else if (cardName == TresorCard.TresorCardName.Helicopter) { this.p.movePlayer(zc.GetZone(), zc); this.p.defausseCard(cardName); //TODO GERER ICI helicopter } //print(hit.collider.GetComponent<ZoneController>().GetZone().getPosition().ToString()); // ici je recupere un composant de la zaone // il suffit alors de faire ce que tu as à faire... } } print(hit.normal); print(hit.centroid); // transform.position = new Vector3(transform.position.x, transform.position.y, 10); // important pour detecter la zone if (hit.collider.name == "Card(Clone)(Clone)") { print(hit.collider.name); print("CARTE DONENEEEE"); PanelCardController p = hit.collider.transform.parent.GetComponent <PanelCardController>(); CardController cc = hit.collider.transform.GetComponent <CardController>(); if (this.cardName != TresorCard.TresorCardName.Empty && p.p != this.p) { exchangeCard(cc, p); } //p.transform = p.initPos; /* pos.localPosition = new Vector3(pos.localPosition.x, * 0 , * pos.localPosition.z );*/ // pos = hit.collider.transform.parent.GetComponent<PanelCardController>(); /*PanelCardController p = hit.collider.transform.parent.GetComponent<PanelCardController>(); * print( p.p.ToString()); */ } if (pbc != null) { pbc.showPanel(); } transform.position = new Vector3(transform.position.x, transform.position.y, -5); // important pour detecter la zone transform.localPosition = initPos; } }