Deprecate IActionBlocker ChangeDirectionAttempt (#4851)
* Deprecate IActionBlocker ChangeDirectionAttempt * Woops
This commit is contained in:
@@ -272,15 +272,6 @@ namespace Content.Shared.ActionBlocker
|
|||||||
|
|
||||||
RaiseLocalEvent(entity.Uid, ev);
|
RaiseLocalEvent(entity.Uid, ev);
|
||||||
|
|
||||||
foreach (var blocker in ev.Entity.GetAllComponents<IActionBlocker>())
|
|
||||||
{
|
|
||||||
if (!blocker.CanChangeDirection())
|
|
||||||
{
|
|
||||||
ev.Cancel();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return !ev.Cancelled;
|
return !ev.Cancelled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -39,8 +39,5 @@ namespace Content.Shared.ActionBlocker
|
|||||||
|
|
||||||
[Obsolete("Use UnequipAttemptEvent instead")]
|
[Obsolete("Use UnequipAttemptEvent instead")]
|
||||||
bool CanUnequip() => true;
|
bool CanUnequip() => true;
|
||||||
|
|
||||||
[Obsolete("Use ChangeDirectionAttemptEvent instead")]
|
|
||||||
bool CanChangeDirection() => true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using Content.Shared.ActionBlocker;
|
|
||||||
using Content.Shared.DragDrop;
|
using Content.Shared.DragDrop;
|
||||||
using Content.Shared.EffectBlocker;
|
using Content.Shared.EffectBlocker;
|
||||||
using Content.Shared.Interaction;
|
using Content.Shared.Interaction;
|
||||||
@@ -12,7 +11,7 @@ using Robust.Shared.ViewVariables;
|
|||||||
namespace Content.Shared.Buckle.Components
|
namespace Content.Shared.Buckle.Components
|
||||||
{
|
{
|
||||||
[NetworkedComponent()]
|
[NetworkedComponent()]
|
||||||
public abstract class SharedBuckleComponent : Component, IActionBlocker, IEffectBlocker, IDraggable
|
public abstract class SharedBuckleComponent : Component, IEffectBlocker, IDraggable
|
||||||
{
|
{
|
||||||
public sealed override string Name => "Buckle";
|
public sealed override string Name => "Buckle";
|
||||||
|
|
||||||
@@ -36,11 +35,6 @@ namespace Content.Shared.Buckle.Components
|
|||||||
|
|
||||||
public abstract bool TryBuckle(IEntity? user, IEntity to);
|
public abstract bool TryBuckle(IEntity? user, IEntity to);
|
||||||
|
|
||||||
bool IActionBlocker.CanChangeDirection()
|
|
||||||
{
|
|
||||||
return !Buckled;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool IEffectBlocker.CanFall() => !Buckled;
|
bool IEffectBlocker.CanFall() => !Buckled;
|
||||||
|
|
||||||
bool IDraggable.CanDrop(CanDropEvent args)
|
bool IDraggable.CanDrop(CanDropEvent args)
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using Content.Shared.Buckle.Components;
|
using Content.Shared.Buckle.Components;
|
||||||
|
using Content.Shared.Interaction.Events;
|
||||||
using Content.Shared.Movement;
|
using Content.Shared.Movement;
|
||||||
using Content.Shared.Standing;
|
using Content.Shared.Standing;
|
||||||
using Content.Shared.Throwing;
|
using Content.Shared.Throwing;
|
||||||
@@ -17,6 +18,13 @@ namespace Content.Shared.Buckle
|
|||||||
SubscribeLocalEvent<SharedBuckleComponent, StandAttemptEvent>(HandleStand);
|
SubscribeLocalEvent<SharedBuckleComponent, StandAttemptEvent>(HandleStand);
|
||||||
SubscribeLocalEvent<SharedBuckleComponent, ThrowPushbackAttemptEvent>(HandleThrowPushback);
|
SubscribeLocalEvent<SharedBuckleComponent, ThrowPushbackAttemptEvent>(HandleThrowPushback);
|
||||||
SubscribeLocalEvent<SharedBuckleComponent, MovementAttemptEvent>(HandleMove);
|
SubscribeLocalEvent<SharedBuckleComponent, MovementAttemptEvent>(HandleMove);
|
||||||
|
SubscribeLocalEvent<SharedBuckleComponent, ChangeDirectionAttemptEvent>(OnBuckleChangeDirectionAttempt);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnBuckleChangeDirectionAttempt(EntityUid uid, SharedBuckleComponent component, ChangeDirectionAttemptEvent args)
|
||||||
|
{
|
||||||
|
if (component.Buckled)
|
||||||
|
args.Cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HandleMove(EntityUid uid, SharedBuckleComponent component, MovementAttemptEvent args)
|
private void HandleMove(EntityUid uid, SharedBuckleComponent component, MovementAttemptEvent args)
|
||||||
|
|||||||
@@ -368,11 +368,6 @@ namespace Content.Shared.MobState.Components
|
|||||||
{
|
{
|
||||||
return CurrentState?.CanUnequip() ?? true;
|
return CurrentState?.CanUnequip() ?? true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool IActionBlocker.CanChangeDirection()
|
|
||||||
{
|
|
||||||
return CurrentState?.CanChangeDirection() ?? true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Serializable, NetSerializable]
|
[Serializable, NetSerializable]
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using Content.Shared.Damage;
|
using Content.Shared.Damage;
|
||||||
|
using Content.Shared.Interaction.Events;
|
||||||
using Content.Shared.MobState.Components;
|
using Content.Shared.MobState.Components;
|
||||||
using Content.Shared.MobState.State;
|
using Content.Shared.MobState.State;
|
||||||
using Content.Shared.Movement;
|
using Content.Shared.Movement;
|
||||||
@@ -14,6 +15,7 @@ namespace Content.Shared.MobState.EntitySystems
|
|||||||
{
|
{
|
||||||
base.Initialize();
|
base.Initialize();
|
||||||
|
|
||||||
|
SubscribeLocalEvent<MobStateComponent, ChangeDirectionAttemptEvent>(OnChangeDirectionAttempt);
|
||||||
SubscribeLocalEvent<MobStateComponent, StartPullAttemptEvent>(OnStartPullAttempt);
|
SubscribeLocalEvent<MobStateComponent, StartPullAttemptEvent>(OnStartPullAttempt);
|
||||||
SubscribeLocalEvent<MobStateComponent, DamageChangedEvent>(UpdateState);
|
SubscribeLocalEvent<MobStateComponent, DamageChangedEvent>(UpdateState);
|
||||||
SubscribeLocalEvent<MobStateComponent, MovementAttemptEvent>(OnMoveAttempt);
|
SubscribeLocalEvent<MobStateComponent, MovementAttemptEvent>(OnMoveAttempt);
|
||||||
@@ -21,6 +23,17 @@ namespace Content.Shared.MobState.EntitySystems
|
|||||||
// Note that there's no check for Down attempts because if a mob's in crit or dead, they can be downed...
|
// Note that there's no check for Down attempts because if a mob's in crit or dead, they can be downed...
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OnChangeDirectionAttempt(EntityUid uid, MobStateComponent component, ChangeDirectionAttemptEvent args)
|
||||||
|
{
|
||||||
|
switch (component.CurrentState)
|
||||||
|
{
|
||||||
|
case SharedDeadMobState:
|
||||||
|
case SharedCriticalMobState:
|
||||||
|
args.Cancel();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void OnStartPullAttempt(EntityUid uid, MobStateComponent component, StartPullAttemptEvent args)
|
private void OnStartPullAttempt(EntityUid uid, MobStateComponent component, StartPullAttemptEvent args)
|
||||||
{
|
{
|
||||||
if(component.IsIncapacitated())
|
if(component.IsIncapacitated())
|
||||||
|
|||||||
@@ -83,10 +83,5 @@ namespace Content.Shared.MobState.State
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual bool CanChangeDirection()
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -85,10 +85,5 @@ namespace Content.Shared.MobState.State
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool CanChangeDirection()
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,11 +94,6 @@ namespace Content.Shared.MobState.State
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool CanChangeDirection()
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool CanShiver()
|
public bool CanShiver()
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -71,10 +71,5 @@ namespace Content.Shared.MobState.State
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool CanChangeDirection()
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user