@@ -46,7 +46,7 @@ namespace Content.Server.Physics.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
HandleShuttleMovement(frameTime);
|
HandleShuttleMovement(frameTime);
|
||||||
HandleVehicleMovement(frameTime);
|
HandleVehicleMovement();
|
||||||
|
|
||||||
foreach (var (mover, physics) in EntityManager.EntityQuery<IMoverComponent, PhysicsComponent>(true))
|
foreach (var (mover, physics) in EntityManager.EntityQuery<IMoverComponent, PhysicsComponent>(true))
|
||||||
{
|
{
|
||||||
@@ -263,12 +263,21 @@ namespace Content.Server.Physics.Controllers
|
|||||||
/// Add mobs riding vehicles to the list of mobs whose input
|
/// Add mobs riding vehicles to the list of mobs whose input
|
||||||
/// should be ignored.
|
/// should be ignored.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void HandleVehicleMovement(float frameTime)
|
private void HandleVehicleMovement()
|
||||||
{
|
{
|
||||||
foreach (var (rider, mover, xform) in EntityManager.EntityQuery<RiderComponent, SharedPlayerInputMoverComponent, TransformComponent>())
|
// TODO: Nuke this code. It's on my list.
|
||||||
|
foreach (var (rider, mover) in EntityQuery<RiderComponent, SharedPlayerInputMoverComponent>())
|
||||||
{
|
{
|
||||||
if (rider.Vehicle == null) continue;
|
if (rider.Vehicle == null) continue;
|
||||||
_excludedMobs.Add(mover.Owner);
|
_excludedMobs.Add(mover.Owner);
|
||||||
|
|
||||||
|
if (!_excludedMobs.Add(rider.Vehicle.Owner)) continue;
|
||||||
|
|
||||||
|
if (!TryComp<IMoverComponent>(rider.Vehicle.Owner, out var vehicleMover) ||
|
||||||
|
!TryComp<PhysicsComponent>(rider.Vehicle.Owner, out var vehicleBody) ||
|
||||||
|
rider.Vehicle.Owner.IsWeightless(vehicleBody, mapManager: _mapManager, entityManager: EntityManager)) continue;
|
||||||
|
|
||||||
|
HandleKinematicMovement(vehicleMover, vehicleBody);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ namespace Content.Shared.Vehicle.Components
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// The vehicle this rider is currently riding.
|
/// The vehicle this rider is currently riding.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[ViewVariables]
|
[ViewVariables] public VehicleComponent? Vehicle;
|
||||||
public VehicleComponent Vehicle = default!;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user