Cherrypicks (#356)

* Katana Dash checks based on vision rather than collision (#27793)

* Fix dash check

* unused

* obsolete function

---------

Co-authored-by: plykiya <plykiya@protonmail.com>

* Fix StepTrigger blacklist not working (#26968)

* Make cuff default range again (#28576)

* Make cuff default range again

* uncuff distance

* how about ONE

---------

Co-authored-by: plykiya <plykiya@protonmail.com>

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: no <165581243+pissdemon@users.noreply.github.com>
This commit is contained in:
Aviu00
2024-06-14 14:01:02 +00:00
committed by GitHub
parent 11ceefc019
commit 894af847cd
3 changed files with 7 additions and 8 deletions

View File

@@ -545,7 +545,7 @@ namespace Content.Shared.Cuffs
BreakOnWeightlessMove = false, BreakOnWeightlessMove = false,
BreakOnDamage = true, BreakOnDamage = true,
NeedHand = true, NeedHand = true,
DistanceThreshold = 0.3f DistanceThreshold = 1f // shorter than default but still feels good
}; };
if (!_doAfter.TryStartDoAfter(doAfterEventArgs)) if (!_doAfter.TryStartDoAfter(doAfterEventArgs))
@@ -650,7 +650,7 @@ namespace Content.Shared.Cuffs
BreakOnDamage = true, BreakOnDamage = true,
NeedHand = true, NeedHand = true,
RequireCanInteract = false, // Trust in UncuffAttemptEvent RequireCanInteract = false, // Trust in UncuffAttemptEvent
DistanceThreshold = 0.3f DistanceThreshold = 1f // shorter than default but still feels good
}; };
if (!_doAfter.TryStartDoAfter(doAfterEventArgs)) if (!_doAfter.TryStartDoAfter(doAfterEventArgs))

View File

@@ -5,8 +5,8 @@ using Content.Shared.Charges.Systems;
using Content.Shared.Hands.EntitySystems; using Content.Shared.Hands.EntitySystems;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Ninja.Components; using Content.Shared.Ninja.Components;
using Content.Shared.Physics;
using Content.Shared.Popups; using Content.Shared.Popups;
using Content.Shared.Examine;
using Robust.Shared.Audio.Systems; using Robust.Shared.Audio.Systems;
using Robust.Shared.Timing; using Robust.Shared.Timing;
@@ -21,7 +21,7 @@ public sealed class DashAbilitySystem : EntitySystem
[Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly SharedChargesSystem _charges = default!; [Dependency] private readonly SharedChargesSystem _charges = default!;
[Dependency] private readonly SharedHandsSystem _hands = default!; [Dependency] private readonly SharedHandsSystem _hands = default!;
[Dependency] private readonly SharedInteractionSystem _interaction = default!; [Dependency] private readonly ExamineSystemShared _examine = default!;
[Dependency] private readonly SharedPopupSystem _popup = default!; [Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly SharedTransformSystem _transform = default!;
[Dependency] private readonly ActionContainerSystem _actionContainer = default!; [Dependency] private readonly ActionContainerSystem _actionContainer = default!;
@@ -81,11 +81,10 @@ public sealed class DashAbilitySystem : EntitySystem
_popup.PopupClient(Loc.GetString("dash-ability-no-charges", ("item", uid)), user, user); _popup.PopupClient(Loc.GetString("dash-ability-no-charges", ("item", uid)), user, user);
return; return;
} }
var origin = _transform.GetMapCoordinates(user);
var origin = Transform(user).MapPosition;
var target = args.Target.ToMap(EntityManager, _transform); var target = args.Target.ToMap(EntityManager, _transform);
// prevent collision with the user duh // prevent collision with the user duh
if (!_interaction.InRangeUnobstructed(origin, target, 0f, CollisionGroup.Opaque, uid => uid == user)) if (!_examine.InRangeUnOccluded(origin, target, SharedInteractionSystem.MaxRaycastRange, null))
{ {
// can only dash if the destination is visible on screen // can only dash if the destination is visible on screen
_popup.PopupClient(Loc.GetString("dash-ability-cant-see", ("item", uid)), user, user); _popup.PopupClient(Loc.GetString("dash-ability-cant-see", ("item", uid)), user, user);

View File

@@ -59,7 +59,7 @@ public sealed class StepTriggerSystem : EntitySystem
if (component.Blacklist != null && TryComp<MapGridComponent>(transform.GridUid, out var grid)) if (component.Blacklist != null && TryComp<MapGridComponent>(transform.GridUid, out var grid))
{ {
var positon = _map.LocalToTile(uid, grid, transform.Coordinates); var positon = _map.LocalToTile(transform.GridUid.Value, grid, transform.Coordinates);
var anch = _map.GetAnchoredEntitiesEnumerator(uid, grid, positon); var anch = _map.GetAnchoredEntitiesEnumerator(uid, grid, positon);
while (anch.MoveNext(out var ent)) while (anch.MoveNext(out var ent))