Fixes lightning not colliding (#12553)

This commit is contained in:
keronshb
2022-11-15 01:35:22 -05:00
committed by GitHub
parent 94011ca2b1
commit 6e3b45ea76

View File

@@ -3,9 +3,7 @@ using Content.Server.Lightning;
using Content.Shared.Beam; using Content.Shared.Beam;
using Content.Shared.Beam.Components; using Content.Shared.Beam.Components;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Lightning;
using Content.Shared.Physics; using Content.Shared.Physics;
using Robust.Server.GameObjects;
using Robust.Shared.Map; using Robust.Shared.Map;
using Robust.Shared.Physics; using Robust.Shared.Physics;
using Robust.Shared.Physics.Collision.Shapes; using Robust.Shared.Physics.Collision.Shapes;
@@ -19,6 +17,8 @@ public sealed class BeamSystem : SharedBeamSystem
{ {
[Dependency] private readonly FixtureSystem _fixture = default!; [Dependency] private readonly FixtureSystem _fixture = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly SharedPhysicsSystem _physics = default!;
[Dependency] private readonly SharedTransformSystem _transformSystem = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -85,12 +85,13 @@ public sealed class BeamSystem : SharedBeamSystem
{ {
ID = "BeamBody", ID = "BeamBody",
Hard = false, Hard = false,
CollisionMask = (int)CollisionGroup.ItemMask, //Change to MobMask CollisionMask = (int)CollisionGroup.ItemMask,
CollisionLayer = (int)CollisionGroup.MobLayer //Change to WallLayer CollisionLayer = (int)CollisionGroup.MobLayer
}; };
_fixture.TryCreateFixture(physics, fixture); _fixture.TryCreateFixture(physics, fixture);
physics.BodyType = BodyType.Dynamic; _physics.SetBodyType(physics, BodyType.Dynamic);
_physics.SetCanCollide(physics, true);
var beamVisualizerEvent = new BeamVisualizerEvent(ent, distanceLength, userAngle, bodyState, shader); var beamVisualizerEvent = new BeamVisualizerEvent(ent, distanceLength, userAngle, bodyState, shader);
RaiseNetworkEvent(beamVisualizerEvent); RaiseNetworkEvent(beamVisualizerEvent);