Where is the actual Delay code?

This is the delay. LastDoorOpenTime is being stored, think about it step by step, second by second. So lets say you just started the game the door is closed, after just over 1 second the if statement is now true
( 1.1f - 0 > 1.f)
and CloseDoor() is called, but since it’s already in the closed state nothing should appear to be different.

You now step into the volume at 2 seconds in and LastDoorOpenTime gets set to 2. You now leave almost immediately (say at 2.2). The if statement now will read
2.2f - 2.2f > 1.f | (0 > 1)
2.3f - 2.2f > 1.f | (0.1 > 1)

3.1f - 2.2f > 1.f | (0.9 > 1)
3.2f - 2.2f > 1.f | (1 > 1)

and then finally after that, that statement is no longer false and the DoorClose function is called.