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 132924a16..9daeac6fa 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionSquadHandlers.scala @@ -55,17 +55,17 @@ class SessionSquadHandlers( /* packet */ def handleSquadDefinitionAction(pkt: SquadDefinitionActionMessage): Unit = { - val SquadDefinitionActionMessage(u1, u2, action) = pkt - squadService ! SquadServiceMessage(player, continent, SquadServiceAction.Definition(u1, u2, action)) +// val SquadDefinitionActionMessage(u1, u2, action) = pkt +// squadService ! SquadServiceMessage(player, continent, SquadServiceAction.Definition(u1, u2, action)) } def handleSquadMemberRequest(pkt: SquadMembershipRequest): Unit = { - val SquadMembershipRequest(request_type, char_id, unk3, player_name, unk5) = pkt - squadService ! SquadServiceMessage( - player, - continent, - SquadServiceAction.Membership(request_type, char_id, unk3, player_name, unk5) - ) +// val SquadMembershipRequest(request_type, char_id, unk3, player_name, unk5) = pkt +// squadService ! SquadServiceMessage( +// player, +// continent, +// SquadServiceAction.Membership(request_type, char_id, unk3, player_name, unk5) +// ) } def handleSquadWaypointRequest(pkt: SquadWaypointRequest): Unit = { 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 504399c98..270c9dacd 100644 --- a/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala +++ b/src/main/scala/net/psforever/actors/session/support/SessionVehicleHandlers.scala @@ -34,7 +34,7 @@ class SessionVehicleHandlers( val resolvedPlayerGuid = if (player.HasGUID) { player.GUID } else { - Service.defaultPlayerGUID + PlanetSideGUID(-1) } val isNotSameTarget = resolvedPlayerGuid != guid reply match { @@ -253,12 +253,13 @@ class SessionVehicleHandlers( } case VehicleResponse.StartPlayerSeatedInVehicle(vehicle, _) => - val vehicle_guid = vehicle.GUID + val vehicleGuid = vehicle.GUID + val playerGuid = player.GUID sessionData.playerActionsToCancel() sessionData.vehicles.serverVehicleControlVelocity = Some(0) sessionData.terminals.CancelAllProximityUnits() - sendResponse(PlanetsideAttributeMessage(vehicle_guid, attribute_type=22, attribute_value=1L)) //mount points off - sendResponse(PlanetsideAttributeMessage(player.GUID, attribute_type=21, vehicle_guid)) //ownership + sendResponse(PlanetsideAttributeMessage(vehicleGuid, attribute_type=22, attribute_value=1L)) //mount points off + sendResponse(PlanetsideAttributeMessage(playerGuid, attribute_type=21, vehicleGuid)) //ownership vehicle.MountPoints.find { case (_, mp) => mp.seatIndex == 0 }.collect { case (mountPoint, _) => vehicle.Actor ! Mountable.TryMount(player, mountPoint) } 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 81970ff3d..93ee04def 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala @@ -13,6 +13,7 @@ import net.psforever.objects.inventory.{GridInventory, InventoryItem} import net.psforever.objects.serverobject.{CommonMessages, PlanetSideServerObject, ServerObjectControl} import net.psforever.objects.serverobject.affinity.{FactionAffinity, FactionAffinityBehavior} import net.psforever.objects.serverobject.containable.{Containable, ContainableBehavior} +import net.psforever.objects.serverobject.damage.Damageable.Target import net.psforever.objects.serverobject.damage.{AggravatedBehavior, DamageableVehicle} import net.psforever.objects.serverobject.environment._ import net.psforever.objects.serverobject.hackable.GenericHackables @@ -864,10 +865,15 @@ class VehicleControl(vehicle: Vehicle) ) } } + + override protected def DestructionAwareness(target: Target, cause: DamageResult): Unit = { + passengerRadiationCloudTimer.cancel() + super.DestructionAwareness(target, cause) + } } object VehicleControl { - import net.psforever.objects.vital.{ShieldCharge} + import net.psforever.objects.vital.ShieldCharge private case class PrepareForDeletion()