public IEnumerator ScaleCardOut() { //désactive l'info bulle if (cardDisplay) { cardDisplay.DesactiveInfoWindow(); cardDisplay.gameObject.GetComponent <Canvas>().sortingOrder = 0; } Vector3 originalScale = display.transform.localScale; Vector3 destinationScale = new Vector3(1, 1, 1); Vector3 originalPosition = display.transform.localPosition; Vector3 destinationPosition = new Vector3(0, 0, 0); float currentTime = 0.0f; while (/*currentTime <= timeHover &&*/ !isHover && (display.transform.localPosition - destinationPosition).magnitude > 0.01f) { //display.transform.localScale = Vector3.Lerp(originalScale, destinationScale, currentTime / timeHover); //display.transform.localPosition = Vector3.Lerp(originalPosition, destinationPosition, currentTime/ timeHover); //Danping display.transform.localScale = Vector3.Lerp(display.transform.localScale, destinationScale, Time.deltaTime * 10f); if (!inDraft) { display.transform.localPosition = Vector3.Lerp(display.transform.localPosition, destinationPosition, Time.deltaTime * 10f); } currentTime += Time.deltaTime; yield return(null); } display.transform.localScale = destinationScale; if (!inDraft) { display.transform.localPosition = destinationPosition; } }