From 1d0d7500ec86df3e471d23d2afd784c017c2706f Mon Sep 17 00:00:00 2001 From: FateJH Date: Tue, 9 Jun 2020 16:04:45 -0400 Subject: [PATCH] reviving players now has a distance check --- common/src/main/scala/net/psforever/objects/Players.scala | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/common/src/main/scala/net/psforever/objects/Players.scala b/common/src/main/scala/net/psforever/objects/Players.scala index 9260da455..5a23d039c 100644 --- a/common/src/main/scala/net/psforever/objects/Players.scala +++ b/common/src/main/scala/net/psforever/objects/Players.scala @@ -6,7 +6,7 @@ import net.psforever.objects.equipment.EquipmentSlot import net.psforever.objects.inventory.InventoryItem import net.psforever.objects.loadouts.InfantryLoadout import net.psforever.packet.game.{InventoryStateMessage, RepairMessage} -import net.psforever.types.ExoSuitType +import net.psforever.types.{ExoSuitType, Vector3} import services.Service import services.avatar.{AvatarAction, AvatarServiceMessage} @@ -28,7 +28,8 @@ object Players { def RevivingTickAction(target : Player, user : Player, item : Tool)(progress : Float) : Boolean = { if(!target.isAlive && !target.isBackpack && user.isAlive && !user.isMoving && - user.Slot(user.DrawnSlot).Equipment.contains(item) && item.Magazine > 0) { + user.Slot(user.DrawnSlot).Equipment.contains(item) && item.Magazine > 0 && + Vector3.Distance(target.Position, user.Position) < target.Definition.RepairDistance) { val magazine = item.Discharge val events = target.Zone.AvatarEvents val uname = user.Name