Make combat feel 100x better with this one simple trick (#8231)

This commit is contained in:
Kara
2022-05-17 02:57:28 -07:00
committed by GitHub
parent 8e78d509e7
commit 033efef5f5
6 changed files with 3 additions and 24 deletions

View File

@@ -107,7 +107,6 @@ namespace Content.Client.EscapeMenu.UI.Tabs
AddHeader("ui-options-header-interaction-basic"); AddHeader("ui-options-header-interaction-basic");
AddButton(EngineKeyFunctions.Use); AddButton(EngineKeyFunctions.Use);
AddButton(ContentKeyFunctions.WideAttack);
AddButton(ContentKeyFunctions.UseItemInHand); AddButton(ContentKeyFunctions.UseItemInHand);
AddButton(ContentKeyFunctions.AltUseItemInHand); AddButton(ContentKeyFunctions.AltUseItemInHand);
AddButton(ContentKeyFunctions.ActivateItemInWorld); AddButton(ContentKeyFunctions.ActivateItemInWorld);

View File

@@ -46,7 +46,6 @@ namespace Content.Client.Input
human.AddFunction(ContentKeyFunctions.SmartEquipBackpack); human.AddFunction(ContentKeyFunctions.SmartEquipBackpack);
human.AddFunction(ContentKeyFunctions.SmartEquipBelt); human.AddFunction(ContentKeyFunctions.SmartEquipBelt);
human.AddFunction(ContentKeyFunctions.MouseMiddle); human.AddFunction(ContentKeyFunctions.MouseMiddle);
human.AddFunction(ContentKeyFunctions.WideAttack);
human.AddFunction(ContentKeyFunctions.ArcadeUp); human.AddFunction(ContentKeyFunctions.ArcadeUp);
human.AddFunction(ContentKeyFunctions.ArcadeDown); human.AddFunction(ContentKeyFunctions.ArcadeDown);
human.AddFunction(ContentKeyFunctions.ArcadeLeft); human.AddFunction(ContentKeyFunctions.ArcadeLeft);

View File

@@ -39,8 +39,6 @@ namespace Content.Server.Interaction
SubscribeNetworkEvent<DragDropRequestEvent>(HandleDragDropRequestEvent); SubscribeNetworkEvent<DragDropRequestEvent>(HandleDragDropRequestEvent);
CommandBinds.Builder CommandBinds.Builder
.Bind(ContentKeyFunctions.WideAttack,
new PointerInputCmdHandler(HandleWideAttack))
.Bind(ContentKeyFunctions.TryPullObject, .Bind(ContentKeyFunctions.TryPullObject,
new PointerInputCmdHandler(HandleTryPullObject)) new PointerInputCmdHandler(HandleTryPullObject))
.Register<InteractionSystem>(); .Register<InteractionSystem>();
@@ -128,21 +126,6 @@ namespace Content.Server.Interaction
} }
#endregion #endregion
private bool HandleWideAttack(ICommonSession? session, EntityCoordinates coords, EntityUid uid)
{
// client sanitization
if (!ValidateClientInput(session, coords, uid, out var userEntity))
{
Logger.InfoS("system.interaction", $"WideAttack input validation failed");
return true;
}
if (TryComp(userEntity, out CombatModeComponent? combatMode) && combatMode.IsInCombatMode)
DoAttack(userEntity.Value, coords, true);
return true;
}
/// <summary> /// <summary>
/// Entity will try and use their active hand at the target location. /// Entity will try and use their active hand at the target location.
/// Don't use for players /// Don't use for players

View File

@@ -5,7 +5,6 @@ namespace Content.Shared.Input
[KeyFunctions] [KeyFunctions]
public static class ContentKeyFunctions public static class ContentKeyFunctions
{ {
public static readonly BoundKeyFunction WideAttack = "WideAttack";
public static readonly BoundKeyFunction UseItemInHand = "ActivateItemInHand"; public static readonly BoundKeyFunction UseItemInHand = "ActivateItemInHand";
public static readonly BoundKeyFunction AltUseItemInHand = "AltActivateItemInHand"; public static readonly BoundKeyFunction AltUseItemInHand = "AltActivateItemInHand";
public static readonly BoundKeyFunction ActivateItemInWorld = "ActivateItemInWorld"; public static readonly BoundKeyFunction ActivateItemInWorld = "ActivateItemInWorld";

View File

@@ -192,7 +192,9 @@ namespace Content.Shared.Interaction
// TODO COMBAT Consider using alt-interact for advanced combat? maybe alt-interact disarms? // TODO COMBAT Consider using alt-interact for advanced combat? maybe alt-interact disarms?
if (!altInteract && TryComp(user, out SharedCombatModeComponent? combatMode) && combatMode.IsInCombatMode) if (!altInteract && TryComp(user, out SharedCombatModeComponent? combatMode) && combatMode.IsInCombatMode)
{ {
DoAttack(user, coordinates, false, target); // Wide attack if there isn't a target or the target is out of range, click attack otherwise.
var shouldWideAttack = target == null || !InRangeUnobstructed(user, target.Value);
DoAttack(user, coordinates, shouldWideAttack, target);
return; return;
} }

View File

@@ -17,9 +17,6 @@ binds:
type: State type: State
key: MouseLeft key: MouseLeft
canFocus: true canFocus: true
- function: WideAttack
type: State
key: Space
- function: ShowDebugMonitors - function: ShowDebugMonitors
type: Toggle type: Toggle
key: F3 key: F3