From: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Date: Sun, 18 Aug 2024 21:18:20 +0000 (-0700) Subject: Cutting food now moves the food a little bit. (#31166) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=78b3e3253fcd257ea73d8f752b9ce2208122fa1d;p=space-station-14.git Cutting food now moves the food a little bit. (#31166) First commit --- diff --git a/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs b/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs index a865a22121..318a53a0b7 100644 --- a/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs +++ b/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs @@ -10,6 +10,10 @@ using Content.Shared.Interaction; using Robust.Server.GameObjects; using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; +using Robust.Shared.Random; +using Robust.Shared.Containers; +using Robust.Shared.Physics.Components; +using Robust.Shared.Physics.Systems; namespace Content.Server.Nutrition.EntitySystems; @@ -19,7 +23,9 @@ public sealed class SliceableFoodSystem : EntitySystem [Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly TransformSystem _transform = default!; [Dependency] private readonly DoAfterSystem _doAfter = default!; - + [Dependency] private readonly IRobustRandom _random = default!; + [Dependency] private readonly SharedContainerSystem _container = default!; + [Dependency] private readonly SharedPhysicsSystem _physics = default!; public override void Initialize() { base.Initialize(); @@ -114,6 +120,13 @@ public sealed class SliceableFoodSystem : EntitySystem _transform.DropNextTo(sliceUid, (uid, transform)); _transform.SetLocalRotation(sliceUid, 0); + if (!_container.IsEntityOrParentInContainer(sliceUid)) + { + var randVect = _random.NextVector2(2.0f, 2.5f); + if (TryComp(sliceUid, out var physics)) + _physics.SetLinearVelocity(sliceUid, randVect, body: physics); + } + return sliceUid; }