diff --git a/server/src/test/scala/actor/service/AvatarServiceTest.scala b/server/src/test/scala/actor/service/AvatarServiceTest.scala index 8b437a173..eb33c2ab7 100644 --- a/server/src/test/scala/actor/service/AvatarServiceTest.scala +++ b/server/src/test/scala/actor/service/AvatarServiceTest.scala @@ -16,13 +16,13 @@ import net.psforever.packet.game.{ObjectCreateMessage, PlayerStateMessageUpstrea import net.psforever.types._ import net.psforever.services.{RemoverActor, Service, ServiceManager} import net.psforever.services.avatar._ -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ObjectDelete, PlanetsideAttribute, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ConcealPlayer, ObjectDelete, PlanetsideAttribute, ReloadTool, WeaponDryFire} class AvatarService1Test extends ActorTest { "AvatarService" should { "construct" in { ServiceManager.boot(system) - system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) assert(true) } } @@ -32,7 +32,7 @@ class AvatarService2Test extends ActorTest { "AvatarService" should { "subscribe" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") assert(true) } @@ -43,7 +43,7 @@ class AvatarService3Test extends ActorTest { "AvatarService" should { ServiceManager.boot(system) "subscribe to a specific channel" in { - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! Service.Leave() assert(true) @@ -55,7 +55,7 @@ class AvatarService4Test extends ActorTest { "AvatarService" should { "subscribe" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! Service.LeaveAll() assert(true) @@ -67,7 +67,7 @@ class AvatarService5Test extends ActorTest { "AvatarService" should { "pass an unhandled message" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! "hello" expectNoMessage() @@ -79,7 +79,7 @@ class ArmorChangedTest extends ActorTest { "AvatarService" should { "pass ArmorChanged" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), AvatarAction.ArmorChanged(ExoSuitType.Reinforced, 0)) expectMsg( @@ -97,17 +97,17 @@ class ConcealPlayerTest extends ActorTest { "AvatarService" should { "pass ConcealPlayer" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") - service ! AvatarServiceMessage("test", AvatarAction.ConcealPlayer(PlanetSideGUID(10))) - expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), AvatarAction.ConcealPlayer(PlanetSideGUID(10)))) + service ! AvatarServiceMessage("test", ConcealPlayer(PlanetSideGUID(10))) + expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), ConcealPlayer(PlanetSideGUID(10)))) } } } class EquipmentInHandTest extends ActorTest { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), "release-test-service") + val service = system.actorOf(Props(classOf[AvatarService]), "release-test-service") val toolDef = GlobalDefinitions.beamer val tool = Tool(toolDef) tool.GUID = PlanetSideGUID(40) @@ -134,7 +134,7 @@ class EquipmentInHandTest extends ActorTest { class DroptItemTest extends ActorTest { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), "release-test-service") + val service = system.actorOf(Props(classOf[AvatarService]), "release-test-service") val toolDef = GlobalDefinitions.beamer val tool = Tool(toolDef) tool.Position = Vector3(1, 2, 3) @@ -173,7 +173,7 @@ class LoadPlayerTest extends ActorTest { "AvatarService" should { "pass LoadPlayer" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") //no parent data service ! AvatarServiceMessage( @@ -197,7 +197,7 @@ class ObjectDeleteTest extends ActorTest { "AvatarService" should { "pass ObjectDelete" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), ObjectDelete(PlanetSideGUID(11))) expectMsg( @@ -216,7 +216,7 @@ class ObjectHeldTest extends ActorTest { "AvatarService" should { "pass ObjectHeld" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), AvatarAction.ObjectHeld(1, 2)) expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), AvatarAction.ObjectHeld(1, 2))) @@ -228,7 +228,7 @@ class PutDownFDUTest extends ActorTest { "AvatarService" should { "pass PutDownFDU" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", AvatarAction.PutDownFDU(PlanetSideGUID(10))) expectMsg( @@ -242,7 +242,7 @@ class PlanetsideAttributeTest extends ActorTest { "AvatarService" should { "pass PlanetsideAttribute" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), PlanetsideAttribute(PlanetSideGUID(10), 5, 1200L)) expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), PlanetsideAttribute(PlanetSideGUID(10), 5, 1200L))) @@ -271,7 +271,7 @@ class PlayerStateTest extends ActorTest { "AvatarService" should { "pass PlayerState" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage( "test", @@ -322,7 +322,7 @@ class PickupItemTest extends ActorTest { "pass PickUpItem" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! PickupItemMessage("test", AvatarAction.PickupItem(tool), Zone.Nowhere) expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), ObjectDelete(tool.GUID, 0))) @@ -333,10 +333,10 @@ class ReloadTest extends ActorTest { "AvatarService" should { "pass Reload" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") - service ! AvatarServiceMessage("test", PlanetSideGUID(10), AvatarAction.Reload(PlanetSideGUID(40))) - expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), AvatarAction.Reload(PlanetSideGUID(40)))) + service ! AvatarServiceMessage("test", PlanetSideGUID(10), ReloadTool(PlanetSideGUID(40))) + expectMsg(AvatarServiceResponse("/test/Avatar", PlanetSideGUID(10), ReloadTool(PlanetSideGUID(40)))) } } } @@ -348,7 +348,7 @@ class ChangeAmmoTest extends ActorTest { "AvatarService" should { "pass ChangeAmmo" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage( "test", @@ -387,7 +387,7 @@ class ChangeFireModeTest extends ActorTest { "AvatarService" should { "pass ChangeFireMode" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), AvatarAction.ChangeFireMode(PlanetSideGUID(40), 0)) expectMsg( @@ -401,7 +401,7 @@ class ChangeFireStateStartTest extends ActorTest { "AvatarService" should { "pass ChangeFireState_Start" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), ChangeFireState_Start(PlanetSideGUID(40))) expectMsg( @@ -419,7 +419,7 @@ class ChangeFireStateStopTest extends ActorTest { "AvatarService" should { "pass ChangeFireState_Stop" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), ChangeFireState_Stop(PlanetSideGUID(40))) expectMsg( @@ -437,7 +437,7 @@ class WeaponDryFireTest extends ActorTest { "AvatarService" should { "pass WeaponDryFire" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage("test", PlanetSideGUID(10), WeaponDryFire(PlanetSideGUID(40))) expectMsg( @@ -453,7 +453,7 @@ class AvatarStowEquipmentTest extends ActorTest { "AvatarService" should { "pass StowEquipment" in { ServiceManager.boot(system) - val service = system.actorOf(Props(classOf[AvatarService], Zone.Nowhere), AvatarServiceTest.TestName) + val service = system.actorOf(Props(classOf[AvatarService]), AvatarServiceTest.TestName) service ! Service.Join("test") service ! AvatarServiceMessage( "test", diff --git a/src/main/scala/net/psforever/actors/session/AvatarActor.scala b/src/main/scala/net/psforever/actors/session/AvatarActor.scala index 931c2ee0b..6bad7620e 100644 --- a/src/main/scala/net/psforever/actors/session/AvatarActor.scala +++ b/src/main/scala/net/psforever/actors/session/AvatarActor.scala @@ -49,7 +49,7 @@ import net.psforever.objects.vital.{DamagingActivity, HealFromImplant, HealingAc import net.psforever.packet.game.objectcreate.{BasicCharacterData, ObjectClass, RibbonBars} import net.psforever.packet.game.{Friend => GameFriend, _} import net.psforever.persistence -import net.psforever.services.base.messages.{SendResponse, PlanetsideAttribute} +import net.psforever.services.base.message.{SendResponse, PlanetsideAttribute} import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} import net.psforever.types.{ CharacterSex, diff --git a/src/main/scala/net/psforever/actors/session/SessionActor.scala b/src/main/scala/net/psforever/actors/session/SessionActor.scala index aaec38df4..578381968 100644 --- a/src/main/scala/net/psforever/actors/session/SessionActor.scala +++ b/src/main/scala/net/psforever/actors/session/SessionActor.scala @@ -18,12 +18,13 @@ import net.psforever.services.CavernRotationService import net.psforever.services.CavernRotationService.SendCavernRotationUpdates import net.psforever.services.ServiceManager.LookupResult import net.psforever.services.account.{PlayerToken, ReceiveAccountData} -import net.psforever.services.avatar.AvatarServiceResponse +import net.psforever.services.avatar.AvatarStamp +import net.psforever.services.base.envelope.{GenericResponseEnvelope, Undelivered} import net.psforever.services.chat.ChatService -import net.psforever.services.galaxy.GalaxyServiceResponse -import net.psforever.services.local.LocalServiceResponse +import net.psforever.services.galaxy.GalaxyStamp +import net.psforever.services.local.LocalStamp import net.psforever.services.teamwork.SquadServiceResponse -import net.psforever.services.vehicle.VehicleServiceResponse +import net.psforever.services.vehicle.VehicleStamp import org.joda.time.LocalDateTime import org.log4s.MDC @@ -170,27 +171,32 @@ class SessionActor(middlewareActor: typed.ActorRef[MiddlewareActor.Command], con case packet: PlanetSideGamePacket => handleGamePkt(packet) - case AvatarServiceResponse(toChannel, guid, reply) => - logic.avatarResponse.handle(toChannel, guid, reply) + case SquadServiceResponse(_, excluded, reply) => + logic.squad.handle(reply, excluded) - case GalaxyServiceResponse(_, reply) => - logic.galaxy.handle(reply) - - case LocalServiceResponse(toChannel, guid, reply) => - logic.local.handle(toChannel, guid, reply) + case envelope: GenericResponseEnvelope => + val GenericResponseEnvelope(toChannel, guid, reply) = envelope + envelope.stamp match { + case AvatarStamp => + logic.avatarResponse.handle(toChannel, guid, reply) + case LocalStamp => + logic.local.handle(toChannel, guid, reply) + case VehicleStamp => + logic.vehicleResponse.handle(toChannel, guid, reply) + case GalaxyStamp => + logic.galaxy.handle(reply) + case Undelivered => + log.error(s"received a message's response that was not delivered by an event system - $reply") + case unknownStamp => + log.error(s"received a message's response from an unknown event system - stamp: $unknownStamp") + } case Mountable.MountMessages(tplayer, reply) => logic.mountResponse.handle(tplayer, reply) - case SquadServiceResponse(_, excluded, response) => - logic.squad.handle(response, excluded) - case Terminal.TerminalMessage(tplayer, msg, order) => logic.terminals.handle(tplayer, msg, order) - case VehicleServiceResponse(toChannel, guid, reply) => - logic.vehicleResponse.handle(toChannel, guid, reply) - case ChatService.MessageResponse(fromSession, message, _) => logic.chat.handleIncomingMessage(message, fromSession) diff --git a/src/main/scala/net/psforever/actors/session/csr/AvatarHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/csr/AvatarHandlerLogic.scala index 5b6306f24..01b88bf05 100644 --- a/src/main/scala/net/psforever/actors/session/csr/AvatarHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/csr/AvatarHandlerLogic.scala @@ -13,8 +13,7 @@ import net.psforever.objects.serverobject.mount.Mountable import net.psforever.objects.vital.RevivingActivity import net.psforever.packet.game.{AvatarImplantMessage, CreateShortcutMessage, HitHint, ImplantAction} import net.psforever.services.avatar.{AvatarAction, AvatarServiceResponse} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ConcealPlayer, EventResponse, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} import net.psforever.types.ImplantType // @@ -430,9 +429,6 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A case SendResponse(msgs) => msgs.foreach(sendResponse) - case AvatarAction.SendResponseTargeted(targetGuid, msg) if resolvedPlayerGuid == targetGuid => - sendResponse(msg) - /* common messages (maybe once every respawn) */ case ReloadTool(itemGuid) if isNotSameTarget && ops.lastSeenStreamMessage.get(guid.guid).exists { _.visible } => @@ -505,7 +501,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A case AvatarAction.ChangeFireMode(itemGuid, mode) if isNotSameTarget => sendResponse(ChangeFireModeMessage(itemGuid, mode)) - case AvatarAction.ConcealPlayer(_) => + case ConcealPlayer(_) => sendResponse(GenericObjectActionMessage(guid, code=9)) case AvatarAction.EnvironmentalDamage(_, _, _) => diff --git a/src/main/scala/net/psforever/actors/session/csr/ChatLogic.scala b/src/main/scala/net/psforever/actors/session/csr/ChatLogic.scala index 313cb6b62..2825c0554 100644 --- a/src/main/scala/net/psforever/actors/session/csr/ChatLogic.scala +++ b/src/main/scala/net/psforever/actors/session/csr/ChatLogic.scala @@ -17,7 +17,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.game.{ChatMsg, SetChatFilterMessage} import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.{ObjectDelete, SetEmpire} +import net.psforever.services.base.message.{ObjectDelete, SetEmpire} import net.psforever.services.chat.{ChatChannel, DefaultChannel, SpectatorChannel, SquadChannel} import net.psforever.types.ChatMessageType.{CMT_TOGGLESPECTATORMODE, CMT_TOGGLE_GM} import net.psforever.types.{ChatMessageType, PlanetSideEmpire} diff --git a/src/main/scala/net/psforever/actors/session/csr/CustomerServiceRepresentativeMode.scala b/src/main/scala/net/psforever/actors/session/csr/CustomerServiceRepresentativeMode.scala index bedddfaf2..e8a15ba1f 100644 --- a/src/main/scala/net/psforever/actors/session/csr/CustomerServiceRepresentativeMode.scala +++ b/src/main/scala/net/psforever/actors/session/csr/CustomerServiceRepresentativeMode.scala @@ -11,7 +11,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.game.{ChatMsg, ObjectCreateDetailedMessage, PlanetsideAttributeMessage} import net.psforever.packet.game.objectcreate.RibbonBars import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.chat.{CustomerServiceChannel, SpectatorChannel} import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{ChatMessageType, MeritCommendation, PlanetSideGUID} diff --git a/src/main/scala/net/psforever/actors/session/csr/GeneralLogic.scala b/src/main/scala/net/psforever/actors/session/csr/GeneralLogic.scala index 65fc5b052..5aa14d2f6 100644 --- a/src/main/scala/net/psforever/actors/session/csr/GeneralLogic.scala +++ b/src/main/scala/net/psforever/actors/session/csr/GeneralLogic.scala @@ -35,7 +35,7 @@ import net.psforever.packet.game.OutfitEventAction.{Initial, OutfitInfo, OutfitR import net.psforever.packet.game.{ActionCancelMessage, AvatarFirstTimeEventMessage, AvatarImplantMessage, AvatarJumpMessage, BattleplanMessage, BindPlayerMessage, BugReportMessage, ChangeFireModeMessage, ChangeShortcutBankMessage, CharacterCreateRequestMessage, CharacterRequestMessage, ChatMsg, CollisionIs, ConnectToWorldRequestMessage, CreateShortcutMessage, DeadState, DeployObjectMessage, DisplayedAwardMessage, DropItemMessage, EmoteMsg, FacilityBenefitShieldChargeRequestMessage, FriendsRequest, GenericAction, GenericActionMessage, GenericCollisionMsg, GenericObjectActionAtPositionMessage, GenericObjectActionMessage, GenericObjectStateMsg, HitHint, InvalidTerrainMessage, LootItemMessage, MoveItemMessage, ObjectDetectedMessage, ObjectHeldMessage, OutfitEvent, OutfitMemberEvent, OutfitMembershipRequest, OutfitMembershipResponse, OutfitRequest, OutfitRequestAction, PickupItemMessage, PlanetsideAttributeMessage, PlayerStateMessageUpstream, RequestDestroyMessage, TargetingImplantRequest, TerrainCondition, TradeMessage, UnuseItemMessage, UseItemMessage, VoiceHostInfo, VoiceHostRequest, ZipLineMessage} import net.psforever.services.RemoverActor import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage, CorpseEnvelope} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.types.{CapacitorStateType, ChatMessageType, Cosmetic, ExoSuitType, PlanetSideEmpire, PlanetSideGUID, Vector3} import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/actors/session/csr/MountHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/csr/MountHandlerLogic.scala index 33dfbf483..1527495ba 100644 --- a/src/main/scala/net/psforever/actors/session/csr/MountHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/csr/MountHandlerLogic.scala @@ -15,7 +15,7 @@ import net.psforever.objects.serverobject.turret.{FacilityTurret, WeaponTurret} import net.psforever.objects.vehicles.AccessPermissionGroup import net.psforever.objects.vital.InGameHistory import net.psforever.packet.game.{ChatMsg, DelayedPathMountMsg, DismountVehicleCargoMsg, DismountVehicleMsg, GenericObjectActionMessage, MountVehicleCargoMsg, MountVehicleMsg, ObjectDetachMessage, PlanetsideAttributeMessage, PlayerStasisMessage, PlayerStateShiftMessage, ShiftState} -import net.psforever.services.base.messages.{SendResponse, SetEmpire} +import net.psforever.services.base.message.{SendResponse, SetEmpire} import net.psforever.services.local.LocalServiceMessage import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{BailType, ChatMessageType, DriveState, PlanetSideGUID, Vector3} diff --git a/src/main/scala/net/psforever/actors/session/csr/SpectateAsCustomerServiceRepresentativeMode.scala b/src/main/scala/net/psforever/actors/session/csr/SpectateAsCustomerServiceRepresentativeMode.scala index 4f5158ef4..c5d4eee32 100644 --- a/src/main/scala/net/psforever/actors/session/csr/SpectateAsCustomerServiceRepresentativeMode.scala +++ b/src/main/scala/net/psforever/actors/session/csr/SpectateAsCustomerServiceRepresentativeMode.scala @@ -8,7 +8,7 @@ import net.psforever.objects.{Player, Session, Vehicle} import net.psforever.objects.zones.Zone import net.psforever.packet.PlanetSidePacket import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import net.psforever.services.chat.SpectatorChannel import net.psforever.services.teamwork.{SquadAction, SquadServiceMessage} import net.psforever.types.{ChatMessageType, SquadRequestType} diff --git a/src/main/scala/net/psforever/actors/session/csr/VehicleLogic.scala b/src/main/scala/net/psforever/actors/session/csr/VehicleLogic.scala index 2c7bb30dc..78ba0e05f 100644 --- a/src/main/scala/net/psforever/actors/session/csr/VehicleLogic.scala +++ b/src/main/scala/net/psforever/actors/session/csr/VehicleLogic.scala @@ -14,7 +14,7 @@ import net.psforever.objects.zones.interaction.InteractsWithZone import net.psforever.packet.game.{ChildObjectStateMessage, DeployRequestMessage, FrameVehicleStateMessage, PlanetsideAttributeMessage, VehicleStateMessage, VehicleSubStateMessage} import net.psforever.services.avatar.AvatarServiceMessage import net.psforever.services.base.CachedMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{DriveState, Vector3} diff --git a/src/main/scala/net/psforever/actors/session/normal/AvatarHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/normal/AvatarHandlerLogic.scala index 1ff0bdde2..2fcfe4f3f 100644 --- a/src/main/scala/net/psforever/actors/session/normal/AvatarHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/AvatarHandlerLogic.scala @@ -13,8 +13,7 @@ import net.psforever.objects.vital.RevivingActivity import net.psforever.objects.vital.interaction.Adversarial import net.psforever.packet.game.{AvatarImplantMessage, CreateShortcutMessage, ImplantAction, PlanetsideStringAttributeMessage} import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ConcealPlayer, EventResponse, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} import net.psforever.types.ImplantType import scala.concurrent.duration._ @@ -484,9 +483,6 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A case SendResponse(msgs) => msgs.foreach(sendResponse) - case AvatarAction.SendResponseTargeted(targetGuid, msg) if resolvedPlayerGuid == targetGuid => - sendResponse(msg) - /* common messages (maybe once every respawn) */ case ReloadTool(itemGuid) if isNotSameTarget && ops.lastSeenStreamMessage.get(guid.guid).exists { _.visible } => @@ -613,7 +609,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A case AvatarAction.ChangeFireMode(itemGuid, mode) if isNotSameTarget => sendResponse(ChangeFireModeMessage(itemGuid, mode)) - case AvatarAction.ConcealPlayer(_) => + case ConcealPlayer(_) => sendResponse(GenericObjectActionMessage(guid, code=9)) case AvatarAction.EnvironmentalDamage(_, _, _) => diff --git a/src/main/scala/net/psforever/actors/session/normal/GalaxyHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/normal/GalaxyHandlerLogic.scala index 8ef281b1d..d3980e8ba 100644 --- a/src/main/scala/net/psforever/actors/session/normal/GalaxyHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/GalaxyHandlerLogic.scala @@ -5,8 +5,7 @@ import akka.actor.{ActorContext, ActorRef, typed} import net.psforever.actors.session.AvatarActor import net.psforever.actors.session.support.{GalaxyHandlerFunctions, SessionData, SessionGalaxyHandlers} import net.psforever.packet.game.{BroadcastWarpgateUpdateMessage, FriendsResponse, HotSpotUpdateMessage, ZoneInfoMessage, ZonePopulationUpdateMessage, HotSpotInfo => PacketHotSpotInfo} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.{EventResponse, SendResponse} import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage} import net.psforever.types.{MemberAction, PlanetSideEmpire} diff --git a/src/main/scala/net/psforever/actors/session/normal/GeneralLogic.scala b/src/main/scala/net/psforever/actors/session/normal/GeneralLogic.scala index e7004f6cc..ee784c3c6 100644 --- a/src/main/scala/net/psforever/actors/session/normal/GeneralLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/GeneralLogic.scala @@ -44,7 +44,7 @@ import net.psforever.packet.game.{ActionCancelMessage, ActionResultMessage, Avat import net.psforever.services.account.{AccountPersistenceService, RetrieveAccountData} import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} import net.psforever.services.base.CachedMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.local.support.CaptureFlagManager import net.psforever.types.{CapacitorStateType, ChatMessageType, Cosmetic, ExoSuitType, ImplantType, PlanetSideEmpire, PlanetSideGUID, Vector3} import net.psforever.util.Config diff --git a/src/main/scala/net/psforever/actors/session/normal/LocalHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/normal/LocalHandlerLogic.scala index 173e76393..93421ec75 100644 --- a/src/main/scala/net/psforever/actors/session/normal/LocalHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/LocalHandlerLogic.scala @@ -9,8 +9,7 @@ import net.psforever.objects.serverobject.doors.Door import net.psforever.objects.vehicles.MountableWeapons import net.psforever.objects.{BoomerDeployable, ExplosiveDeployable, TelepadDeployable, Tool, TurretDeployable} import net.psforever.packet.game.{ChatMsg, DeployableObjectsInfoMessage, GenericActionMessage, GenericObjectActionMessage, GenericObjectStateMsg, HackMessage, HackState, HackState1, InventoryStateMessage, ObjectAttachMessage, ObjectCreateMessage, ObjectDeleteMessage, ObjectDetachMessage, OrbitalShuttleTimeMsg, PadAndShuttlePair, PlanetsideAttributeMessage, ProximityTerminalUseMessage, SetEmpireMessage, TriggerEffectMessage, TriggerSoundMessage, TriggeredSound, VehicleStateMessage} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{GenericObjectAction, ObjectDelete, PlanetsideAttribute, SendResponse, SetEmpire} +import net.psforever.services.base.message.{EventResponse, GenericObjectAction, ObjectDelete, PlanetsideAttribute, SendResponse, SetEmpire} import net.psforever.services.{InterstellarClusterService, Service} import net.psforever.services.local.LocalAction import net.psforever.types.{ChatMessageType, PlanetSideGUID, SpawnGroup} @@ -154,9 +153,6 @@ class LocalHandlerLogic(val ops: SessionLocalHandlers, implicit val context: Act case LocalAction.GenericActionMessage(actionNumber) => sendResponse(GenericActionMessage(actionNumber)) - case LocalAction.ChatMessage(msg) => - sendResponse(msg) - case LocalAction.LluSpawned(llu) => // Create LLU on client sendResponse(ObjectCreateMessage( diff --git a/src/main/scala/net/psforever/actors/session/normal/MountHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/normal/MountHandlerLogic.scala index 163ac36fd..c17a7a884 100644 --- a/src/main/scala/net/psforever/actors/session/normal/MountHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/MountHandlerLogic.scala @@ -16,7 +16,7 @@ import net.psforever.objects.serverobject.turret.{FacilityTurret, WeaponTurret} import net.psforever.objects.vehicles.AccessPermissionGroup import net.psforever.objects.vital.InGameHistory import net.psforever.packet.game.{ChatMsg, DelayedPathMountMsg, DismountVehicleCargoMsg, DismountVehicleMsg, GenericObjectActionMessage, MountVehicleCargoMsg, MountVehicleMsg, ObjectDetachMessage, PlanetsideAttributeMessage, PlayerStasisMessage, PlayerStateShiftMessage, ShiftState} -import net.psforever.services.base.messages.{SendResponse, SetEmpire} +import net.psforever.services.base.message.{SendResponse, SetEmpire} import net.psforever.services.local.LocalServiceMessage import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{BailType, ChatMessageType, DriveState, PlanetSideGUID, Vector3} diff --git a/src/main/scala/net/psforever/actors/session/normal/VehicleHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/normal/VehicleHandlerLogic.scala index 54bef7716..821625483 100644 --- a/src/main/scala/net/psforever/actors/session/normal/VehicleHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/normal/VehicleHandlerLogic.scala @@ -14,8 +14,7 @@ import net.psforever.objects.serverobject.pad.VehicleSpawnPad import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.packet.game.{ChangeAmmoMessage, ChangeFireStateMessage_Start, ChangeFireStateMessage_Stop, ChatMsg, ChildObjectStateMessage, DeadState, DeployRequestMessage, DismountVehicleMsg, FrameVehicleStateMessage, GenericObjectActionMessage, HitHint, InventoryStateMessage, ObjectAttachMessage, ObjectCreateDetailedMessage, ObjectCreateMessage, ObjectDeleteMessage, ObjectDetachMessage, PlanetsideAttributeMessage, ReloadMessage, ServerVehicleOverrideMsg, VehicleStateMessage, WeaponDryFireMessage} import net.psforever.services.Service -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, EventResponse, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, WeaponDryFire} import net.psforever.services.local.support.CaptureFlagManager import net.psforever.services.vehicle.{VehicleAction, VehicleServiceResponse} import net.psforever.types.{BailType, ChatMessageType, PlanetSideGUID, Vector3} diff --git a/src/main/scala/net/psforever/actors/session/spectator/AvatarHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/spectator/AvatarHandlerLogic.scala index d1a957407..b393c0847 100644 --- a/src/main/scala/net/psforever/actors/session/spectator/AvatarHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/spectator/AvatarHandlerLogic.scala @@ -8,8 +8,7 @@ import net.psforever.objects.Players import net.psforever.objects.avatar.scoring.Kill import net.psforever.objects.sourcing.PlayerSource import net.psforever.packet.game.{AvatarImplantMessage, ImplantAction} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ConcealPlayer, EventResponse, GenericObjectAction, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, SetEmpire, WeaponDryFire} import scala.concurrent.duration._ // @@ -416,9 +415,6 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A sendResponse(msg) } - case AvatarAction.SendResponseTargeted(targetGuid, msg) if resolvedPlayerGuid == targetGuid => - sendResponse(msg) - /* common messages (maybe once every respawn) */ case ReloadTool(itemGuid) if isNotSameTarget && ops.lastSeenStreamMessage.get(guid.guid).exists { _.visible } => @@ -504,7 +500,7 @@ class AvatarHandlerLogic(val ops: SessionAvatarHandlers, implicit val context: A case AvatarAction.ChangeFireMode(itemGuid, mode) if isNotSameTarget => sendResponse(ChangeFireModeMessage(itemGuid, mode)) - case AvatarAction.ConcealPlayer(_) => + case ConcealPlayer(_) => sendResponse(GenericObjectActionMessage(guid, code=9)) case AvatarAction.EnvironmentalDamage(_, _, _) => diff --git a/src/main/scala/net/psforever/actors/session/spectator/GeneralLogic.scala b/src/main/scala/net/psforever/actors/session/spectator/GeneralLogic.scala index 7755718c4..0a89abf82 100644 --- a/src/main/scala/net/psforever/actors/session/spectator/GeneralLogic.scala +++ b/src/main/scala/net/psforever/actors/session/spectator/GeneralLogic.scala @@ -18,7 +18,7 @@ import net.psforever.packet.game.{ActionCancelMessage, AvatarFirstTimeEventMessa import net.psforever.services.account.AccountPersistenceService import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} import net.psforever.services.base.CachedMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.types.{ExoSuitType, Vector3} import scala.concurrent.duration.DurationInt diff --git a/src/main/scala/net/psforever/actors/session/spectator/MountHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/spectator/MountHandlerLogic.scala index 5b9d41beb..a5f3213a4 100644 --- a/src/main/scala/net/psforever/actors/session/spectator/MountHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/spectator/MountHandlerLogic.scala @@ -12,7 +12,7 @@ import net.psforever.objects.serverobject.mount.Mountable import net.psforever.objects.serverobject.terminals.implant.ImplantTerminalMech import net.psforever.objects.vital.InGameHistory import net.psforever.packet.game.{DelayedPathMountMsg, DismountVehicleCargoMsg, DismountVehicleMsg, GenericObjectActionMessage, MountVehicleCargoMsg, MountVehicleMsg, ObjectDetachMessage, PlayerStasisMessage, PlayerStateShiftMessage, ShiftState} -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalServiceMessage import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} diff --git a/src/main/scala/net/psforever/actors/session/spectator/SpectatorMode.scala b/src/main/scala/net/psforever/actors/session/spectator/SpectatorMode.scala index 1cb2618d2..993735e1d 100644 --- a/src/main/scala/net/psforever/actors/session/spectator/SpectatorMode.scala +++ b/src/main/scala/net/psforever/actors/session/spectator/SpectatorMode.scala @@ -12,7 +12,7 @@ import net.psforever.packet.game.{DeployableInfo, DeployableObjectsInfoMessage, import net.psforever.packet.game.objectcreate.{ObjectClass, ObjectCreateMessageParent, RibbonBars} import net.psforever.services.Service import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import net.psforever.services.chat.SpectatorChannel import net.psforever.services.teamwork.{SquadAction, SquadServiceMessage} import net.psforever.types.{CapacitorStateType, ChatMessageType, ExoSuitType, MeritCommendation, SquadRequestType} diff --git a/src/main/scala/net/psforever/actors/session/spectator/VehicleHandlerLogic.scala b/src/main/scala/net/psforever/actors/session/spectator/VehicleHandlerLogic.scala index 674e39f54..bee65c613 100644 --- a/src/main/scala/net/psforever/actors/session/spectator/VehicleHandlerLogic.scala +++ b/src/main/scala/net/psforever/actors/session/spectator/VehicleHandlerLogic.scala @@ -8,8 +8,7 @@ import net.psforever.objects.equipment.Equipment import net.psforever.objects.serverobject.pad.VehicleSpawnPad import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.packet.game.{ChangeAmmoMessage, ChangeFireStateMessage_Start, ChangeFireStateMessage_Stop, ChildObjectStateMessage, DeadState, DeployRequestMessage, DismountVehicleMsg, FrameVehicleStateMessage, GenericObjectActionMessage, InventoryStateMessage, ObjectAttachMessage, ObjectCreateDetailedMessage, ObjectCreateMessage, ObjectDeleteMessage, ObjectDetachMessage, PlanetsideAttributeMessage, ReloadMessage, ServerVehicleOverrideMsg, VehicleStateMessage, WeaponDryFireMessage} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, GenericObjectAction, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, EventResponse, GenericObjectAction, ObjectDelete, PlanetsideAttribute, ReloadTool, SendResponse, WeaponDryFire} import net.psforever.services.vehicle.{VehicleAction, VehicleServiceResponse} import net.psforever.types.{BailType, PlanetSideGUID, Vector3} diff --git a/src/main/scala/net/psforever/actors/session/support/GeneralOperations.scala b/src/main/scala/net/psforever/actors/session/support/GeneralOperations.scala index 1f259043b..483b03306 100644 --- a/src/main/scala/net/psforever/actors/session/support/GeneralOperations.scala +++ b/src/main/scala/net/psforever/actors/session/support/GeneralOperations.scala @@ -19,7 +19,7 @@ import net.psforever.objects.zones.blockmap.BlockMapEntity import net.psforever.objects.zones.exp.ToDatabase import net.psforever.services.RemoverActor import net.psforever.services.avatar.GroundEnvelope -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.local.support.HackCaptureActor import net.psforever.services.local.{CaptureMessage, LocalAction, LocalServiceMessage} diff --git a/src/main/scala/net/psforever/actors/session/support/SessionAvatarHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionAvatarHandlers.scala index 575a8a587..f8214d24b 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionAvatarHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionAvatarHandlers.scala @@ -9,8 +9,7 @@ import net.psforever.packet.game.objectcreate.ConstructorData import net.psforever.objects.zones.exp import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage, AvatarServiceResponse} -import net.psforever.services.base.EventResponse -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.{EventResponse, SendResponse} import net.psforever.services.chat.OutfitChannel import scala.collection.mutable diff --git a/src/main/scala/net/psforever/actors/session/support/SessionGalaxyHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionGalaxyHandlers.scala index 3f01a8ce6..adc4d742c 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionGalaxyHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionGalaxyHandlers.scala @@ -3,7 +3,7 @@ package net.psforever.actors.session.support import akka.actor.{ActorContext, ActorRef, typed} import net.psforever.packet.game.FriendsResponse -import net.psforever.services.base.EventResponse +import net.psforever.services.base.message.EventResponse import scala.annotation.unused // diff --git a/src/main/scala/net/psforever/actors/session/support/SessionLocalHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionLocalHandlers.scala index b911ffdd1..527636d03 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionLocalHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionLocalHandlers.scala @@ -7,7 +7,7 @@ import net.psforever.objects.ce.Deployable import net.psforever.objects.guid.{GUIDTask, TaskWorkflow} import net.psforever.objects.serverobject.interior.Sidedness import net.psforever.packet.game.{GenericObjectActionMessage, ObjectDeleteMessage, PlanetsideAttributeMessage, TriggerEffectMessage} -import net.psforever.services.base.EventResponse +import net.psforever.services.base.message.EventResponse import net.psforever.types.{PlanetSideGUID, Vector3} trait LocalHandlerFunctions extends CommonSessionInterfacingFunctionality { diff --git a/src/main/scala/net/psforever/actors/session/support/SessionMountHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionMountHandlers.scala index 12c448913..c7adf3df8 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionMountHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionMountHandlers.scala @@ -9,7 +9,7 @@ import net.psforever.objects.vehicles.{CargoBehavior, MountableWeapons} import net.psforever.objects.vital.InGameHistory import net.psforever.packet.game.{DismountVehicleCargoMsg, GenericObjectActionMessage, InventoryStateMessage, MountVehicleCargoMsg, MountVehicleMsg, ObjectAttachMessage, ObjectDetachMessage, PlanetsideAttributeMessage} import net.psforever.services.base.CachedMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{BailType, PlanetSideGUID, Vector3} // diff --git a/src/main/scala/net/psforever/actors/session/support/SessionOutfitHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionOutfitHandlers.scala index 53c2e0b2d..a7d5f4bd9 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionOutfitHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionOutfitHandlers.scala @@ -9,7 +9,7 @@ import net.psforever.packet.game.OutfitEventAction.{Initial, Leaving, OutfitInfo import net.psforever.packet.game.OutfitMembershipResponse.PacketType.CreateResponse import net.psforever.packet.game._ import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.chat.OutfitChannel import net.psforever.types.ChatMessageType import net.psforever.util.Config diff --git a/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala index 25469f213..3645b91a2 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala @@ -2,7 +2,7 @@ package net.psforever.actors.session.support import akka.actor.{ActorContext, ActorRef, typed} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.teamwork.SquadServiceResponse import scala.collection.mutable diff --git a/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala b/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala index 03d0f0df2..a3d1d6cad 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala @@ -5,7 +5,7 @@ import akka.actor.{ActorContext, ActorRef, typed} import net.psforever.actors.session.AvatarActor import net.psforever.objects.Vehicle import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.EventResponse +import net.psforever.services.base.message.EventResponse import net.psforever.types.{ChatMessageType, DriveState, PlanetSideGUID} trait VehicleHandlerFunctions extends CommonSessionInterfacingFunctionality { diff --git a/src/main/scala/net/psforever/actors/session/support/WeaponAndProjectileOperations.scala b/src/main/scala/net/psforever/actors/session/support/WeaponAndProjectileOperations.scala index c9ac61149..a895ab087 100644 --- a/src/main/scala/net/psforever/actors/session/support/WeaponAndProjectileOperations.scala +++ b/src/main/scala/net/psforever/actors/session/support/WeaponAndProjectileOperations.scala @@ -29,7 +29,7 @@ import net.psforever.objects.zones.exp.ToDatabase import net.psforever.packet.game.UplinkRequest import net.psforever.services.Service import net.psforever.services.base.CachedMessage -import net.psforever.services.base.messages.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ReloadTool, SendResponse, WeaponDryFire} +import net.psforever.services.base.message.{ChangeAmmo, ChangeFireState_Start, ChangeFireState_Stop, ReloadTool, SendResponse, WeaponDryFire} import net.psforever.services.local.LocalServiceMessage import net.psforever.types.{ChatMessageType, PlanetSideEmpire, ValidPlanetSideGUID, Vector3} import net.psforever.util.Config diff --git a/src/main/scala/net/psforever/actors/session/support/ZoningOperations.scala b/src/main/scala/net/psforever/actors/session/support/ZoningOperations.scala index 79767068c..68d3f3a58 100644 --- a/src/main/scala/net/psforever/actors/session/support/ZoningOperations.scala +++ b/src/main/scala/net/psforever/actors/session/support/ZoningOperations.scala @@ -23,7 +23,7 @@ import net.psforever.objects.zones.blockmap.BlockMapEntity import net.psforever.packet.game.GenericAction.FirstPersonViewWithEffect import net.psforever.packet.game.{CampaignStatistic, ChangeFireStateMessage_Start, CloudInfo, GenericActionMessage, GenericObjectActionEnum, HackState7, MailMessage, ObjectDetectedMessage, SessionStatistic, StormInfo, TriggeredSound, TrainingZoneMessage, WeatherMessage} import net.psforever.services.avatar.{CorpseEnvelope, ReleaseMessage} -import net.psforever.services.base.messages.{GenericObjectAction, ObjectDelete, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{GenericObjectAction, ObjectDelete, PlanetsideAttribute, SendResponse} import net.psforever.services.chat.DefaultChannel import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/actors/zone/BuildingActor.scala b/src/main/scala/net/psforever/actors/zone/BuildingActor.scala index 79c51dd6f..48cff7c6d 100644 --- a/src/main/scala/net/psforever/actors/zone/BuildingActor.scala +++ b/src/main/scala/net/psforever/actors/zone/BuildingActor.scala @@ -11,7 +11,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.PlanetSideGamePacket import net.psforever.packet.game.ContinentalLockUpdateMessage import net.psforever.persistence -import net.psforever.services.base.messages.{SendResponse, SetEmpire} +import net.psforever.services.base.message.{SendResponse, SetEmpire} import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage} import net.psforever.services.local.LocalServiceMessage import net.psforever.services.{InterstellarClusterService, ServiceManager} diff --git a/src/main/scala/net/psforever/actors/zone/ZoneActor.scala b/src/main/scala/net/psforever/actors/zone/ZoneActor.scala index 8d8a6ef75..a6d7206cd 100644 --- a/src/main/scala/net/psforever/actors/zone/ZoneActor.scala +++ b/src/main/scala/net/psforever/actors/zone/ZoneActor.scala @@ -20,7 +20,7 @@ import net.psforever.objects.zones.exp.{ExperienceCalculator, SupportExperienceC import net.psforever.packet.game.{BuildingInfoUpdateMessage, PlanetsideAttributeMessage} import net.psforever.util.Database._ import net.psforever.persistence -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalServiceMessage import scala.collection.mutable diff --git a/src/main/scala/net/psforever/actors/zone/building/MajorFacilityLogic.scala b/src/main/scala/net/psforever/actors/zone/building/MajorFacilityLogic.scala index caeb3cf33..dbef18ddc 100644 --- a/src/main/scala/net/psforever/actors/zone/building/MajorFacilityLogic.scala +++ b/src/main/scala/net/psforever/actors/zone/building/MajorFacilityLogic.scala @@ -16,7 +16,7 @@ import net.psforever.objects.sourcing.PlayerSource import net.psforever.packet.game.PlanetsideAttributeMessage import net.psforever.services.InterstellarClusterService import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{GenericObjectAction, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{GenericObjectAction, PlanetsideAttribute, SendResponse} import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage} import net.psforever.services.local.{CaptureMessage, HackClearMessage, LocalServiceMessage} import net.psforever.services.local.support.{HackCaptureActor, HackClearActor} diff --git a/src/main/scala/net/psforever/login/WorldSession.scala b/src/main/scala/net/psforever/login/WorldSession.scala index ccc0d4860..dd9a137c0 100644 --- a/src/main/scala/net/psforever/login/WorldSession.scala +++ b/src/main/scala/net/psforever/login/WorldSession.scala @@ -16,7 +16,7 @@ import net.psforever.objects.vital.TerminalUsedActivity import net.psforever.objects.zones.Zone import net.psforever.types.{ExoSuitType, PlanetSideGUID, TransactionType, Vector3} import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import scala.concurrent.ExecutionContext.Implicits.global import scala.concurrent.Future diff --git a/src/main/scala/net/psforever/objects/BoomerDeployable.scala b/src/main/scala/net/psforever/objects/BoomerDeployable.scala index 3d9c9ade7..4e9f4cf3e 100644 --- a/src/main/scala/net/psforever/objects/BoomerDeployable.scala +++ b/src/main/scala/net/psforever/objects/BoomerDeployable.scala @@ -12,7 +12,7 @@ import net.psforever.objects.vital.etc.TriggerUsedReason import net.psforever.objects.vital.interaction.DamageInteraction import net.psforever.objects.zones.Zone import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.types.PlanetSideEmpire diff --git a/src/main/scala/net/psforever/objects/FieldTurretDeployable.scala b/src/main/scala/net/psforever/objects/FieldTurretDeployable.scala index 1e7f1835c..b098e17f0 100644 --- a/src/main/scala/net/psforever/objects/FieldTurretDeployable.scala +++ b/src/main/scala/net/psforever/objects/FieldTurretDeployable.scala @@ -12,7 +12,7 @@ import net.psforever.objects.serverobject.{CommonMessages, PlanetSideServerObjec import net.psforever.objects.sourcing.{PlayerSource, SourceEntry, TurretSource} import net.psforever.objects.vital.{DismountingActivity, InGameActivity, MountingActivity, ShieldCharge} import net.psforever.packet.game.HackState1 -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.vehicle.VehicleServiceMessage import scala.annotation.unused diff --git a/src/main/scala/net/psforever/objects/Players.scala b/src/main/scala/net/psforever/objects/Players.scala index 85a3301a6..337491e3d 100644 --- a/src/main/scala/net/psforever/objects/Players.scala +++ b/src/main/scala/net/psforever/objects/Players.scala @@ -21,7 +21,7 @@ import net.psforever.packet.game._ import net.psforever.types.{ChatMessageType, ExoSuitType, PlanetSideGUID, Vector3} import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.{ObjectDelete, SendResponse} +import net.psforever.services.base.message.{ObjectDelete, SendResponse} import net.psforever.services.local.{LocalAction, LocalServiceMessage} import scala.annotation.tailrec diff --git a/src/main/scala/net/psforever/objects/SensorDeployable.scala b/src/main/scala/net/psforever/objects/SensorDeployable.scala index 113aad232..ce7fd8a74 100644 --- a/src/main/scala/net/psforever/objects/SensorDeployable.scala +++ b/src/main/scala/net/psforever/objects/SensorDeployable.scala @@ -13,7 +13,7 @@ import net.psforever.objects.serverobject.repair.RepairableEntity import net.psforever.objects.vital.SimpleResolutions import net.psforever.objects.vital.interaction.DamageResult import net.psforever.types.{PlanetSideGUID, Vector3} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.services.vehicle.VehicleServiceMessage diff --git a/src/main/scala/net/psforever/objects/ShieldGeneratorDeployable.scala b/src/main/scala/net/psforever/objects/ShieldGeneratorDeployable.scala index 3d84b6df9..96a80ef25 100644 --- a/src/main/scala/net/psforever/objects/ShieldGeneratorDeployable.scala +++ b/src/main/scala/net/psforever/objects/ShieldGeneratorDeployable.scala @@ -13,7 +13,7 @@ import net.psforever.objects.serverobject.hackable.Hackable import net.psforever.objects.serverobject.repair.RepairableEntity import net.psforever.objects.vital.interaction.DamageResult import net.psforever.objects.vital.resolution.ResolutionCalculations -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.types.PlanetSideGUID import net.psforever.services.vehicle.VehicleServiceMessage diff --git a/src/main/scala/net/psforever/objects/Tools.scala b/src/main/scala/net/psforever/objects/Tools.scala index 846e9089a..4c4ca573c 100644 --- a/src/main/scala/net/psforever/objects/Tools.scala +++ b/src/main/scala/net/psforever/objects/Tools.scala @@ -4,7 +4,7 @@ package net.psforever.objects import net.psforever.objects.equipment.ChargeFireModeDefinition import net.psforever.packet.game.QuantityUpdateMessage import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse object Tools { /** diff --git a/src/main/scala/net/psforever/objects/Vehicles.scala b/src/main/scala/net/psforever/objects/Vehicles.scala index 8ae8ce14f..6c21b1bf3 100644 --- a/src/main/scala/net/psforever/objects/Vehicles.scala +++ b/src/main/scala/net/psforever/objects/Vehicles.scala @@ -14,7 +14,7 @@ import net.psforever.packet.game.{ChatMsg, FrameVehicleStateMessage, GenericObje import net.psforever.types.{ChatMessageType, DriveState, PlanetSideEmpire, PlanetSideGUID, Vector3} import net.psforever.services.Service import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{GenericObjectAction, PlanetsideAttribute, SendResponse, SetEmpire} +import net.psforever.services.base.message.{GenericObjectAction, PlanetsideAttribute, SendResponse, SetEmpire} import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} diff --git a/src/main/scala/net/psforever/objects/avatar/CorpseControl.scala b/src/main/scala/net/psforever/objects/avatar/CorpseControl.scala index 99d1d38ba..aad190d15 100644 --- a/src/main/scala/net/psforever/objects/avatar/CorpseControl.scala +++ b/src/main/scala/net/psforever/objects/avatar/CorpseControl.scala @@ -9,7 +9,7 @@ import net.psforever.packet.game.{ObjectAttachMessage, ObjectCreateDetailedMessa import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.types.{PlanetSideEmpire, Vector3} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{ObjectDelete, SendResponse} +import net.psforever.services.base.message.{ObjectDelete, SendResponse} class CorpseControl(player: Player) extends Actor with ContainableBehavior { def ContainerObject = player diff --git a/src/main/scala/net/psforever/objects/avatar/PlayerControl.scala b/src/main/scala/net/psforever/objects/avatar/PlayerControl.scala index 2bfb19697..156deb8c9 100644 --- a/src/main/scala/net/psforever/objects/avatar/PlayerControl.scala +++ b/src/main/scala/net/psforever/objects/avatar/PlayerControl.scala @@ -36,8 +36,7 @@ import net.psforever.objects.vital.collision.CollisionReason import net.psforever.objects.vital.etc.{PainboxReason, SuicideReason} import net.psforever.objects.vital.interaction.{DamageInteraction, DamageResult} import net.psforever.packet.PlanetSideGamePacket -import net.psforever.services.base.EventMessage -import net.psforever.services.base.messages.{HintsAtAttacker, ObjectDelete, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{EventMessage, HintsAtAttacker, ObjectDelete, PlanetsideAttribute, SendResponse} import org.joda.time.{LocalDateTime, Seconds} import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/objects/avatar/interaction/WithEntrance.scala b/src/main/scala/net/psforever/objects/avatar/interaction/WithEntrance.scala index 8e453f38e..7fc2c8aaa 100644 --- a/src/main/scala/net/psforever/objects/avatar/interaction/WithEntrance.scala +++ b/src/main/scala/net/psforever/objects/avatar/interaction/WithEntrance.scala @@ -6,7 +6,7 @@ import net.psforever.objects.serverobject.environment.{EnvironmentAttribute, Env import net.psforever.objects.serverobject.environment.interaction.{InteractionWith, RespondsToZoneEnvironment} import net.psforever.objects.serverobject.interior.{Sidedness, TraditionalInteriorAware} import net.psforever.objects.zones.interaction.InteractsWithZone -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.types.Vector3 import scala.annotation.unused diff --git a/src/main/scala/net/psforever/objects/avatar/interaction/WithGantry.scala b/src/main/scala/net/psforever/objects/avatar/interaction/WithGantry.scala index 40d6a1a15..452cd5bf9 100644 --- a/src/main/scala/net/psforever/objects/avatar/interaction/WithGantry.scala +++ b/src/main/scala/net/psforever/objects/avatar/interaction/WithGantry.scala @@ -8,7 +8,7 @@ import net.psforever.objects.serverobject.shuttle.OrbitalShuttlePad import net.psforever.objects.zones.interaction.InteractsWithZone import net.psforever.packet.game.{ChatMsg, PlayerStateShiftMessage, ShiftState} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.hart.ShuttleState import net.psforever.types.ChatMessageType diff --git a/src/main/scala/net/psforever/objects/ce/DeployableBehavior.scala b/src/main/scala/net/psforever/objects/ce/DeployableBehavior.scala index 2bd35981d..fc8215fd0 100644 --- a/src/main/scala/net/psforever/objects/ce/DeployableBehavior.scala +++ b/src/main/scala/net/psforever/objects/ce/DeployableBehavior.scala @@ -8,7 +8,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.game._ import net.psforever.services.Service import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SetEmpire +import net.psforever.services.base.message.SetEmpire import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.types.PlanetSideEmpire diff --git a/src/main/scala/net/psforever/objects/ce/TelepadLike.scala b/src/main/scala/net/psforever/objects/ce/TelepadLike.scala index 8bf33f935..e730cfef8 100644 --- a/src/main/scala/net/psforever/objects/ce/TelepadLike.scala +++ b/src/main/scala/net/psforever/objects/ce/TelepadLike.scala @@ -9,7 +9,7 @@ import net.psforever.objects.vehicles.Utility.InternalTelepad import net.psforever.objects.zones.Zone import net.psforever.packet.game.{GenericObjectActionMessage, ObjectCreateMessage, ObjectDeleteMessage} import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.types.PlanetSideGUID diff --git a/src/main/scala/net/psforever/objects/equipment/ArmorSiphonBehavior.scala b/src/main/scala/net/psforever/objects/equipment/ArmorSiphonBehavior.scala index 259d2ca34..73355c951 100644 --- a/src/main/scala/net/psforever/objects/equipment/ArmorSiphonBehavior.scala +++ b/src/main/scala/net/psforever/objects/equipment/ArmorSiphonBehavior.scala @@ -10,7 +10,7 @@ import net.psforever.objects.vital.RepairFromArmorSiphon import net.psforever.objects.vital.etc.{ArmorSiphonModifiers, ArmorSiphonReason} import net.psforever.objects.vital.interaction.DamageInteraction import net.psforever.packet.game.QuantityUpdateMessage -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types.PlanetSideGUID diff --git a/src/main/scala/net/psforever/objects/equipment/JammingUnit.scala b/src/main/scala/net/psforever/objects/equipment/JammingUnit.scala index 727955fb6..126a44efb 100644 --- a/src/main/scala/net/psforever/objects/equipment/JammingUnit.scala +++ b/src/main/scala/net/psforever/objects/equipment/JammingUnit.scala @@ -8,7 +8,7 @@ import net.psforever.objects.vehicles.MountedWeapons import net.psforever.objects.vital.interaction.DamageResult import net.psforever.objects.vital.projectile.ProjectileReason import net.psforever.objects.zones.{Zone, ZoneAware} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.types.Vector3 import net.psforever.services.vehicle.VehicleServiceMessage diff --git a/src/main/scala/net/psforever/objects/locker/LockerContainerControl.scala b/src/main/scala/net/psforever/objects/locker/LockerContainerControl.scala index fcab05d63..19a1e388f 100644 --- a/src/main/scala/net/psforever/objects/locker/LockerContainerControl.scala +++ b/src/main/scala/net/psforever/objects/locker/LockerContainerControl.scala @@ -7,7 +7,7 @@ import net.psforever.objects.serverobject.containable.{Containable, ContainableB import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.packet.game.{ObjectAttachMessage, ObjectCreateDetailedMessage, ObjectDetachMessage} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{ObjectDelete, SendResponse} +import net.psforever.services.base.message.{ObjectDelete, SendResponse} import net.psforever.types.{PlanetSideEmpire, Vector3} /** diff --git a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableAmenity.scala b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableAmenity.scala index ee7329f58..b0ba85a90 100644 --- a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableAmenity.scala +++ b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableAmenity.scala @@ -4,7 +4,7 @@ package net.psforever.objects.serverobject.damage import net.psforever.objects.serverobject.structures.Amenity import net.psforever.objects.vital.interaction.DamageResult import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute /** * The "control" `Actor` mixin for damage-handling code diff --git a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableEntity.scala b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableEntity.scala index e7aad04fb..b4dea9b97 100644 --- a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableEntity.scala +++ b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableEntity.scala @@ -9,7 +9,7 @@ import net.psforever.objects.zones.Zone import net.psforever.types.PlanetSideGUID import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute /** * The "control" `Actor` mixin for damage-handling code, diff --git a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableMountable.scala b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableMountable.scala index 73fe52c68..6ae266790 100644 --- a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableMountable.scala +++ b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableMountable.scala @@ -8,7 +8,7 @@ import net.psforever.objects.vital.interaction.{DamageInteraction, DamageResult} import net.psforever.packet.game.DamageWithPositionMessage import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.{HintsAtAttacker, SendResponse} +import net.psforever.services.base.message.{HintsAtAttacker, SendResponse} /** * Functions to assist other damage-dealing code for objects that contain users. diff --git a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableVehicle.scala b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableVehicle.scala index 5ca796630..b948c0f80 100644 --- a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableVehicle.scala +++ b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableVehicle.scala @@ -13,7 +13,7 @@ import net.psforever.objects.zones.Zone import net.psforever.objects.zones.exp.ToDatabase import net.psforever.packet.game.DamageWithPositionMessage import net.psforever.services.Service -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types.Vector3 diff --git a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableWeaponTurret.scala b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableWeaponTurret.scala index 595d8eb40..2b10df5ac 100644 --- a/src/main/scala/net/psforever/objects/serverobject/damage/DamageableWeaponTurret.scala +++ b/src/main/scala/net/psforever/objects/serverobject/damage/DamageableWeaponTurret.scala @@ -10,7 +10,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.game.DamageWithPositionMessage import net.psforever.types.Vector3 import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{ObjectDelete, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{ObjectDelete, PlanetsideAttribute, SendResponse} import net.psforever.services.base.support.SupportActor import net.psforever.services.vehicle.support.TurretUpgrader import net.psforever.services.vehicle.{TurretMessage, VehicleServiceMessage} diff --git a/src/main/scala/net/psforever/objects/serverobject/generator/GeneratorControl.scala b/src/main/scala/net/psforever/objects/serverobject/generator/GeneratorControl.scala index 6d6e469a7..42e561f2c 100644 --- a/src/main/scala/net/psforever/objects/serverobject/generator/GeneratorControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/generator/GeneratorControl.scala @@ -14,7 +14,7 @@ import net.psforever.objects.zones.Zone import net.psforever.packet.game.TriggerEffectMessage import net.psforever.types.{PlanetSideGeneratorState, Vector3} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import scala.concurrent.duration._ import scala.concurrent.ExecutionContext.Implicits.global diff --git a/src/main/scala/net/psforever/objects/serverobject/hackable/GenericHackables.scala b/src/main/scala/net/psforever/objects/serverobject/hackable/GenericHackables.scala index 07a3138ea..86c8f6774 100644 --- a/src/main/scala/net/psforever/objects/serverobject/hackable/GenericHackables.scala +++ b/src/main/scala/net/psforever/objects/serverobject/hackable/GenericHackables.scala @@ -12,7 +12,7 @@ import net.psforever.objects.zones.blockmap.BlockMapEntity import net.psforever.packet.game.{GenericObjectActionMessage, HackMessage, HackState, HackState1, HackState7, TriggeredSound} import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.support.HackClearActor import net.psforever.services.local.{HackClearMessage, HackEntityMessage, LocalAction, LocalServiceMessage} diff --git a/src/main/scala/net/psforever/objects/serverobject/pad/VehicleSpawnPad.scala b/src/main/scala/net/psforever/objects/serverobject/pad/VehicleSpawnPad.scala index a48d69cbd..340cb235d 100644 --- a/src/main/scala/net/psforever/objects/serverobject/pad/VehicleSpawnPad.scala +++ b/src/main/scala/net/psforever/objects/serverobject/pad/VehicleSpawnPad.scala @@ -5,7 +5,7 @@ import net.psforever.objects.serverobject.interior.Sidedness import net.psforever.objects.{Player, Vehicle} import net.psforever.objects.serverobject.structures.Amenity import net.psforever.objects.serverobject.terminals.Terminal -import net.psforever.services.base.SelfRespondingEvent +import net.psforever.services.base.message.SelfRespondingEvent import net.psforever.types.PlanetSideGUID /** diff --git a/src/main/scala/net/psforever/objects/serverobject/repair/RepairableAmenity.scala b/src/main/scala/net/psforever/objects/serverobject/repair/RepairableAmenity.scala index 5971778e3..0a09a5251 100644 --- a/src/main/scala/net/psforever/objects/serverobject/repair/RepairableAmenity.scala +++ b/src/main/scala/net/psforever/objects/serverobject/repair/RepairableAmenity.scala @@ -6,7 +6,7 @@ import net.psforever.objects.serverobject.structures.Amenity import net.psforever.objects.sourcing.{SourceEntry, SourceWithHealthEntry} import net.psforever.objects.vital.{DamagingActivity, RepairFromEquipment, SpawningActivity} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute /** * The "control" `Actor` mixin for repair-handling code diff --git a/src/main/scala/net/psforever/objects/serverobject/repair/RepairableEntity.scala b/src/main/scala/net/psforever/objects/serverobject/repair/RepairableEntity.scala index 0fe895f16..07b4fe238 100644 --- a/src/main/scala/net/psforever/objects/serverobject/repair/RepairableEntity.scala +++ b/src/main/scala/net/psforever/objects/serverobject/repair/RepairableEntity.scala @@ -9,7 +9,7 @@ import net.psforever.objects.{Player, Tool} import net.psforever.packet.game.{ChatMsg, InventoryStateMessage, RepairMessage} import net.psforever.types.{ChatMessageType, PlanetSideEmpire, Vector3} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} /** * The "control" `Actor` mixin for repair-handling code, diff --git a/src/main/scala/net/psforever/objects/serverobject/resourcesilo/ResourceSiloControl.scala b/src/main/scala/net/psforever/objects/serverobject/resourcesilo/ResourceSiloControl.scala index 6d6ce69e3..3427690d1 100644 --- a/src/main/scala/net/psforever/objects/serverobject/resourcesilo/ResourceSiloControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/resourcesilo/ResourceSiloControl.scala @@ -12,7 +12,7 @@ import net.psforever.objects.{GlobalDefinitions, Ntu, NtuContainer, NtuStorageBe import net.psforever.types.{ExperienceType, PlanetSideEmpire} import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.util.Config diff --git a/src/main/scala/net/psforever/objects/serverobject/shuttle/OrbitalShuttlePadControl.scala b/src/main/scala/net/psforever/objects/serverobject/shuttle/OrbitalShuttlePadControl.scala index c15e723c9..1814f3ec4 100644 --- a/src/main/scala/net/psforever/objects/serverobject/shuttle/OrbitalShuttlePadControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/shuttle/OrbitalShuttlePadControl.scala @@ -9,7 +9,7 @@ import net.psforever.objects.serverobject.doors.Door import net.psforever.objects.zones.Zone import net.psforever.packet.game.ChatMsg import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.base.support.SupportActor import net.psforever.services.local.{DoorMessage, LocalAction} import net.psforever.services.hart.{HartTimer, HartTimerActions} diff --git a/src/main/scala/net/psforever/objects/serverobject/structures/participation/FacilityHackParticipation.scala b/src/main/scala/net/psforever/objects/serverobject/structures/participation/FacilityHackParticipation.scala index 2680a70e1..0a6be53e7 100644 --- a/src/main/scala/net/psforever/objects/serverobject/structures/participation/FacilityHackParticipation.scala +++ b/src/main/scala/net/psforever/objects/serverobject/structures/participation/FacilityHackParticipation.scala @@ -4,7 +4,7 @@ package net.psforever.objects.serverobject.structures.participation import net.psforever.objects.Player import net.psforever.objects.avatar.scoring.Kill import net.psforever.objects.sourcing.UniquePlayer -import net.psforever.services.base.messages.GenericObjectAction +import net.psforever.services.base.message.GenericObjectAction import net.psforever.types.{PlanetSideEmpire, Vector3} import scala.collection.mutable diff --git a/src/main/scala/net/psforever/objects/serverobject/structures/participation/MajorFacilityHackParticipation.scala b/src/main/scala/net/psforever/objects/serverobject/structures/participation/MajorFacilityHackParticipation.scala index eea512207..73f1df132 100644 --- a/src/main/scala/net/psforever/objects/serverobject/structures/participation/MajorFacilityHackParticipation.scala +++ b/src/main/scala/net/psforever/objects/serverobject/structures/participation/MajorFacilityHackParticipation.scala @@ -15,7 +15,7 @@ import net.psforever.objects.avatar.scoring.Kill import net.psforever.objects.serverobject.hackable.Hackable import net.psforever.objects.zones.exp.ToDatabase import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalServiceMessage import scala.collection.mutable diff --git a/src/main/scala/net/psforever/objects/serverobject/terminals/ProximityTerminalControl.scala b/src/main/scala/net/psforever/objects/serverobject/terminals/ProximityTerminalControl.scala index 9c9188c27..2628d5d2f 100644 --- a/src/main/scala/net/psforever/objects/serverobject/terminals/ProximityTerminalControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/terminals/ProximityTerminalControl.scala @@ -6,7 +6,7 @@ import net.psforever.objects.serverobject.damage.Damageable import net.psforever.objects.sourcing.AmenitySource import net.psforever.objects.vital.interaction.DamageResult import net.psforever.packet.game.HackState1 -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.local.HackClearMessage import net.psforever.services.local.support.HackClearActor import org.log4s.Logger diff --git a/src/main/scala/net/psforever/objects/serverobject/terminals/implant/ImplantTerminalMechControl.scala b/src/main/scala/net/psforever/objects/serverobject/terminals/implant/ImplantTerminalMechControl.scala index efddb12cb..5417d1d8b 100644 --- a/src/main/scala/net/psforever/objects/serverobject/terminals/implant/ImplantTerminalMechControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/terminals/implant/ImplantTerminalMechControl.scala @@ -16,7 +16,7 @@ import net.psforever.objects.vital.interaction.DamageResult import net.psforever.objects.zones.Zone import net.psforever.objects.{GlobalDefinitions, Player, SimpleItem} import net.psforever.packet.game.HackState1 -import net.psforever.services.base.messages.SetEmpire +import net.psforever.services.base.message.SetEmpire import net.psforever.services.local.LocalServiceMessage import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID} diff --git a/src/main/scala/net/psforever/objects/serverobject/turret/FacilityTurretControl.scala b/src/main/scala/net/psforever/objects/serverobject/turret/FacilityTurretControl.scala index c60458646..f7541edf9 100644 --- a/src/main/scala/net/psforever/objects/serverobject/turret/FacilityTurretControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/turret/FacilityTurretControl.scala @@ -13,7 +13,7 @@ import net.psforever.objects.serverobject.turret.auto.AutomatedTurret.Target import net.psforever.objects.serverobject.turret.auto.{AffectedByAutomaticTurretFire, AutomatedTurret, AutomatedTurretBehavior} import net.psforever.objects.vital.interaction.DamageResult import net.psforever.packet.game.{ChangeFireModeMessage, HackState1} -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.support.TurretUpgrader import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.{BailType, PlanetSideEmpire, PlanetSideGUID} diff --git a/src/main/scala/net/psforever/objects/serverobject/turret/TurretControl.scala b/src/main/scala/net/psforever/objects/serverobject/turret/TurretControl.scala index 150b1513e..d1ec9dbe4 100644 --- a/src/main/scala/net/psforever/objects/serverobject/turret/TurretControl.scala +++ b/src/main/scala/net/psforever/objects/serverobject/turret/TurretControl.scala @@ -9,7 +9,7 @@ import net.psforever.objects.serverobject.damage.{Damageable, DamageableWeaponTu import net.psforever.objects.serverobject.repair.RepairableWeaponTurret import net.psforever.objects.vital.interaction.DamageResult import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute trait TurretControl extends Actor diff --git a/src/main/scala/net/psforever/objects/serverobject/turret/WeaponTurrets.scala b/src/main/scala/net/psforever/objects/serverobject/turret/WeaponTurrets.scala index 186122128..75c13a4d2 100644 --- a/src/main/scala/net/psforever/objects/serverobject/turret/WeaponTurrets.scala +++ b/src/main/scala/net/psforever/objects/serverobject/turret/WeaponTurrets.scala @@ -6,7 +6,7 @@ import net.psforever.objects.ce.Deployable import net.psforever.objects.{Player, Tool, TurretDeployable} import net.psforever.packet.game.{HackMessage, HackState, HackState1, HackState7, InventoryStateMessage} import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.{SendResponse, SetEmpire} +import net.psforever.services.base.message.{SendResponse, SetEmpire} import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.services.vehicle.support.TurretUpgrader import net.psforever.services.vehicle.{TurretMessage, VehicleAction, VehicleServiceMessage} diff --git a/src/main/scala/net/psforever/objects/serverobject/turret/auto/AutomatedTurretBehavior.scala b/src/main/scala/net/psforever/objects/serverobject/turret/auto/AutomatedTurretBehavior.scala index c8d073e4d..08e5fcabd 100644 --- a/src/main/scala/net/psforever/objects/serverobject/turret/auto/AutomatedTurretBehavior.scala +++ b/src/main/scala/net/psforever/objects/serverobject/turret/auto/AutomatedTurretBehavior.scala @@ -18,7 +18,7 @@ import net.psforever.objects.zones.interaction.InteractsWithZone import net.psforever.objects.{Default, PlanetSideGameObject, Player} import net.psforever.packet.game.{ChangeFireStateMessage_Start, ChangeFireStateMessage_Stop, ObjectDetectedMessage} import net.psforever.services.Service -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalServiceMessage import net.psforever.types.{PlanetSideGUID, Vector3} diff --git a/src/main/scala/net/psforever/objects/vehicles/AntTransferBehavior.scala b/src/main/scala/net/psforever/objects/vehicles/AntTransferBehavior.scala index 16d74d1b8..fb78e30aa 100644 --- a/src/main/scala/net/psforever/objects/vehicles/AntTransferBehavior.scala +++ b/src/main/scala/net/psforever/objects/vehicles/AntTransferBehavior.scala @@ -8,12 +8,12 @@ import net.psforever.objects.serverobject.deploy.Deployment import net.psforever.objects.serverobject.resourcesilo.ResourceSilo import net.psforever.objects.serverobject.structures.WarpGate import net.psforever.objects.serverobject.transfer.{TransferBehavior, TransferContainer} -import net.psforever.objects.{NtuContainer, _} +import net.psforever.objects._ import net.psforever.types.DriveState import net.psforever.services.vehicle.VehicleServiceMessage import akka.actor.typed.scaladsl.adapter._ import net.psforever.objects.serverobject.transfer.TransferContainer.TransferMaterial -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import scala.concurrent.ExecutionContext.Implicits.global import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/objects/vehicles/CarrierBehavior.scala b/src/main/scala/net/psforever/objects/vehicles/CarrierBehavior.scala index 1ae3c28ec..10da95dc9 100644 --- a/src/main/scala/net/psforever/objects/vehicles/CarrierBehavior.scala +++ b/src/main/scala/net/psforever/objects/vehicles/CarrierBehavior.scala @@ -11,7 +11,7 @@ import net.psforever.packet.game.{CargoMountPointStatusMessage, ObjectAttachMess import net.psforever.types.{BailType, CargoStatus, PlanetSideGUID, Vector3} import net.psforever.services.avatar.AvatarServiceMessage import net.psforever.services.Service -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/objects/vehicles/control/AmsControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/AmsControl.scala index d86ff43d5..5a24daec4 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/AmsControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/AmsControl.scala @@ -2,7 +2,7 @@ package net.psforever.objects.vehicles.control import net.psforever.objects._ -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import net.psforever.types.DriveState diff --git a/src/main/scala/net/psforever/objects/vehicles/control/ApcControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/ApcControl.scala index 034006cbe..3ec15a33c 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/ApcControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/ApcControl.scala @@ -11,7 +11,7 @@ import net.psforever.objects.vital.prop.DamageWithPosition import net.psforever.objects.zones.Zone import net.psforever.packet.game.{TriggerEffectMessage, TriggeredEffectLocation} import net.psforever.services.Service -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types.PlanetSideGUID diff --git a/src/main/scala/net/psforever/objects/vehicles/control/BfrControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/BfrControl.scala index 47782dc74..1edfdadbe 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/BfrControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/BfrControl.scala @@ -17,7 +17,7 @@ import net.psforever.objects.vital.interaction.DamageResult import net.psforever.objects.zones.Zone import net.psforever.packet.game._ import net.psforever.services.Service -import net.psforever.services.base.messages.{GenericObjectAction, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{GenericObjectAction, PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types._ diff --git a/src/main/scala/net/psforever/objects/vehicles/control/VehicleCapacitance.scala b/src/main/scala/net/psforever/objects/vehicles/control/VehicleCapacitance.scala index 27201cb64..d0303d72e 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/VehicleCapacitance.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/VehicleCapacitance.scala @@ -3,7 +3,7 @@ package net.psforever.objects.vehicles.control import akka.actor.{Actor, Cancellable} import net.psforever.objects._ -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.vehicle.VehicleServiceMessage import scala.concurrent.ExecutionContext.Implicits.global diff --git a/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala index b1aed1796..3d3a6b0f2 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala @@ -37,7 +37,7 @@ import net.psforever.packet.game._ import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.types._ import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.{ObjectDelete, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.message.{ObjectDelete, PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage} import scala.annotation.unused diff --git a/src/main/scala/net/psforever/objects/vehicles/interaction/WithEntranceInVehicle.scala b/src/main/scala/net/psforever/objects/vehicles/interaction/WithEntranceInVehicle.scala index f8f807423..874438a84 100644 --- a/src/main/scala/net/psforever/objects/vehicles/interaction/WithEntranceInVehicle.scala +++ b/src/main/scala/net/psforever/objects/vehicles/interaction/WithEntranceInVehicle.scala @@ -6,7 +6,7 @@ import net.psforever.objects.avatar.interaction.WithEntrance import net.psforever.objects.serverobject.doors.InteriorDoorPassage import net.psforever.objects.serverobject.environment.PieceOfEnvironment import net.psforever.objects.zones.interaction.InteractsWithZone -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse class WithEntranceInVehicle extends WithEntrance() { diff --git a/src/main/scala/net/psforever/objects/zones/MapInfo.scala b/src/main/scala/net/psforever/objects/zones/MapInfo.scala index 3635eecbd..a005a2fb8 100644 --- a/src/main/scala/net/psforever/objects/zones/MapInfo.scala +++ b/src/main/scala/net/psforever/objects/zones/MapInfo.scala @@ -4,9 +4,8 @@ import enumeratum.values.{StringEnum, StringEnumEntry} import net.psforever.objects.{PlanetSideGameObject, Player, Vehicle} import net.psforever.objects.serverobject.environment._ import net.psforever.packet.game.{ChatMsg, OffshoreVehicleMessage} -import net.psforever.services.Service -import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.avatar.AvatarServiceMessage +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types.{ChatMessageType, PlanetSideEmpire, PlanetSideGUID, Vector3} @@ -690,10 +689,7 @@ object MapEnvironment { val warning = s"Do not travel any further $trespass of the battlefield or you$punishment" p.Zone.AvatarEvents ! AvatarServiceMessage( p.Name, - AvatarAction.SendResponseTargeted( - Service.defaultPlayerGUID, - ChatMsg(ChatMessageType.CMT_QUIT, warning) - ) + SendResponse(ChatMsg(ChatMessageType.CMT_QUIT, warning)) ) case _ => ; } diff --git a/src/main/scala/net/psforever/objects/zones/Zone.scala b/src/main/scala/net/psforever/objects/zones/Zone.scala index c01c41f05..06a03638d 100644 --- a/src/main/scala/net/psforever/objects/zones/Zone.scala +++ b/src/main/scala/net/psforever/objects/zones/Zone.scala @@ -1616,7 +1616,7 @@ object Zone { zone.avatarEvents = context.actorOf(Props(classOf[AvatarService], zone), s"$id-avatar-events") zone.localEvents = context.actorOf(Props(classOf[LocalService], zone), s"$id-local-events") - zone.vehicleEvents = context.actorOf(Props(classOf[VehicleService], zone), s"$id-vehicle-events") + zone.vehicleEvents = context.actorOf(Props(classOf[VehicleService]), s"$id-vehicle-events") zone.timeOfDayOrigin = System.currentTimeMillis() diff --git a/src/main/scala/net/psforever/objects/zones/ZoneDeployableActor.scala b/src/main/scala/net/psforever/objects/zones/ZoneDeployableActor.scala index b58e29a77..b840e2e02 100644 --- a/src/main/scala/net/psforever/objects/zones/ZoneDeployableActor.scala +++ b/src/main/scala/net/psforever/objects/zones/ZoneDeployableActor.scala @@ -10,7 +10,7 @@ import net.psforever.objects.sourcing.ObjectSource import net.psforever.objects.vehicles.MountedWeapons import net.psforever.objects.vital.SpawningActivity import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalServiceMessage import net.psforever.types.ChatMessageType diff --git a/src/main/scala/net/psforever/objects/zones/ZoneProjectileActor.scala b/src/main/scala/net/psforever/objects/zones/ZoneProjectileActor.scala index cf0052e88..485915bd0 100644 --- a/src/main/scala/net/psforever/objects/zones/ZoneProjectileActor.scala +++ b/src/main/scala/net/psforever/objects/zones/ZoneProjectileActor.scala @@ -6,7 +6,7 @@ import net.psforever.objects.ballistics.Projectile import net.psforever.objects.guid.{GUIDTask, StraightforwardTask, TaskBundle, TaskWorkflow} import net.psforever.services.Service import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import net.psforever.types.PlanetSideGUID import scala.collection.mutable diff --git a/src/main/scala/net/psforever/objects/zones/ZoneVehicleActor.scala b/src/main/scala/net/psforever/objects/zones/ZoneVehicleActor.scala index 8f1afb302..834f47e19 100644 --- a/src/main/scala/net/psforever/objects/zones/ZoneVehicleActor.scala +++ b/src/main/scala/net/psforever/objects/zones/ZoneVehicleActor.scala @@ -9,7 +9,7 @@ import net.psforever.objects.serverobject.structures.WarpGate import net.psforever.objects.vital.InGameHistory import net.psforever.objects.{Default, GlobalDefinitions, Vehicle} import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.vehicle.VehicleServiceMessage import net.psforever.types.{ChatMessageType, DriveState, PlanetSideEmpire, Vector3} diff --git a/src/main/scala/net/psforever/services/CavernRotationService.scala b/src/main/scala/net/psforever/services/CavernRotationService.scala index ddd46e693..7e3d76581 100644 --- a/src/main/scala/net/psforever/services/CavernRotationService.scala +++ b/src/main/scala/net/psforever/services/CavernRotationService.scala @@ -12,7 +12,7 @@ import net.psforever.objects.Default import net.psforever.objects.serverobject.structures.{Building, WarpGate} import net.psforever.objects.zones.Zone import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.message.SendResponse import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage, GalaxyServiceResponse} import net.psforever.types.ChatMessageType import net.psforever.util.Config diff --git a/src/main/scala/net/psforever/services/account/AccountPersistenceService.scala b/src/main/scala/net/psforever/services/account/AccountPersistenceService.scala index 1fc186ab9..94274bfb0 100644 --- a/src/main/scala/net/psforever/services/account/AccountPersistenceService.scala +++ b/src/main/scala/net/psforever/services/account/AccountPersistenceService.scala @@ -16,7 +16,7 @@ import net.psforever.persistence import net.psforever.types.Vector3 import net.psforever.services.{Service, ServiceManager} import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage} -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage} import net.psforever.zones.Zones diff --git a/src/main/scala/net/psforever/services/avatar/AvatarAction.scala b/src/main/scala/net/psforever/services/avatar/AvatarAction.scala index 8be69ed6f..22e223e91 100644 --- a/src/main/scala/net/psforever/services/avatar/AvatarAction.scala +++ b/src/main/scala/net/psforever/services/avatar/AvatarAction.scala @@ -10,11 +10,9 @@ import net.psforever.objects.serverobject.environment.interaction.common.Watery. import net.psforever.objects.sourcing.{SourceEntry, UniquePlayer} import net.psforever.objects.vital.interaction.DamageResult import net.psforever.objects.zones.Zone -import net.psforever.packet.PlanetSideGamePacket import net.psforever.packet.game.{ImplantAction, ObjectCreateMessage} import net.psforever.packet.game.objectcreate.{ConstructorData, DroppedItemData, ObjectCreateMessageParent, PlacementData} -import net.psforever.services.base.messages.ObjectDelete -import net.psforever.services.base.{EventMessage, EventResponse, SelfRespondingEvent} +import net.psforever.services.base.message.{EventMessage, EventResponse, ObjectDelete, SelfRespondingEvent} import net.psforever.types.{ExoSuitType, ExperienceType, PlanetSideGUID, TransactionType, Vector3} import scala.concurrent.duration.FiniteDuration @@ -26,8 +24,6 @@ object AvatarAction { final case class ChangeFireMode(item_guid: PlanetSideGUID, mode: Int) extends SelfRespondingEvent - final case class ConcealPlayer(player_guid: PlanetSideGUID) extends SelfRespondingEvent - final case class EnvironmentalDamage(player_guid: PlanetSideGUID, source_guid: PlanetSideGUID, amount: Int) extends SelfRespondingEvent final case class DeactivateImplantSlot(player_guid: PlanetSideGUID, slot: Int) extends SelfRespondingEvent @@ -153,8 +149,6 @@ object AvatarAction { final case class StowEquipment(target_guid: PlanetSideGUID, slot: Int, item: Equipment) extends SelfRespondingEvent - final case class SendResponseTargeted(target_guid: PlanetSideGUID, msg: PlanetSideGamePacket) extends SelfRespondingEvent - final case class TerminalOrderResult(terminal_guid: PlanetSideGUID, action: TransactionType.Value, result: Boolean) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/avatar/AvatarService.scala b/src/main/scala/net/psforever/services/avatar/AvatarService.scala index 5056236cb..df04c6196 100644 --- a/src/main/scala/net/psforever/services/avatar/AvatarService.scala +++ b/src/main/scala/net/psforever/services/avatar/AvatarService.scala @@ -2,9 +2,8 @@ package net.psforever.services.avatar import akka.actor.{ActorContext, ActorRef, Props} -import net.psforever.objects.zones.Zone import net.psforever.services.avatar.support.{CorpseRemovalActor, DroppedItemRemover} -import net.psforever.services.base.{EventServiceSupport, GenericEventServiceWithCacheAndSupport, GenericMessageEnvelope} +import net.psforever.services.base.{EventServiceSupport, EventSystemStamp, GenericEventServiceWithCacheAndSupport} case object CorpseRemovalSupport extends EventServiceSupport { @@ -22,12 +21,10 @@ case object LitterRemovalSupport } } -class AvatarService(zone: Zone) - extends GenericEventServiceWithCacheAndSupport[AvatarServiceResponse]( - busName = "Avatar", +case object AvatarStamp extends EventSystemStamp + +class AvatarService + extends GenericEventServiceWithCacheAndSupport( + stamp = AvatarStamp, eventSupportServices = List(CorpseRemovalSupport, LitterRemovalSupport) - ) { - protected def composeResponseEnvelope(msg: GenericMessageEnvelope): AvatarServiceResponse = { - AvatarServiceResponse(formatChannelOnBusName(msg.channel), msg.filter, msg.msg.response()) - } -} + ) diff --git a/src/main/scala/net/psforever/services/avatar/AvatarServiceMessage.scala b/src/main/scala/net/psforever/services/avatar/AvatarServiceMessage.scala index 951fd07c8..a8e7d530c 100644 --- a/src/main/scala/net/psforever/services/avatar/AvatarServiceMessage.scala +++ b/src/main/scala/net/psforever/services/avatar/AvatarServiceMessage.scala @@ -4,7 +4,9 @@ package net.psforever.services.avatar import net.psforever.objects.zones.Zone import net.psforever.services.{RemoverActor, Service} import net.psforever.services.avatar.AvatarAction.{DropItem, PickupItem, Release} -import net.psforever.services.base.{EventMessage, GenericMessageToSupportEnvelope, GenericMessageToSupportEnvelopeOnly, MessageEnvelope} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.EventMessage +import net.psforever.services.base.{GenericSupportEnvelope, GenericSupportEnvelopeOnly} import net.psforever.types.PlanetSideGUID object AvatarServiceMessage { @@ -16,11 +18,11 @@ object AvatarServiceMessage { } final case class ReleaseMessage( - channel: String, + originalChannel: String, filter: PlanetSideGUID, msg: Release ) - extends GenericMessageToSupportEnvelope { + extends GenericSupportEnvelope { def supportLabel: String = "undertaker" def supportMessage: Any = { val Release(player, zone, time) = msg @@ -34,12 +36,12 @@ object ReleaseMessage { } final case class PickupItemMessage( - channel: String, + originalChannel: String, filter: PlanetSideGUID, msg: PickupItem, zone: Zone ) - extends GenericMessageToSupportEnvelope { + extends GenericSupportEnvelope { def supportLabel: String = "janitor" def supportMessage: Any = { val PickupItem(item, _) = msg @@ -53,12 +55,12 @@ object PickupItemMessage { } final case class DropItemMessage( - channel: String, + originalChannel: String, filter: PlanetSideGUID, msg: DropItem, zone: Zone ) - extends GenericMessageToSupportEnvelope { + extends GenericSupportEnvelope { def supportLabel: String = "janitor" def supportMessage: Any = { val DropItem(item) = msg @@ -72,11 +74,11 @@ object DropItemMessage { } final case class CorpseEnvelope(supportMessage: Any) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "undertaker" } final case class GroundEnvelope(supportMessage: Any) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "janitor" } diff --git a/src/main/scala/net/psforever/services/avatar/AvatarServiceResponse.scala b/src/main/scala/net/psforever/services/avatar/AvatarServiceResponse.scala index 3f523cb69..a40827b99 100644 --- a/src/main/scala/net/psforever/services/avatar/AvatarServiceResponse.scala +++ b/src/main/scala/net/psforever/services/avatar/AvatarServiceResponse.scala @@ -1,11 +1,15 @@ // Copyright (c) 2017 PSForever package net.psforever.services.avatar +import net.psforever.services.base.message.EventResponse import net.psforever.types.PlanetSideGUID -import net.psforever.services.base.{EventResponse, GenericResponseEnvelope} +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.envelope.GenericResponseEnvelope final case class AvatarServiceResponse( channel: String, filter: PlanetSideGUID, reply: EventResponse - ) extends GenericResponseEnvelope + ) extends GenericResponseEnvelope { + def stamp: EventSystemStamp = AvatarStamp +} diff --git a/src/main/scala/net/psforever/services/avatar/support/CorpseRemovalActor.scala b/src/main/scala/net/psforever/services/avatar/support/CorpseRemovalActor.scala index 822afa1d9..e4d53dcb1 100644 --- a/src/main/scala/net/psforever/services/avatar/support/CorpseRemovalActor.scala +++ b/src/main/scala/net/psforever/services/avatar/support/CorpseRemovalActor.scala @@ -6,7 +6,7 @@ import net.psforever.objects.Player import net.psforever.types.ExoSuitType import net.psforever.services.RemoverActor import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/services/avatar/support/DroppedItemRemover.scala b/src/main/scala/net/psforever/services/avatar/support/DroppedItemRemover.scala index 8e4245e56..dbdf5d252 100644 --- a/src/main/scala/net/psforever/services/avatar/support/DroppedItemRemover.scala +++ b/src/main/scala/net/psforever/services/avatar/support/DroppedItemRemover.scala @@ -5,7 +5,7 @@ import net.psforever.objects.equipment.Equipment import net.psforever.objects.guid.{GUIDTask, TaskBundle} import net.psforever.services.RemoverActor import net.psforever.services.avatar.AvatarServiceMessage -import net.psforever.services.base.messages.ObjectDelete +import net.psforever.services.base.message.ObjectDelete import scala.concurrent.duration._ diff --git a/src/main/scala/net/psforever/services/base/GenericEventService.scala b/src/main/scala/net/psforever/services/base/GenericEventService.scala index 9274b8ad9..d294539ed 100644 --- a/src/main/scala/net/psforever/services/base/GenericEventService.scala +++ b/src/main/scala/net/psforever/services/base/GenericEventService.scala @@ -3,32 +3,23 @@ package net.psforever.services.base import akka.actor.Actor import net.psforever.services.Service -import net.psforever.services.base.bus.{AllGenericBusMsg, GenericEventBus, GenericEventBusResponse} +import net.psforever.services.base.bus.GenericEventBus +import net.psforever.services.base.envelope.{GenericMessageEnvelope, GenericResponseEnvelope} import org.log4s.Logger import scala.annotation.unused -trait GenericResponseEnvelope - extends GenericEventBusResponse { - def reply: EventResponse -} +trait EventSystemStamp -trait GenericMessageEnvelope - extends AllGenericBusMsg { - def msg: EventMessage -} - -abstract class GenericEventService[OUT <: GenericResponseEnvelope](busName: String) +abstract class GenericEventService(stamp: EventSystemStamp) extends Actor { protected lazy val log: Logger = org.log4s.getLogger(getClass.getSimpleName) - protected val eventBus: GenericEventBus[OUT] = new GenericEventBus[OUT] - - def BusName: String = busName + protected val eventBus: GenericEventBus = new GenericEventBus private def commonJoinBehavior: Receive = { case Service.Join(channel) => - val path = formatChannelOnBusName(channel) + val path = formatChannel(channel) val who = sender() eventBus.subscribe(who, path) } @@ -38,7 +29,7 @@ abstract class GenericEventService[OUT <: GenericResponseEnvelope](busName: Stri eventBus.unsubscribe(sender()) case Service.Leave(Some(channel)) => - val path = formatChannelOnBusName(channel) + val path = formatChannel(channel) eventBus.unsubscribe(sender(), path) case Service.LeaveAll() => @@ -62,7 +53,9 @@ abstract class GenericEventService[OUT <: GenericResponseEnvelope](busName: Stri eventBus.publish(composeResponseEnvelope(msg)) } - protected def composeResponseEnvelope(@unused msg: GenericMessageEnvelope): OUT + protected def composeResponseEnvelope(@unused msg: GenericMessageEnvelope): GenericResponseEnvelope = { + msg.response(stamp, formatChannel) + } - protected def formatChannelOnBusName(channel: String): String = s"/$channel/$busName" + protected def formatChannel(channel: String): String = s"/$channel" } diff --git a/src/main/scala/net/psforever/services/base/GenericEventServiceWithCacheAndSupport.scala b/src/main/scala/net/psforever/services/base/GenericEventServiceWithCacheAndSupport.scala index 3c563ab39..abdb1b9f4 100644 --- a/src/main/scala/net/psforever/services/base/GenericEventServiceWithCacheAndSupport.scala +++ b/src/main/scala/net/psforever/services/base/GenericEventServiceWithCacheAndSupport.scala @@ -2,24 +2,31 @@ package net.psforever.services.base import net.psforever.services.Service +import net.psforever.services.base.envelope.{GenericMessageEnvelope, MessageEnvelope, MessageTransformationBehavior} +import net.psforever.services.base.message.EventMessage import net.psforever.types.PlanetSideGUID import scala.collection.concurrent.{Map => CMap} import scala.jdk.CollectionConverters._ import java.util.concurrent.ConcurrentHashMap -import scala.concurrent.ExecutionContext.Implicits.global /* Adapted from the rating limiting code in https://github.com/Pinapse/giant with permission */ trait CachedGenericEventMessageEnvelope - extends GenericMessageEnvelope { + extends MessageTransformationBehavior { def guid: PlanetSideGUID } -final case class CachedMessage(guid: PlanetSideGUID, channel: String, filter: PlanetSideGUID, msg: EventMessage) - extends CachedGenericEventMessageEnvelope +final case class CachedMessage( + guid: PlanetSideGUID, + originalChannel: String, + override val filter: PlanetSideGUID, + override val msg: EventMessage + ) extends CachedGenericEventMessageEnvelope { + assert(guid != Service.defaultPlayerGUID, "can not cache message under default GUID") +} object CachedMessage { def apply(channel: String, filter: PlanetSideGUID, msg: EventMessage): GenericMessageEnvelope = { @@ -31,31 +38,13 @@ object CachedMessage { } } -object CachedGenericEventMessageEnvelope { - def apply(channel: String, filter: PlanetSideGUID, msg: EventMessage): GenericMessageEnvelope = { - if (filter == Service.defaultPlayerGUID) { - MessageEnvelope(channel, filter, msg) - } else { - CachedMessage(filter, channel, filter, msg) - } - } - - def apply(guid: PlanetSideGUID, channel: String, filter: PlanetSideGUID, msg: EventMessage): GenericMessageEnvelope = { - if (guid == Service.defaultPlayerGUID) { - MessageEnvelope(channel, filter, msg) - } else { - CachedMessage(guid, channel, filter, msg) - } - } -} - private case object FlushCachedMessages -abstract class GenericEventServiceWithCacheAndSupport[OUT <: GenericResponseEnvelope] +abstract class GenericEventServiceWithCacheAndSupport ( - busName: String, + stamp: EventSystemStamp, eventSupportServices: List[EventServiceSupport] -) extends GenericEventServiceWithSupport[OUT](busName, eventSupportServices) { +) extends GenericEventServiceWithSupport(stamp, eventSupportServices) { private val flushCacheWait: Long = 50 //milliseconds private var hasCachedMessages: Boolean = false private var nextTimeToFlushCache: Long = 0L diff --git a/src/main/scala/net/psforever/services/base/GenericEventServiceWithSupport.scala b/src/main/scala/net/psforever/services/base/GenericEventServiceWithSupport.scala index 508086d4b..0138898f5 100644 --- a/src/main/scala/net/psforever/services/base/GenericEventServiceWithSupport.scala +++ b/src/main/scala/net/psforever/services/base/GenericEventServiceWithSupport.scala @@ -3,40 +3,58 @@ package net.psforever.services.base import akka.actor.{ActorContext, ActorRef} import net.psforever.services.Service +import net.psforever.services.base.envelope.{GenericMessageEnvelope, GenericResponseEnvelope, MessageTransformationBehavior, NoReply, Undelivered} +import net.psforever.services.base.message.{EventMessage, EventResponse, SelfRespondingEvent} import net.psforever.types.PlanetSideGUID import scala.annotation.unused +case object NoMessage extends SelfRespondingEvent + +case object NoResponseEnvelope extends GenericResponseEnvelope { + def reply: EventResponse = NoReply + def stamp: EventSystemStamp = Undelivered + def channel: String = "" + def filter: PlanetSideGUID = Service.defaultPlayerGUID +} + trait EventServiceSupport { def label: String def constructor(@unused context: ActorContext): ActorRef } -trait GenericMessageToSupportEnvelope - extends GenericMessageEnvelope { +sealed trait GenericMessageToSupport { def supportLabel: String def supportMessage: Any } -trait GenericMessageToSupportEnvelopeOnly - extends GenericMessageToSupportEnvelope { +trait GenericSupportEnvelope + extends GenericMessageToSupport + with MessageTransformationBehavior + +trait GenericSupportEnvelopeOnly + extends GenericMessageToSupport + with GenericMessageEnvelope { + def originalChannel: String = "" def channel: String = "" def filter: PlanetSideGUID = Service.defaultPlayerGUID - def msg: EventMessage = null + def msg: EventMessage = NoMessage + + def response(@unused stamp: EventSystemStamp, @unused sendToChannel: String => String): GenericResponseEnvelope = NoResponseEnvelope } -abstract class GenericEventServiceWithSupport[OUT <: GenericResponseEnvelope] +abstract class GenericEventServiceWithSupport ( - busName: String, + stamp: EventSystemStamp, eventSupportServices: List[EventServiceSupport] -) extends GenericEventService[OUT](busName) { +) extends GenericEventService(stamp) { private val supportServices: Map[String, ActorRef] = eventSupportServices .map { supportService => (supportService.label, supportService.constructor(context)) } .toMap[String, ActorRef] - private def forwardToSupport(msg: GenericMessageToSupportEnvelope): Unit = { + private def forwardToSupport(msg: GenericMessageToSupport): Unit = { supportServices .get(msg.supportLabel) .map { support => @@ -50,12 +68,12 @@ abstract class GenericEventServiceWithSupport[OUT <: GenericResponseEnvelope] override protected def handleMessage(event: GenericMessageEnvelope): Unit = { event match { - case msg: GenericMessageToSupportEnvelopeOnly => + case msg: GenericSupportEnvelopeOnly => forwardToSupport(msg) - case msg: GenericMessageToSupportEnvelope => + case msg: GenericSupportEnvelope => forwardToSupport(msg) eventBus.publish(composeResponseEnvelope(event)) - case _ => + case event => eventBus.publish(composeResponseEnvelope(event)) } } diff --git a/src/main/scala/net/psforever/services/base/MessageEnvelope.scala b/src/main/scala/net/psforever/services/base/MessageEnvelope.scala deleted file mode 100644 index faad6d0d1..000000000 --- a/src/main/scala/net/psforever/services/base/MessageEnvelope.scala +++ /dev/null @@ -1,7 +0,0 @@ -// Copyright (c) 2026 PSForever -package net.psforever.services.base - -import net.psforever.types.PlanetSideGUID - -case class MessageEnvelope(channel: String, filter: PlanetSideGUID, msg: EventMessage) - extends GenericMessageEnvelope diff --git a/src/main/scala/net/psforever/services/base/bus/GenericEventBus.scala b/src/main/scala/net/psforever/services/base/bus/GenericEventBus.scala index a025726d1..26274d04e 100644 --- a/src/main/scala/net/psforever/services/base/bus/GenericEventBus.scala +++ b/src/main/scala/net/psforever/services/base/bus/GenericEventBus.scala @@ -3,19 +3,11 @@ package net.psforever.services.base.bus import akka.event.{ActorEventBus, SubchannelClassification} import akka.util.Subclassification -import net.psforever.types.PlanetSideGUID +import net.psforever.services.base.envelope.GenericResponseEnvelope -trait AllGenericBusMsg { - def channel: String - def filter: PlanetSideGUID -} - -trait GenericEventBusResponse - extends AllGenericBusMsg - -class GenericEventBus[A <: GenericEventBusResponse] +class GenericEventBus extends ActorEventBus with SubchannelClassification { - type Event = A + type Event = GenericResponseEnvelope type Classifier = String protected def classify(event: Event): Classifier = event.channel diff --git a/src/main/scala/net/psforever/services/base/bus/GenericGuidEventBus.scala b/src/main/scala/net/psforever/services/base/bus/GenericGuidEventBus.scala deleted file mode 100644 index d583194e2..000000000 --- a/src/main/scala/net/psforever/services/base/bus/GenericGuidEventBus.scala +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright (c) 2026 PSForever -package net.psforever.services.base.bus - -import net.psforever.types.PlanetSideGUID - -import java.util.concurrent.ConcurrentHashMap -import scala.annotation.unused -import scala.collection.concurrent.{Map => CMap} -import scala.jdk.CollectionConverters._ - -/* -Adapted from the rating limiting code in https://github.com/Pinapse/giant with permission - */ - -trait GenericGuidEventBusResponse - extends GenericEventBusResponse { - def guid: PlanetSideGUID - def inner: Any -} - -class RateLimitScheduler[A <: GenericGuidEventBusResponse](eventBus: GenericEventBus[A], interval: Long) extends Thread { - private var hasWork: Boolean = false - private var working: Boolean = false - private var timeOfLastFlush: Long = 0L - private val buffer: CMap[String, CMap[String, CMap[PlanetSideGUID, A]]] = - new ConcurrentHashMap[String, CMap[String, CMap[PlanetSideGUID, A]]]().asScala - - override def run(): Unit = { - while (working) { - //originally, there was a Thread.sleep(interval) here, replaced by timeOfLastFlush logic - flushBuffer() - } - } - - def push(event: A): Unit = { - val eventClassName = event.inner.getClass.getName - val cache = - buffer - .getOrElseUpdate(event.channel, new ConcurrentHashMap[String, CMap[PlanetSideGUID, A]]().asScala) - .getOrElseUpdate(eventClassName, new ConcurrentHashMap[PlanetSideGUID, A]().asScala) - cache.updateWith(event.guid) { _ => Some(event) } - hasWork = true - } - - def flushBuffer(): Unit = { - val curr = System.currentTimeMillis() - if (hasWork && timeOfLastFlush + interval <= curr) { - flushBufferNow(curr) - } - } - - def flushBufferNow(curr: Long = System.currentTimeMillis()): Unit = { - buffer.foreachEntry { (_, map) => - map.foreachEntry { (_, map) => - map.foreachEntry { (_, event) => - eventBus.truePublish(event) - } - map.clear() - } - } - hasWork = false - timeOfLastFlush = curr - } - - override def start(): Unit = { - working = true - timeOfLastFlush = System.currentTimeMillis() - super.start() - } - - def isRunning: Boolean = { - working - } - - def stopRunning(): Unit = { - working = false - flushBufferNow() - } -} - -abstract class GenericGuidEventBus[A <: GenericGuidEventBusResponse](rateLimit: Double) - extends GenericEventBus[A] { - private val rateLimitedDispatch = new RateLimitScheduler[A]( - eventBus = this, - scala.math.floor(1000.0 / rateLimit).toInt - ) - rateLimitedDispatch.start() - - override def publish(event: Event): Unit = { - if (rateLimit > 0 && shouldRateLimit(event) && rateLimitedDispatch.isRunning) { - rateLimitedDispatch.push(event) - } else { - truePublish(event) - } - } - - def shouldRateLimit(@unused event: Event): Boolean - -// override protected def publish(event: Event, subscriber: Subscriber): Unit = { -// val trimmedEventClassName = -// event.inner.getClass().getName().stripPrefix(event.inner.getClass.getPackageName() + ".").stripSuffix("$") -// GenericGuidEventBus.genericGuidEventBusPublish.labels(event.channel, trimmedEventClassName).inc() -// subscriber ! event -// } -} diff --git a/src/main/scala/net/psforever/services/base/envelope/AllEnvelopes.scala b/src/main/scala/net/psforever/services/base/envelope/AllEnvelopes.scala new file mode 100644 index 000000000..7ccf37fc2 --- /dev/null +++ b/src/main/scala/net/psforever/services/base/envelope/AllEnvelopes.scala @@ -0,0 +1,9 @@ +// Copyright (c) 2026 PSForever +package net.psforever.services.base.envelope + +import net.psforever.types.PlanetSideGUID + +trait AllEnvelopes { + def channel: String + def filter: PlanetSideGUID +} diff --git a/src/main/scala/net/psforever/services/base/envelope/GenericMessageEnvelope.scala b/src/main/scala/net/psforever/services/base/envelope/GenericMessageEnvelope.scala new file mode 100644 index 000000000..8ca2f9995 --- /dev/null +++ b/src/main/scala/net/psforever/services/base/envelope/GenericMessageEnvelope.scala @@ -0,0 +1,19 @@ +// Copyright (c) 2026 PSForever +package net.psforever.services.base.envelope + +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.message.EventMessage +import net.psforever.types.PlanetSideGUID + +trait GenericMessageEnvelope + extends AllEnvelopes { + def originalChannel: String + def msg: EventMessage + def response(stamp: EventSystemStamp, sendToChannel: String => String): GenericResponseEnvelope +} + +object GenericMessageEnvelope { + def unapply(obj: GenericMessageEnvelope): Option[(String, PlanetSideGUID, EventMessage)] = { + Some((obj.originalChannel, obj.filter, obj.msg)) + } +} diff --git a/src/main/scala/net/psforever/services/base/envelope/GenericResponseEnvelope.scala b/src/main/scala/net/psforever/services/base/envelope/GenericResponseEnvelope.scala new file mode 100644 index 000000000..e0abe44c1 --- /dev/null +++ b/src/main/scala/net/psforever/services/base/envelope/GenericResponseEnvelope.scala @@ -0,0 +1,22 @@ +// Copyright (c) 2026 PSForever +package net.psforever.services.base.envelope + +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.message.{EventMessage, EventResponse} +import net.psforever.types.PlanetSideGUID + +trait GenericResponseEnvelope + extends AllEnvelopes { + def reply: EventResponse + def stamp: EventSystemStamp +} + +object GenericResponseEnvelope { + def apply(stamp: EventSystemStamp, channel: String, filter: PlanetSideGUID, msg: EventMessage): GenericResponseEnvelope ={ + val envelope = MessageEnvelope(channel, filter, msg) + envelope.response(stamp, s => s) + } + + def unapply(obj: GenericResponseEnvelope): Option[(String, PlanetSideGUID, EventResponse)] = + Some((obj.channel, obj.filter, obj.reply)) +} diff --git a/src/main/scala/net/psforever/services/base/envelope/MessageEnvelope.scala b/src/main/scala/net/psforever/services/base/envelope/MessageEnvelope.scala new file mode 100644 index 000000000..99c6aa7ca --- /dev/null +++ b/src/main/scala/net/psforever/services/base/envelope/MessageEnvelope.scala @@ -0,0 +1,37 @@ +// Copyright (c) 2026 PSForever +package net.psforever.services.base.envelope + +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.message.{EventMessage, EventResponse} +import net.psforever.types.PlanetSideGUID + +case object NoReply extends EventResponse + +case object Undelivered extends EventSystemStamp + +trait MessageTransformationBehavior + extends GenericMessageEnvelope + with GenericResponseEnvelope { + private var outputStamp: EventSystemStamp = Undelivered + private var outputChannel: String = originalChannel + private var outputReply: EventResponse = NoReply + + // satisfies GenericMessageEnvelope2 (and GenericResponseEnvelope2) + def channel: String = outputChannel + + // satisfies GenericMessageEnvelope2 + def response(stamp: EventSystemStamp, sendToChannel: String => String): GenericResponseEnvelope = { + outputStamp = stamp + outputChannel = sendToChannel(originalChannel) + outputReply = msg.response() + this + } + + // satisfies GenericResponseEnvelope2 + def stamp: EventSystemStamp = outputStamp + + def reply: EventResponse = outputReply +} + +case class MessageEnvelope(originalChannel: String, filter: PlanetSideGUID, msg: EventMessage) + extends MessageTransformationBehavior \ No newline at end of file diff --git a/src/main/scala/net/psforever/services/base/messages/ChangeAmmo.scala b/src/main/scala/net/psforever/services/base/message/ChangeAmmo.scala similarity index 84% rename from src/main/scala/net/psforever/services/base/messages/ChangeAmmo.scala rename to src/main/scala/net/psforever/services/base/message/ChangeAmmo.scala index 2b51767dd..101a37cc7 100644 --- a/src/main/scala/net/psforever/services/base/messages/ChangeAmmo.scala +++ b/src/main/scala/net/psforever/services/base/message/ChangeAmmo.scala @@ -1,8 +1,7 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message import net.psforever.packet.game.objectcreate.ConstructorData -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class ChangeAmmo( diff --git a/src/main/scala/net/psforever/services/base/messages/ChangeFireState_Start.scala b/src/main/scala/net/psforever/services/base/message/ChangeFireState_Start.scala similarity index 63% rename from src/main/scala/net/psforever/services/base/messages/ChangeFireState_Start.scala rename to src/main/scala/net/psforever/services/base/message/ChangeFireState_Start.scala index b73e740b8..59d1bb142 100644 --- a/src/main/scala/net/psforever/services/base/messages/ChangeFireState_Start.scala +++ b/src/main/scala/net/psforever/services/base/message/ChangeFireState_Start.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class ChangeFireState_Start(weapon_guid: PlanetSideGUID) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/ChangeFireState_Stop.scala b/src/main/scala/net/psforever/services/base/message/ChangeFireState_Stop.scala similarity index 63% rename from src/main/scala/net/psforever/services/base/messages/ChangeFireState_Stop.scala rename to src/main/scala/net/psforever/services/base/message/ChangeFireState_Stop.scala index fa6f1a7d6..5aeb30c11 100644 --- a/src/main/scala/net/psforever/services/base/messages/ChangeFireState_Stop.scala +++ b/src/main/scala/net/psforever/services/base/message/ChangeFireState_Stop.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class ChangeFireState_Stop(weapon_guid: PlanetSideGUID) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/message/ConcealPlayer.scala b/src/main/scala/net/psforever/services/base/message/ConcealPlayer.scala new file mode 100644 index 000000000..1a642c72c --- /dev/null +++ b/src/main/scala/net/psforever/services/base/message/ConcealPlayer.scala @@ -0,0 +1,6 @@ +// Copyright (c) 2026 PSForever +package net.psforever.services.base.message + +import net.psforever.types.PlanetSideGUID + +final case class ConcealPlayer(player_guid: PlanetSideGUID) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/EventExchange.scala b/src/main/scala/net/psforever/services/base/message/EventExchange.scala similarity index 56% rename from src/main/scala/net/psforever/services/base/EventExchange.scala rename to src/main/scala/net/psforever/services/base/message/EventExchange.scala index eea7ac7b1..3331927cb 100644 --- a/src/main/scala/net/psforever/services/base/EventExchange.scala +++ b/src/main/scala/net/psforever/services/base/message/EventExchange.scala @@ -1,11 +1,9 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base +package net.psforever.services.base.message -trait EventExchange +trait EventResponse -trait EventResponse extends EventExchange - -trait EventMessage extends EventExchange { +trait EventMessage { def response(): EventResponse } diff --git a/src/main/scala/net/psforever/services/base/messages/GenericObjectAction.scala b/src/main/scala/net/psforever/services/base/message/GenericObjectAction.scala similarity index 65% rename from src/main/scala/net/psforever/services/base/messages/GenericObjectAction.scala rename to src/main/scala/net/psforever/services/base/message/GenericObjectAction.scala index 2bfe69b26..a62a467f6 100644 --- a/src/main/scala/net/psforever/services/base/messages/GenericObjectAction.scala +++ b/src/main/scala/net/psforever/services/base/message/GenericObjectAction.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class GenericObjectAction(object_guid: PlanetSideGUID, action_code: Int) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/HintsAtAttacker.scala b/src/main/scala/net/psforever/services/base/message/HintsAtAttacker.scala similarity index 65% rename from src/main/scala/net/psforever/services/base/messages/HintsAtAttacker.scala rename to src/main/scala/net/psforever/services/base/message/HintsAtAttacker.scala index 8768fcb73..dbb835448 100644 --- a/src/main/scala/net/psforever/services/base/messages/HintsAtAttacker.scala +++ b/src/main/scala/net/psforever/services/base/message/HintsAtAttacker.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID //analogue for HitHint diff --git a/src/main/scala/net/psforever/services/base/messages/ObjectDelete.scala b/src/main/scala/net/psforever/services/base/message/ObjectDelete.scala similarity index 63% rename from src/main/scala/net/psforever/services/base/messages/ObjectDelete.scala rename to src/main/scala/net/psforever/services/base/message/ObjectDelete.scala index d8f3343bc..43fb1949e 100644 --- a/src/main/scala/net/psforever/services/base/messages/ObjectDelete.scala +++ b/src/main/scala/net/psforever/services/base/message/ObjectDelete.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class ObjectDelete(obj_guid: PlanetSideGUID, unk: Int = 0) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/PlanetsideAttribute.scala b/src/main/scala/net/psforever/services/base/message/PlanetsideAttribute.scala similarity index 78% rename from src/main/scala/net/psforever/services/base/messages/PlanetsideAttribute.scala rename to src/main/scala/net/psforever/services/base/message/PlanetsideAttribute.scala index 0df0cfb3b..6bf3af0b4 100644 --- a/src/main/scala/net/psforever/services/base/messages/PlanetsideAttribute.scala +++ b/src/main/scala/net/psforever/services/base/message/PlanetsideAttribute.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class PlanetsideAttribute( diff --git a/src/main/scala/net/psforever/services/base/messages/ReloadTool.scala b/src/main/scala/net/psforever/services/base/message/ReloadTool.scala similarity index 61% rename from src/main/scala/net/psforever/services/base/messages/ReloadTool.scala rename to src/main/scala/net/psforever/services/base/message/ReloadTool.scala index 34e118391..e4b8aee48 100644 --- a/src/main/scala/net/psforever/services/base/messages/ReloadTool.scala +++ b/src/main/scala/net/psforever/services/base/message/ReloadTool.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class ReloadTool(weapon_guid: PlanetSideGUID) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/SendResponse.scala b/src/main/scala/net/psforever/services/base/message/SendResponse.scala similarity index 73% rename from src/main/scala/net/psforever/services/base/messages/SendResponse.scala rename to src/main/scala/net/psforever/services/base/message/SendResponse.scala index 6de55c9d6..eca4f292a 100644 --- a/src/main/scala/net/psforever/services/base/messages/SendResponse.scala +++ b/src/main/scala/net/psforever/services/base/message/SendResponse.scala @@ -1,8 +1,7 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message import net.psforever.packet.PlanetSideGamePacket -import net.psforever.services.base.SelfRespondingEvent final case class SendResponse(pkts: Seq[PlanetSideGamePacket]) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/SetEmpire.scala b/src/main/scala/net/psforever/services/base/message/SetEmpire.scala similarity index 68% rename from src/main/scala/net/psforever/services/base/messages/SetEmpire.scala rename to src/main/scala/net/psforever/services/base/message/SetEmpire.scala index dc52a15e4..7e2315372 100644 --- a/src/main/scala/net/psforever/services/base/messages/SetEmpire.scala +++ b/src/main/scala/net/psforever/services/base/message/SetEmpire.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID} final case class SetEmpire(object_guid: PlanetSideGUID, faction: PlanetSideEmpire.Value) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/base/messages/WeaponDryFire.scala b/src/main/scala/net/psforever/services/base/message/WeaponDryFire.scala similarity index 62% rename from src/main/scala/net/psforever/services/base/messages/WeaponDryFire.scala rename to src/main/scala/net/psforever/services/base/message/WeaponDryFire.scala index 9f2f0b8d1..a011bb209 100644 --- a/src/main/scala/net/psforever/services/base/messages/WeaponDryFire.scala +++ b/src/main/scala/net/psforever/services/base/message/WeaponDryFire.scala @@ -1,7 +1,6 @@ // Copyright (c) 2026 PSForever -package net.psforever.services.base.messages +package net.psforever.services.base.message -import net.psforever.services.base.SelfRespondingEvent import net.psforever.types.PlanetSideGUID final case class WeaponDryFire(weapon_guid: PlanetSideGUID) extends SelfRespondingEvent diff --git a/src/main/scala/net/psforever/services/chat/ChatService.scala b/src/main/scala/net/psforever/services/chat/ChatService.scala index e0e2d64f1..5d72ebf71 100644 --- a/src/main/scala/net/psforever/services/chat/ChatService.scala +++ b/src/main/scala/net/psforever/services/chat/ChatService.scala @@ -6,7 +6,7 @@ import akka.actor.typed.{ActorRef, Behavior} import akka.actor.typed.scaladsl.{AbstractBehavior, ActorContext, Behaviors} import net.psforever.objects.{Session, SessionSource} import net.psforever.packet.game.ChatMsg -import net.psforever.services.base.{EventMessage, EventResponse} +import net.psforever.services.base.message.{EventMessage, EventResponse} import net.psforever.types.{ChatMessageType, PlanetSideEmpire} object ChatService { diff --git a/src/main/scala/net/psforever/services/galaxy/GalaxyAction.scala b/src/main/scala/net/psforever/services/galaxy/GalaxyAction.scala index c23f6ec18..96015b6ad 100644 --- a/src/main/scala/net/psforever/services/galaxy/GalaxyAction.scala +++ b/src/main/scala/net/psforever/services/galaxy/GalaxyAction.scala @@ -5,7 +5,7 @@ import net.psforever.objects.Vehicle import net.psforever.objects.vehicles.VehicleManifest import net.psforever.objects.zones.{HotSpotInfo, Zone} import net.psforever.packet.game.{BuildingInfoUpdateMessage, CaptureFlagUpdateMessage} -import net.psforever.services.base.SelfRespondingEvent +import net.psforever.services.base.message.SelfRespondingEvent import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID} object GalaxyAction { diff --git a/src/main/scala/net/psforever/services/galaxy/GalaxyService.scala b/src/main/scala/net/psforever/services/galaxy/GalaxyService.scala index b38b68776..7ff320396 100644 --- a/src/main/scala/net/psforever/services/galaxy/GalaxyService.scala +++ b/src/main/scala/net/psforever/services/galaxy/GalaxyService.scala @@ -1,19 +1,17 @@ // Copyright (c) 2017-2026 PSForever package net.psforever.services.galaxy -import net.psforever.services.base.{GenericEventService, GenericMessageEnvelope} +import net.psforever.services.base.{EventSystemStamp, GenericEventService} + +case object GalaxyStamp extends EventSystemStamp class GalaxyService - extends GenericEventService[GalaxyServiceResponse](busName = "Galaxy") { - protected def composeResponseEnvelope(msg: GenericMessageEnvelope): GalaxyServiceResponse = { - GalaxyServiceResponse(formatChannelOnBusName(msg.channel), msg.msg.response()) - } - - override protected def formatChannelOnBusName(channel: String): String = { + extends GenericEventService(stamp = GalaxyStamp) { + override protected def formatChannel(channel: String): String = { if (channel.trim.isEmpty) { - s"/$BusName" + "/all" } else { - s"/$channel/$BusName" + s"/$channel" } } } diff --git a/src/main/scala/net/psforever/services/galaxy/GalaxyServiceMessage.scala b/src/main/scala/net/psforever/services/galaxy/GalaxyServiceMessage.scala index 410053f8a..c0cc087fd 100644 --- a/src/main/scala/net/psforever/services/galaxy/GalaxyServiceMessage.scala +++ b/src/main/scala/net/psforever/services/galaxy/GalaxyServiceMessage.scala @@ -2,7 +2,8 @@ package net.psforever.services.galaxy import net.psforever.services.Service -import net.psforever.services.base.{EventMessage, MessageEnvelope} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.EventMessage object GalaxyServiceMessage { def apply(msg: EventMessage): MessageEnvelope = MessageEnvelope("", Service.defaultPlayerGUID, msg) diff --git a/src/main/scala/net/psforever/services/galaxy/GalaxyServiceResponse.scala b/src/main/scala/net/psforever/services/galaxy/GalaxyServiceResponse.scala index 3d68799f2..8cd9cbdee 100644 --- a/src/main/scala/net/psforever/services/galaxy/GalaxyServiceResponse.scala +++ b/src/main/scala/net/psforever/services/galaxy/GalaxyServiceResponse.scala @@ -3,9 +3,13 @@ package net.psforever.services.galaxy import net.psforever.types.PlanetSideGUID import net.psforever.services.Service -import net.psforever.services.base.{EventResponse, GenericResponseEnvelope} +import net.psforever.services.base.message.EventResponse +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.envelope.GenericResponseEnvelope final case class GalaxyServiceResponse(channel: String, reply: EventResponse) extends GenericResponseEnvelope { def filter: PlanetSideGUID = Service.defaultPlayerGUID + + def stamp: EventSystemStamp = GalaxyStamp } diff --git a/src/main/scala/net/psforever/services/hart/HartTimer.scala b/src/main/scala/net/psforever/services/hart/HartTimer.scala index ab5d2d4d7..2086c43b1 100644 --- a/src/main/scala/net/psforever/services/hart/HartTimer.scala +++ b/src/main/scala/net/psforever/services/hart/HartTimer.scala @@ -5,8 +5,10 @@ import akka.actor.{Actor, ActorRef, Cancellable} import net.psforever.objects.Default import net.psforever.objects.zones.Zone import net.psforever.services.Service -import net.psforever.services.base.bus.{GenericEventBus, GenericEventBusResponse} -import net.psforever.services.base.EventResponse +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.bus.GenericEventBus +import net.psforever.services.base.envelope.{GenericResponseEnvelope, NoReply} +import net.psforever.services.base.message.EventResponse import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.types.{HartSequence, PlanetSideGUID} @@ -45,7 +47,7 @@ class HartTimer(zone: Zone) extends Actor { var timer: Cancellable = Default.Cancellable /** a message bus to which all associated orbital shuttle pads are subscribed */ - val padEvents = new GenericEventBus[HartTimer.Command] + val padEvents = new GenericEventBus /** cache common messages */ val shuttleDockedInThisZone: HartTimer.ShuttleDocked = HartTimer.ShuttleDocked(zoneId) val shuttleFreeFromDockInThisZone: HartTimer.ShuttleFreeFromDock = HartTimer.ShuttleFreeFromDock(zoneId) @@ -256,17 +258,22 @@ object HartTimer { pairs: List[((PlanetSideGUID, PlanetSideGUID), Int)] ) + case object HartStamp extends EventSystemStamp + /** * Design for the envelop for the message bus * to relay instructions back to the individual facility amenity portions of this HART system. * The channel is blank because it does not need special designation. */ - trait Command extends EventResponse with GenericEventBusResponse { + trait Command extends GenericResponseEnvelope { + def originalChannel: String = "" def channel: String = "" def filter: PlanetSideGUID = Service.defaultPlayerGUID + def stamp: EventSystemStamp = HartStamp + def reply: EventResponse = NoReply } /** - * Forbid entry through the boartding gantry doors. + * Forbid entry through the boarding gantry doors. */ case object LockDoors extends Command /** diff --git a/src/main/scala/net/psforever/services/local/LocalAction.scala b/src/main/scala/net/psforever/services/local/LocalAction.scala index cb16c29c5..092b71776 100644 --- a/src/main/scala/net/psforever/services/local/LocalAction.scala +++ b/src/main/scala/net/psforever/services/local/LocalAction.scala @@ -8,9 +8,8 @@ import net.psforever.objects.serverobject.llu.CaptureFlag import net.psforever.objects.serverobject.terminals.{ProximityUnit, Terminal} import net.psforever.objects.vehicles.Utility import net.psforever.objects.zones.Zone -import net.psforever.packet.game.{ChatMsg, DeployableInfo, DeploymentAction, GenericAction, HackState7, ObjectCreateMessage, TriggeredEffect, TriggeredEffectLocation, TriggeredSound} -import net.psforever.services.base.messages.SendResponse -import net.psforever.services.base.{EventMessage, EventResponse, SelfRespondingEvent} +import net.psforever.packet.game.{DeployableInfo, DeploymentAction, GenericAction, HackState7, ObjectCreateMessage, TriggeredEffect, TriggeredEffectLocation, TriggeredSound} +import net.psforever.services.base.message.{EventMessage, EventResponse, SelfRespondingEvent, SendResponse} import net.psforever.services.hart.HartTimer.OrbitalShuttleEvent import net.psforever.types.{PlanetSideGUID, Vector3} @@ -59,8 +58,6 @@ object LocalAction { position: Vector3 ) extends SelfRespondingEvent - final case class ChatMessage(msg: ChatMsg) extends SelfRespondingEvent - final case class GenericActionMessage(action_num: GenericAction) extends SelfRespondingEvent final case class ProximityTerminalAction( diff --git a/src/main/scala/net/psforever/services/local/LocalService.scala b/src/main/scala/net/psforever/services/local/LocalService.scala index 37f112cc5..6285bf434 100644 --- a/src/main/scala/net/psforever/services/local/LocalService.scala +++ b/src/main/scala/net/psforever/services/local/LocalService.scala @@ -5,7 +5,7 @@ import akka.actor.{ActorContext, ActorRef, Props} import net.psforever.objects.zones.Zone import net.psforever.services.local.support.CaptureFlagManager import net.psforever.services.local.support._ -import net.psforever.services.base.{EventServiceSupport, GenericEventServiceWithSupport, GenericMessageEnvelope} +import net.psforever.services.base.{EventServiceSupport, EventSystemStamp, GenericEventServiceWithSupport} case object DoorCloserSupport extends EventServiceSupport { @@ -39,12 +39,10 @@ case class CaptureFlagSupport(zone: Zone) } } +case object LocalStamp extends EventSystemStamp + class LocalService(zone: Zone) - extends GenericEventServiceWithSupport[LocalServiceResponse]( - busName = "Local", + extends GenericEventServiceWithSupport( + stamp = LocalStamp, eventSupportServices = List(DoorCloserSupport, HackClearSupport, HackCaptureSupport, CaptureFlagSupport(zone)) - ) { - protected def composeResponseEnvelope(msg: GenericMessageEnvelope): LocalServiceResponse = { - LocalServiceResponse(formatChannelOnBusName(msg.channel), msg.filter, msg.msg.response()) - } -} + ) diff --git a/src/main/scala/net/psforever/services/local/LocalServiceMessage.scala b/src/main/scala/net/psforever/services/local/LocalServiceMessage.scala index 5bdaa5b93..ed9d3a094 100644 --- a/src/main/scala/net/psforever/services/local/LocalServiceMessage.scala +++ b/src/main/scala/net/psforever/services/local/LocalServiceMessage.scala @@ -2,7 +2,9 @@ package net.psforever.services.local import net.psforever.services.Service -import net.psforever.services.base.{EventMessage, GenericMessageToSupportEnvelope, GenericMessageToSupportEnvelopeOnly, MessageEnvelope} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.EventMessage +import net.psforever.services.base.{GenericSupportEnvelope, GenericSupportEnvelopeOnly} import net.psforever.services.local.LocalAction.{IsADoorMessage, IsAHackMessage} import net.psforever.services.local.support.CaptureFlagManager import net.psforever.types.PlanetSideGUID @@ -16,34 +18,34 @@ object LocalServiceMessage { } final case class DoorMessage( - channel: String, + originalChannel: String, msg: IsADoorMessage, supportMessage: Any - ) extends GenericMessageToSupportEnvelope { + ) extends GenericSupportEnvelope { def filter: PlanetSideGUID = Service.defaultPlayerGUID def supportLabel: String = "doorCloser" } final case class HackEntityMessage( - channel: String, + originalChannel: String, filter: PlanetSideGUID, msg: IsAHackMessage, supportMessage: Any - ) extends GenericMessageToSupportEnvelope { + ) extends GenericSupportEnvelope { def supportLabel: String = "hackClearer" } final case class HackClearMessage(supportMessage: Any) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "hackClearer" } final case class CaptureMessage(supportMessage: Any) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "hackCapturer" } final case class FlagMessage(supportMessage: CaptureFlagManager.Command) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "captureFlagManager" } diff --git a/src/main/scala/net/psforever/services/local/LocalServiceResponse.scala b/src/main/scala/net/psforever/services/local/LocalServiceResponse.scala index 7788471d2..dae9ab60b 100644 --- a/src/main/scala/net/psforever/services/local/LocalServiceResponse.scala +++ b/src/main/scala/net/psforever/services/local/LocalServiceResponse.scala @@ -1,11 +1,15 @@ // Copyright (c) 2017 PSForever package net.psforever.services.local +import net.psforever.services.base.message.EventResponse import net.psforever.types.PlanetSideGUID -import net.psforever.services.base.{EventResponse, GenericResponseEnvelope} +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.envelope.GenericResponseEnvelope final case class LocalServiceResponse( channel: String, filter: PlanetSideGUID, reply: EventResponse - ) extends GenericResponseEnvelope + ) extends GenericResponseEnvelope { + def stamp: EventSystemStamp = LocalStamp +} diff --git a/src/main/scala/net/psforever/services/local/support/CaptureFlagManager.scala b/src/main/scala/net/psforever/services/local/support/CaptureFlagManager.scala index d79251944..4a3ea889b 100644 --- a/src/main/scala/net/psforever/services/local/support/CaptureFlagManager.scala +++ b/src/main/scala/net/psforever/services/local/support/CaptureFlagManager.scala @@ -15,7 +15,7 @@ import net.psforever.objects.zones.interaction.InteractsWithZone import net.psforever.packet.game._ import net.psforever.services.ServiceManager import net.psforever.services.ServiceManager.{Lookup, LookupResult} -import net.psforever.services.base.messages.{GenericObjectAction, SendResponse} +import net.psforever.services.base.message.{GenericObjectAction, SendResponse} import net.psforever.services.galaxy.{GalaxyAction, GalaxyServiceMessage} import net.psforever.services.local.{CaptureMessage, LocalAction, LocalServiceMessage} import net.psforever.types.{ChatMessageType, PlanetSideEmpire, PlanetSideGUID, Vector3} @@ -266,7 +266,7 @@ object CaptureFlagManager { zone.LocalEvents ! LocalServiceMessage( zone.id, PlanetSideGUID(-1), - LocalAction.ChatMessage(ChatMsg(messageType, wideContents = true, "", message, None)) + SendResponse(ChatMsg(messageType, wideContents = true, "", message, None)) ) } diff --git a/src/main/scala/net/psforever/services/local/support/HackCaptureActor.scala b/src/main/scala/net/psforever/services/local/support/HackCaptureActor.scala index cddd949a1..762eba15e 100644 --- a/src/main/scala/net/psforever/services/local/support/HackCaptureActor.scala +++ b/src/main/scala/net/psforever/services/local/support/HackCaptureActor.scala @@ -13,7 +13,7 @@ import net.psforever.objects.Default import net.psforever.objects.serverobject.structures.participation.MajorFacilityHackParticipation import net.psforever.packet.game.{ChatMsg, GenericAction, HackState7, PlanetsideAttributeEnum} import net.psforever.objects.sourcing.PlayerSource -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.local.support.HackCaptureActor.GetHackingFaction import net.psforever.services.local.{FlagMessage, LocalAction, LocalServiceMessage} import net.psforever.types.{ChatMessageType, PlanetSideEmpire, PlanetSideGUID} diff --git a/src/main/scala/net/psforever/services/local/support/HackClearActor.scala b/src/main/scala/net/psforever/services/local/support/HackClearActor.scala index b2b7fad37..396280233 100644 --- a/src/main/scala/net/psforever/services/local/support/HackClearActor.scala +++ b/src/main/scala/net/psforever/services/local/support/HackClearActor.scala @@ -8,7 +8,7 @@ import net.psforever.objects.serverobject.hackable.Hackable import net.psforever.objects.serverobject.{CommonMessages, PlanetSideServerObject} import net.psforever.objects.zones.Zone import net.psforever.packet.game.HackState7 -import net.psforever.services.base.messages.GenericObjectAction +import net.psforever.services.base.message.GenericObjectAction import net.psforever.services.local.{LocalAction, LocalServiceMessage} import net.psforever.types.PlanetSideGUID diff --git a/src/main/scala/net/psforever/services/teamwork/SquadServiceMessage.scala b/src/main/scala/net/psforever/services/teamwork/SquadServiceMessage.scala index 4f6548122..8cda11648 100644 --- a/src/main/scala/net/psforever/services/teamwork/SquadServiceMessage.scala +++ b/src/main/scala/net/psforever/services/teamwork/SquadServiceMessage.scala @@ -5,7 +5,7 @@ import net.psforever.objects.Player import net.psforever.objects.avatar.Certification import net.psforever.objects.zones.Zone import net.psforever.packet.game.{WaypointEventAction, WaypointInfo, SquadAction => PacketSquadAction} -import net.psforever.services.base.{EventMessage, EventResponse} +import net.psforever.services.base.message.{EventMessage, EventResponse} import net.psforever.types.{PlanetSideGUID, SquadRequestType, SquadWaypoint, Vector3} final case class SquadServiceMessage(tplayer: Player, zone: Zone, actionMessage: Any) diff --git a/src/main/scala/net/psforever/services/teamwork/SquadServiceResponse.scala b/src/main/scala/net/psforever/services/teamwork/SquadServiceResponse.scala index af6b2f622..2482ffddd 100644 --- a/src/main/scala/net/psforever/services/teamwork/SquadServiceResponse.scala +++ b/src/main/scala/net/psforever/services/teamwork/SquadServiceResponse.scala @@ -6,12 +6,18 @@ import net.psforever.objects.avatar.Certification import net.psforever.objects.teamwork.Squad import net.psforever.packet.game.{SquadDetail, SquadInfo, WaypointEventAction, WaypointInfo} import net.psforever.services.Service +import net.psforever.services.base.message.EventResponse import net.psforever.types.{ChatMessageType, PlanetSideGUID, SquadResponseType, SquadWaypoint} -import net.psforever.services.base.{EventResponse, GenericResponseEnvelope} +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.envelope.GenericResponseEnvelope + +case object SquadStamp extends EventSystemStamp final case class SquadServiceResponse(channel: String, exclude: Iterable[Long], reply: SquadResponse.Response) extends EventResponse with GenericResponseEnvelope { - override def filter: PlanetSideGUID = Service.defaultPlayerGUID + def filter: PlanetSideGUID = Service.defaultPlayerGUID + + def stamp: EventSystemStamp = SquadStamp } object SquadServiceResponse { diff --git a/src/main/scala/net/psforever/services/teamwork/SquadSubscriptionEntity.scala b/src/main/scala/net/psforever/services/teamwork/SquadSubscriptionEntity.scala index e1aca37d9..fe0537992 100644 --- a/src/main/scala/net/psforever/services/teamwork/SquadSubscriptionEntity.scala +++ b/src/main/scala/net/psforever/services/teamwork/SquadSubscriptionEntity.scala @@ -28,7 +28,7 @@ class SquadSubscriptionEntity { * @see `Service.Join` * @see `Service.Leave` */ - val SquadEvents = new GenericEventBus[SquadServiceResponse] + val SquadEvents = new GenericEventBus /** * This collection contains the message-sending contact reference for individuals. diff --git a/src/main/scala/net/psforever/services/vehicle/VehicleAction.scala b/src/main/scala/net/psforever/services/vehicle/VehicleAction.scala index bd15519f0..6364e2cf5 100644 --- a/src/main/scala/net/psforever/services/vehicle/VehicleAction.scala +++ b/src/main/scala/net/psforever/services/vehicle/VehicleAction.scala @@ -8,14 +8,12 @@ import net.psforever.objects.serverobject.tube.SpawnTube import net.psforever.objects.zones.Zone import net.psforever.packet.game.ObjectCreateMessage import net.psforever.packet.game.objectcreate.{ConstructorData, ObjectCreateMessageParent} -import net.psforever.services.base.{EventMessage, EventResponse, SelfRespondingEvent} +import net.psforever.services.base.message.{EventMessage, EventResponse, SelfRespondingEvent} import net.psforever.types.{BailType, DriveState, PlanetSideGUID, Vector3} object VehicleAction { final case class ChildObjectState(object_guid: PlanetSideGUID, pitch: Float, yaw: Float) extends SelfRespondingEvent - final case class ConcealPlayer(player_guid: PlanetSideGUID) extends SelfRespondingEvent - final case class DeployRequest( object_guid: PlanetSideGUID, state: DriveState.Value, @@ -82,8 +80,6 @@ object VehicleAction { final case class LoseOwnership(owner_guid: PlanetSideGUID, vehicle_guid: PlanetSideGUID) extends SelfRespondingEvent - final case class RevealPlayer(player_guid: PlanetSideGUID) extends EventResponse - final case class SeatPermissions(vehicle_guid: PlanetSideGUID, seat_group: Int, permission: Long) extends SelfRespondingEvent final case class StowCreatedEquipment( diff --git a/src/main/scala/net/psforever/services/vehicle/VehicleService.scala b/src/main/scala/net/psforever/services/vehicle/VehicleService.scala index 213c7ac55..55bd0c25a 100644 --- a/src/main/scala/net/psforever/services/vehicle/VehicleService.scala +++ b/src/main/scala/net/psforever/services/vehicle/VehicleService.scala @@ -1,9 +1,8 @@ -// Copyright (c) 2017 PSForever +// Copyright (c) 2017-2026 PSForever package net.psforever.services.vehicle import akka.actor.{ActorContext, ActorRef, Props} -import net.psforever.objects.zones.Zone -import net.psforever.services.base.{EventServiceSupport, GenericEventServiceWithCacheAndSupport, GenericMessageEnvelope} +import net.psforever.services.base.{EventServiceSupport, EventSystemStamp, GenericEventServiceWithCacheAndSupport} import net.psforever.services.vehicle.support.TurretUpgrader case object TurretUpgradeSupport @@ -14,12 +13,10 @@ case object TurretUpgradeSupport } } -class VehicleService(zone: Zone) - extends GenericEventServiceWithCacheAndSupport[VehicleServiceResponse]( - busName = "Vehicle", +case object VehicleStamp extends EventSystemStamp + +class VehicleService + extends GenericEventServiceWithCacheAndSupport( + stamp = VehicleStamp, eventSupportServices = List(TurretUpgradeSupport) - ) { - protected def composeResponseEnvelope(msg: GenericMessageEnvelope): VehicleServiceResponse = { - VehicleServiceResponse(formatChannelOnBusName(msg.channel), msg.filter, msg.msg.response()) - } -} + ) diff --git a/src/main/scala/net/psforever/services/vehicle/VehicleServiceMessage.scala b/src/main/scala/net/psforever/services/vehicle/VehicleServiceMessage.scala index af13af6cd..212e44638 100644 --- a/src/main/scala/net/psforever/services/vehicle/VehicleServiceMessage.scala +++ b/src/main/scala/net/psforever/services/vehicle/VehicleServiceMessage.scala @@ -2,7 +2,9 @@ package net.psforever.services.vehicle import net.psforever.services.Service -import net.psforever.services.base.{EventMessage, GenericMessageToSupportEnvelopeOnly, MessageEnvelope} +import net.psforever.services.base.message.EventMessage +import net.psforever.services.base.GenericSupportEnvelopeOnly +import net.psforever.services.base.envelope.MessageEnvelope import net.psforever.types.PlanetSideGUID object VehicleServiceMessage { @@ -14,6 +16,6 @@ object VehicleServiceMessage { } final case class TurretMessage(supportMessage: Any) - extends GenericMessageToSupportEnvelopeOnly { + extends GenericSupportEnvelopeOnly { def supportLabel: String = "turretUpgrader" } diff --git a/src/main/scala/net/psforever/services/vehicle/VehicleServiceResponse.scala b/src/main/scala/net/psforever/services/vehicle/VehicleServiceResponse.scala index f28b5652e..1b6652e2d 100644 --- a/src/main/scala/net/psforever/services/vehicle/VehicleServiceResponse.scala +++ b/src/main/scala/net/psforever/services/vehicle/VehicleServiceResponse.scala @@ -1,11 +1,15 @@ // Copyright (c) 2017 PSForever package net.psforever.services.vehicle +import net.psforever.services.base.message.EventResponse import net.psforever.types.PlanetSideGUID -import net.psforever.services.base.{EventResponse, GenericResponseEnvelope} +import net.psforever.services.base.EventSystemStamp +import net.psforever.services.base.envelope.GenericResponseEnvelope final case class VehicleServiceResponse( channel: String, filter: PlanetSideGUID, reply: EventResponse - ) extends GenericResponseEnvelope + ) extends GenericResponseEnvelope { + def stamp: EventSystemStamp = VehicleStamp +} diff --git a/src/test/scala/objects/DamageableTest.scala b/src/test/scala/objects/DamageableTest.scala index 3d3538116..fbf3b9f3a 100644 --- a/src/test/scala/objects/DamageableTest.scala +++ b/src/test/scala/objects/DamageableTest.scala @@ -36,8 +36,8 @@ import net.psforever.objects.vital.interaction.DamageInteraction import net.psforever.objects.vital.base.DamageResolution import net.psforever.objects.vital.projectile.ProjectileReason import net.psforever.objects.vital.resolution.ResolutionCalculations.Output -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{ObjectDelete, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{ObjectDelete, PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.support.TurretUpgrader class DamageableTest extends Specification { diff --git a/src/test/scala/objects/DeployableBehaviorTest.scala b/src/test/scala/objects/DeployableBehaviorTest.scala index 8defcd389..77b74fc18 100644 --- a/src/test/scala/objects/DeployableBehaviorTest.scala +++ b/src/test/scala/objects/DeployableBehaviorTest.scala @@ -13,8 +13,8 @@ import net.psforever.objects.guid.NumberPoolHub import net.psforever.objects.guid.source.MaxNumberSource import net.psforever.objects.zones.{Zone, ZoneDeployableActor, ZoneMap} import net.psforever.packet.game._ -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{ObjectDelete, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{ObjectDelete, SendResponse} import net.psforever.services.local.LocalAction import net.psforever.types._ diff --git a/src/test/scala/objects/DeployableTest.scala b/src/test/scala/objects/DeployableTest.scala index 033d1f2f5..bf97bd54e 100644 --- a/src/test/scala/objects/DeployableTest.scala +++ b/src/test/scala/objects/DeployableTest.scala @@ -12,7 +12,7 @@ import net.psforever.objects.guid.source.MaxNumberSource import net.psforever.objects.serverobject.mount.{MountInfo, Mountable, SeatDefinition} import net.psforever.objects.vital.Vitality import net.psforever.objects.zones.{Zone, ZoneDeployableActor, ZoneMap} -import net.psforever.objects.{TurretDeployable, _} +import net.psforever.objects._ import net.psforever.packet.game.{DeployableIcon, DeployableInfo, DeploymentAction} import net.psforever.types._ import org.specs2.mutable.Specification @@ -25,7 +25,7 @@ import net.psforever.objects.vital.interaction.DamageInteraction import net.psforever.objects.vital.projectile.ProjectileReason import akka.actor.typed.scaladsl.adapter._ import net.psforever.objects.sourcing.{PlayerSource, SourceEntry} -import net.psforever.services.base.MessageEnvelope +import net.psforever.services.base.envelope.MessageEnvelope import scala.collection.mutable import scala.concurrent.duration._ diff --git a/src/test/scala/objects/DeploymentTest.scala b/src/test/scala/objects/DeploymentTest.scala index 62dc12583..c0d4702ec 100644 --- a/src/test/scala/objects/DeploymentTest.scala +++ b/src/test/scala/objects/DeploymentTest.scala @@ -8,7 +8,7 @@ import net.psforever.objects.serverobject.PlanetSideServerObject import net.psforever.objects.{GlobalDefinitions, Vehicle} import net.psforever.objects.serverobject.deploy.{Deployment, DeploymentBehavior} import net.psforever.objects.zones.{Zone, ZoneMap} -import net.psforever.services.base.MessageEnvelope +import net.psforever.services.base.envelope.MessageEnvelope import net.psforever.types.{DriveState, PlanetSideEmpire, PlanetSideGUID, Vector3} import org.specs2.mutable.Specification import net.psforever.services.vehicle.VehicleAction diff --git a/src/test/scala/objects/FacilityTurretTest.scala b/src/test/scala/objects/FacilityTurretTest.scala index 26f12e8b9..bba0f9570 100644 --- a/src/test/scala/objects/FacilityTurretTest.scala +++ b/src/test/scala/objects/FacilityTurretTest.scala @@ -20,8 +20,8 @@ import net.psforever.packet.game.{InventoryStateMessage, RepairMessage} import net.psforever.types._ import org.specs2.mutable.Specification import net.psforever.services.avatar.AvatarAction -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleAction import scala.collection.mutable diff --git a/src/test/scala/objects/GeneratorTest.scala b/src/test/scala/objects/GeneratorTest.scala index 9cb8ce8f4..feeea8c2e 100644 --- a/src/test/scala/objects/GeneratorTest.scala +++ b/src/test/scala/objects/GeneratorTest.scala @@ -25,8 +25,8 @@ import net.psforever.packet.game.{InventoryStateMessage, RepairMessage, TriggerE import net.psforever.types._ import org.specs2.mutable.Specification import net.psforever.services.avatar.AvatarAction -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import scala.concurrent.duration._ diff --git a/src/test/scala/objects/PlayerControlTest.scala b/src/test/scala/objects/PlayerControlTest.scala index 50d734b75..514b35846 100644 --- a/src/test/scala/objects/PlayerControlTest.scala +++ b/src/test/scala/objects/PlayerControlTest.scala @@ -25,8 +25,8 @@ import net.psforever.objects.vital.resolution.ResolutionCalculations.Output import net.psforever.packet.game._ import net.psforever.types._ import net.psforever.services.avatar.AvatarAction -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{HintsAtAttacker, PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{HintsAtAttacker, PlanetsideAttribute, SendResponse} import scala.concurrent.duration._ diff --git a/src/test/scala/objects/RepairableTest.scala b/src/test/scala/objects/RepairableTest.scala index 6589e7d8a..95c28f5ce 100644 --- a/src/test/scala/objects/RepairableTest.scala +++ b/src/test/scala/objects/RepairableTest.scala @@ -18,8 +18,8 @@ import net.psforever.objects.zones.{Zone, ZoneMap} import net.psforever.packet.game.{InventoryStateMessage, RepairMessage} import net.psforever.types._ import net.psforever.services.avatar.AvatarAction -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleAction import scala.concurrent.duration._ diff --git a/src/test/scala/objects/ResourceSiloTest.scala b/src/test/scala/objects/ResourceSiloTest.scala index 5fb433118..a652c10e8 100644 --- a/src/test/scala/objects/ResourceSiloTest.scala +++ b/src/test/scala/objects/ResourceSiloTest.scala @@ -17,8 +17,8 @@ import net.psforever.packet.game.UseItemMessage import net.psforever.types._ import org.specs2.mutable.Specification import net.psforever.objects.avatar.Avatar -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.PlanetsideAttribute +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.PlanetsideAttribute import net.psforever.services.{InterstellarClusterService, Service, ServiceManager} import net.psforever.services.galaxy.GalaxyService diff --git a/src/test/scala/objects/TelepadRouterTest.scala b/src/test/scala/objects/TelepadRouterTest.scala index 056f4be58..a1c25b0cd 100644 --- a/src/test/scala/objects/TelepadRouterTest.scala +++ b/src/test/scala/objects/TelepadRouterTest.scala @@ -15,8 +15,8 @@ import net.psforever.objects.vehicles.{Utility, UtilityType} import net.psforever.objects.zones.{Zone, ZoneDeployableActor, ZoneMap} import net.psforever.packet.game.objectcreate.ObjectCreateMessageParent import net.psforever.packet.game._ -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.SendResponse +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.SendResponse import net.psforever.services.local.LocalAction import net.psforever.types.{DriveState, PlanetSideGUID, Vector3} diff --git a/src/test/scala/objects/VehicleControlTest.scala b/src/test/scala/objects/VehicleControlTest.scala index b6ced134c..14bf44040 100644 --- a/src/test/scala/objects/VehicleControlTest.scala +++ b/src/test/scala/objects/VehicleControlTest.scala @@ -25,8 +25,8 @@ import net.psforever.objects.vital.{ShieldCharge, SpawningActivity, Vitality} import net.psforever.objects.zones.{Zone, ZoneMap} import net.psforever.packet.game._ import net.psforever.services.ServiceManager -import net.psforever.services.base.MessageEnvelope -import net.psforever.services.base.messages.{PlanetsideAttribute, SendResponse} +import net.psforever.services.base.envelope.MessageEnvelope +import net.psforever.services.base.message.{PlanetsideAttribute, SendResponse} import net.psforever.services.vehicle.VehicleAction import net.psforever.types._ diff --git a/src/test/scala/objects/terminal/ProximityTest.scala b/src/test/scala/objects/terminal/ProximityTest.scala index 1a5848c51..377aeb3b9 100644 --- a/src/test/scala/objects/terminal/ProximityTest.scala +++ b/src/test/scala/objects/terminal/ProximityTest.scala @@ -19,7 +19,7 @@ import net.psforever.services.local.LocalService import scala.concurrent.duration._ import akka.actor.typed.scaladsl.adapter._ import net.psforever.objects.avatar.Avatar -import net.psforever.services.base.MessageEnvelope +import net.psforever.services.base.envelope.MessageEnvelope class ProximityTest extends Specification { diff --git a/src/test/scala/service/LocalServiceTest.scala b/src/test/scala/service/LocalServiceTest.scala index 832f51a7a..8519962c1 100644 --- a/src/test/scala/service/LocalServiceTest.scala +++ b/src/test/scala/service/LocalServiceTest.scala @@ -10,7 +10,7 @@ import net.psforever.objects.serverobject.terminals.{ProximityTerminal, Terminal import net.psforever.objects.vehicles.control.VehicleControl import net.psforever.objects.zones.{Zone, ZoneMap} import net.psforever.packet.game._ -import net.psforever.services.base.messages.{SendResponse, SetEmpire} +import net.psforever.services.base.message.{SendResponse, SetEmpire} import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID, Vector3} import net.psforever.services.{Service, ServiceManager} import net.psforever.services.local._ diff --git a/src/test/scala/service/VehicleServiceTest.scala b/src/test/scala/service/VehicleServiceTest.scala index deeb05930..8bd56c628 100644 --- a/src/test/scala/service/VehicleServiceTest.scala +++ b/src/test/scala/service/VehicleServiceTest.scala @@ -15,7 +15,7 @@ class VehicleService1Test extends ActorTest { "VehicleService" should { "construct" in { - system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + system.actorOf(Props(classOf[VehicleService]), "v-service") assert(true) } } @@ -26,7 +26,7 @@ class VehicleService2Test extends ActorTest { "VehicleService" should { "subscribe" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") assert(true) } @@ -38,7 +38,7 @@ class VehicleService3Test extends ActorTest { "VehicleService" should { "subscribe to a specific channel" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! Service.Leave() assert(true) @@ -51,7 +51,7 @@ class VehicleService4Test extends ActorTest { "VehicleService" should { "subscribe" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! Service.LeaveAll() assert(true) @@ -64,7 +64,7 @@ class VehicleService5Test extends ActorTest { "VehicleService" should { "pass an unhandled message" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! "hello" expectNoMessage() @@ -77,7 +77,7 @@ class OwnershipTest extends ActorTest { "VehicleService" should { "pass Awareness" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage("test", PlanetSideGUID(10), VehicleAction.Ownership(PlanetSideGUID(11))) expectMsg( @@ -92,7 +92,7 @@ class ChildObjectStateTest extends ActorTest { "VehicleService" should { "pass ChildObjectState" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -115,7 +115,7 @@ class DeployRequestTest extends ActorTest { "VehicleService" should { "pass DeployRequest" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -138,7 +138,7 @@ class DismountVehicleTest extends ActorTest { "VehicleService" should { "pass DismountVehicle" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage("test", PlanetSideGUID(10), VehicleAction.DismountVehicle(BailType.Normal, false)) expectMsg( @@ -160,7 +160,7 @@ class InventoryStateTest extends ActorTest { "VehicleService" should { "pass InventoryState" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -186,7 +186,7 @@ class InventoryState2Test extends ActorTest { "VehicleService" should { "pass InventoryState2" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -209,7 +209,7 @@ class KickPassengerTest extends ActorTest { "VehicleService" should { "pass KickPassenger" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -235,7 +235,7 @@ class LoadVehicleTest extends ActorTest { "VehicleService" should { "pass LoadVehicle" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -258,7 +258,7 @@ class MountVehicleTest extends ActorTest { "VehicleService" should { "pass MountVehicle" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage("test", VehicleAction.MountVehicle(PlanetSideGUID(11), 0)) expectMsg( @@ -273,7 +273,7 @@ class SeatPermissionsTest extends ActorTest { "VehicleService" should { "pass SeatPermissions" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -300,7 +300,7 @@ class StowEquipmentTest extends ActorTest { "StowEquipment" should { "pass StowEquipment" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -323,7 +323,7 @@ class UnstowEquipmentTest extends ActorTest { "VehicleService" should { "pass UnstowEquipment" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage("test", PlanetSideGUID(10), VehicleAction.UnstowEquipment(PlanetSideGUID(11))) expectMsg( @@ -338,7 +338,7 @@ class VehicleStateTest extends ActorTest { "VehicleService" should { "pass VehicleState" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") service ! Service.Join("test") service ! VehicleServiceMessage( "test", @@ -372,7 +372,7 @@ class TransferPassengerChannelTest extends ActorTest { "VehicleService" should { "pass TransferPassengerChannel" in { - val service = system.actorOf(Props(classOf[VehicleService], Zone.Nowhere), "v-service") + val service = system.actorOf(Props(classOf[VehicleService]), "v-service") val fury = Vehicle(GlobalDefinitions.fury) fury.Actor = system.actorOf(Props(classOf[VehicleControl], fury), "test-fury") service ! Service.Join("test")