Reset speed when buckling (#19846)

This commit is contained in:
Slava0135
2023-09-16 07:15:05 +03:00
committed by GitHub
parent 411fc8e27b
commit 2e1197257c
4 changed files with 105 additions and 97 deletions

View File

@@ -39,7 +39,7 @@ public abstract partial class SharedBuckleSystem
private void OnStrapStartup(EntityUid uid, StrapComponent component, ComponentStartup args)
{
AppearanceSystem.SetData(uid, StrapVisuals.State, component.BuckledEntities.Count != 0);
Appearance.SetData(uid, StrapVisuals.State, component.BuckledEntities.Count != 0);
}
private void OnStrapShutdown(EntityUid uid, StrapComponent component, ComponentShutdown args)
@@ -90,8 +90,8 @@ public abstract partial class SharedBuckleSystem
!Resolve(strapUid, ref strapComp, false))
return;
var contained = _containerSystem.TryGetContainingContainer(buckleUid, out var ownContainer);
var strapContained = _containerSystem.TryGetContainingContainer(strapUid, out var strapContainer);
var contained = _container.TryGetContainingContainer(buckleUid, out var ownContainer);
var strapContained = _container.TryGetContainingContainer(strapUid, out var strapContainer);
if (contained != strapContained || ownContainer != strapContainer)
{
@@ -133,7 +133,7 @@ public abstract partial class SharedBuckleSystem
{
var buckledComp = Comp<BuckleComponent>(entity);
if (!_interactionSystem.InRangeUnobstructed(args.User, args.Target, range: buckledComp.Range))
if (!_interaction.InRangeUnobstructed(args.User, args.Target, range: buckledComp.Range))
continue;
var verb = new InteractionVerb()
@@ -158,7 +158,7 @@ public abstract partial class SharedBuckleSystem
buckle.BuckledTo != uid &&
args.User != uid &&
StrapHasSpace(uid, buckle, component) &&
_interactionSystem.InRangeUnobstructed(args.User, args.Target, range: buckle.Range))
_interaction.InRangeUnobstructed(args.User, args.Target, range: buckle.Range))
{
InteractionVerb verb = new()
{
@@ -173,11 +173,11 @@ public abstract partial class SharedBuckleSystem
if (args.Using is {Valid: true} @using &&
TryComp<BuckleComponent>(@using, out var usingBuckle) &&
StrapHasSpace(uid, usingBuckle, component) &&
_interactionSystem.InRangeUnobstructed(@using, args.Target, range: usingBuckle.Range))
_interaction.InRangeUnobstructed(@using, args.Target, range: usingBuckle.Range))
{
// Check that the entity is unobstructed from the target (ignoring the user).
bool Ignored(EntityUid entity) => entity == args.User || entity == args.Target || entity == @using;
if (!_interactionSystem.InRangeUnobstructed(@using, args.Target, usingBuckle.Range, predicate: Ignored))
if (!_interaction.InRangeUnobstructed(@using, args.Target, usingBuckle.Range, predicate: Ignored))
return;
var isPlayer = _playerManager.TryGetSessionByEntity(@using, out var _);
@@ -269,7 +269,7 @@ public abstract partial class SharedBuckleSystem
bool Ignored(EntityUid entity) => entity == userUid || entity == buckleUid || entity == targetUid;
return _interactionSystem.InRangeUnobstructed(targetUid, buckleUid, buckleComp.Range, predicate: Ignored);
return _interaction.InRangeUnobstructed(targetUid, buckleUid, buckleComp.Range, predicate: Ignored);
}
/// <summary>
@@ -312,9 +312,9 @@ public abstract partial class SharedBuckleSystem
strapComp.OccupiedSize += buckleComp.Size;
AppearanceSystem.SetData(buckleUid, StrapVisuals.RotationAngle, strapComp.Rotation);
Appearance.SetData(buckleUid, StrapVisuals.RotationAngle, strapComp.Rotation);
AppearanceSystem.SetData(strapUid, StrapVisuals.State, true);
Appearance.SetData(strapUid, StrapVisuals.State, true);
Dirty(strapUid, strapComp);
return true;