How to delete one Gameobject in a Trigger?
I have a trigger in front of the player and when items enter the trigger they are added to the list.
private List<GameObject> ItemRange = new List<GameObject>();
private bool ItemDeleted;
public Inputmanager Inputmanager;
private void OnTriggerEnter(Collider col)
{
if (col.gameObject.layer == 6)
{
Debug.Log("Item found");
ItemRange.Add(col.gameObject);
Debug.Log("ItemRange List:" + ItemRange.Count);
}
}
private void OnTriggerStay(Collider col)
{
if (col.gameObject.layer == 6 && Inputmanager.DropItem && ItemDeleted == false)
{
ItemDeleted = true;
Destroy(ItemRange[ItemRange.Count - 1]);
ItemRange.RemoveAt(ItemRange.Count - 1);
}
ItemDeleted = false;
}
private void OnTriggerExit(Collider col)
{
if (col.gameObject.layer == 6)
{
Debug.Log("Item lost");
ItemRange.Remove(col.gameObject);
Debug.Log("ItemRange List:" + ItemRange.Count);
}
}
When I press the DropItem Button, I wanna delete only the last object in the list not all in the Trigger.
unbenannt.png
(15.2 kB)
unbenannt1.png
(13.1 kB)
Comment
So what exactly is the problem? Is it not deleting the item?
Your answer
Follow this Question
Related Questions
Help with Trigger Colliders.. 0 Answers
Trigger enter and directly Exit 0 Answers
Question regarding OnTriggerEnter and Application.LoadLevel 1 Answer
Triggers colliding with triggers 1 Answer
Trigger Sets GameObject 0 Answers