From 60a1771d1db8119b2713b91b33bf529a90e410b6 Mon Sep 17 00:00:00 2001 From: Resaec Date: Mon, 4 Dec 2023 20:40:05 +0100 Subject: [PATCH] Fix currently hacked base not clearing hack --- .../net/psforever/actors/session/ChatActor.scala | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/scala/net/psforever/actors/session/ChatActor.scala b/src/main/scala/net/psforever/actors/session/ChatActor.scala index d695487d..61aae9c2 100644 --- a/src/main/scala/net/psforever/actors/session/ChatActor.scala +++ b/src/main/scala/net/psforever/actors/session/ChatActor.scala @@ -5,6 +5,9 @@ import akka.actor.typed.{ActorRef, Behavior, PostStop, SupervisorStrategy} import akka.actor.typed.receptionist.Receptionist import akka.actor.typed.scaladsl.{ActorContext, Behaviors, StashBuffer} import akka.actor.typed.scaladsl.adapter._ +import net.psforever.actors.zone.ZoneActor +import net.psforever.objects.sourcing.PlayerSource +import net.psforever.services.local.{LocalAction, LocalServiceMessage} import scala.collection.mutable import scala.concurrent.ExecutionContextExecutor @@ -488,6 +491,14 @@ class ChatActor( building.Actor ! BuildingActor.SetFaction(faction) building.Actor ! BuildingActor.AmenityStateChange(terminal, Some(false)) + + // clear any previous hack via "resecure" + if (building.CaptureTerminalIsHacked) { + building.Zone.LocalEvents ! LocalServiceMessage(terminal.Zone.id,LocalAction.ResecureCaptureTerminal(terminal, PlayerSource.Nobody)) + } + + // push any updates this might cause to clients + building.Zone.actor ! ZoneActor.ZoneMapUpdate() } case (_, Some(0), _, None, _) =>