diff --git a/common/src/main/scala/services/local/support/DoorCloseActor.scala b/common/src/main/scala/services/local/support/DoorCloseActor.scala index 1af1f1fac..46bef0d87 100644 --- a/common/src/main/scala/services/local/support/DoorCloseActor.scala +++ b/common/src/main/scala/services/local/support/DoorCloseActor.scala @@ -38,8 +38,11 @@ class DoorCloseActor() extends Actor { val (doorsToClose2, doorsLeftOpen2) = doorsToClose1.partition(entry => { entry.door.Open match { case Some(player) => - Vector3.MagnitudeSquared(entry.door.Position - player.Position) > 15 + // If the player that opened the door is far enough away, or they're dead / backpacked, close the door + var playerIsBackpackInZone = entry.zone.Corpses.contains(player) + Vector3.MagnitudeSquared(entry.door.Position - player.Position) > 25.5 || playerIsBackpackInZone case None => + // Door should not be open. Mark it to be closed. true } })