// Update is called once per frame void Update() { if (objectType == 1) { if (pnjScript.GetItemTrigger() == true) { functions.AddItem(idElement, quantity); pnjScript.SetItemTrigger(false); pnjScript.SetItemGiven(true); } } else { //Si l'objet est visible if (this.GetComponent <MeshRenderer>().enabled == true) { playerPosition = GameObject.Find("Tempus").transform.position; distanceItemPlayer = functions.DistanceBetween(playerPosition, itemPosition); //Si le joueur est proche de l'objet if (distanceItemPlayer.x < hitBoxDistance && distanceItemPlayer.y < hitBoxDistance && distanceItemPlayer.z < hitBoxDistance) { playerDetected = true; this.transform.GetChild(0).GetComponent <MeshRenderer>().enabled = true; if (Input.GetKeyDown(KeyCode.Return) || mouseTrigger == true) { mouseTrigger = false; //Le Mesh renderer de l’objet 3d est désactivé this.GetComponent <MeshRenderer>().enabled = false; this.transform.GetChild(0).GetComponent <MeshRenderer>().enabled = false; //On ajoute l'objet à l'invenaire du joueur et on le lui signal dans la fen^tre de dialogue centrale functions.AddItem(idElement, quantity); functions.SetCentralWindow(true, "Received " + quantity + " " + linkedItem.GetComponent <ItemOld>().GetName()); functions.SetDialogueMode(true); } } else { this.transform.GetChild(0).GetComponent <MeshRenderer>().enabled = false; } } //Si le mode dialogue est activé ici, cela signifie que le joueur vient de recevoir un objet et le jeu attend simplement que le joueur ferme la fenêtre centrale else if (functions.GetDialogueMode() == true) { if (Input.GetKeyDown(KeyCode.Return) || Input.GetMouseButtonDown(0) == true) { functions.SetCentralWindow(false); functions.SetDialogueMode(false); } } } }