Added Pain Numbness Trait (#34538)

* added pain-numbness component and system

* added numb as a trait that pulls the pain numbness component

* removed new event as mob threshold event as already being fired

* checked for MobThresholdsComponent first before running VerifyThresholds

* refacted force say to using LocalizedDatasetPrototype and added numb messages

* added severity check alert

* added comment for BeforeForceSayEvent

* removed space formatting

* changed Cancelled to CancelUpdate, fixed spacing and added two more damage-force-say-numb

* changed prefix damage-force-say-numb to 5 (whoops)
This commit is contained in:
Coolsurf6
2025-01-27 20:34:20 +10:00
committed by GitHub
parent 1b9d84a16e
commit 012c835559
14 changed files with 174 additions and 14 deletions

View File

@@ -4,6 +4,7 @@ using Content.Shared.Alert;
using Content.Shared.Damage;
using Content.Shared.FixedPoint;
using Content.Shared.Mobs.Components;
using Content.Shared.Mobs.Events;
using Robust.Shared.GameStates;
namespace Content.Shared.Mobs.Systems;
@@ -391,6 +392,16 @@ public sealed class MobThresholdSystem : EntitySystem
if (alertPrototype.SupportsSeverity)
{
var severity = _alerts.GetMinSeverity(currentAlert);
var ev = new BeforeAlertSeverityCheckEvent(currentAlert, severity);
RaiseLocalEvent(target, ev);
if (ev.CancelUpdate)
{
_alerts.ShowAlert(target, ev.CurrentAlert, ev.Severity);
return;
}
if (TryGetNextState(target, currentMobState, out var nextState, threshold) &&
TryGetPercentageForState(target, nextState.Value, damageable.TotalDamage, out var percentage))
{