medibot toctou gaming (#22608)
Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
@@ -16,8 +16,9 @@ namespace Content.Server.NPC.HTN.PrimitiveTasks.Operators.Specific;
|
|||||||
public sealed partial class MedibotInjectOperator : HTNOperator
|
public sealed partial class MedibotInjectOperator : HTNOperator
|
||||||
{
|
{
|
||||||
[Dependency] private readonly IEntityManager _entMan = default!;
|
[Dependency] private readonly IEntityManager _entMan = default!;
|
||||||
private SharedAudioSystem _audio = default!;
|
|
||||||
private ChatSystem _chat = default!;
|
private ChatSystem _chat = default!;
|
||||||
|
private MedibotSystem _medibot = default!;
|
||||||
|
private SharedAudioSystem _audio = default!;
|
||||||
private SharedInteractionSystem _interaction = default!;
|
private SharedInteractionSystem _interaction = default!;
|
||||||
private SharedPopupSystem _popup = default!;
|
private SharedPopupSystem _popup = default!;
|
||||||
private SolutionContainerSystem _solution = default!;
|
private SolutionContainerSystem _solution = default!;
|
||||||
@@ -31,8 +32,9 @@ public sealed partial class MedibotInjectOperator : HTNOperator
|
|||||||
public override void Initialize(IEntitySystemManager sysManager)
|
public override void Initialize(IEntitySystemManager sysManager)
|
||||||
{
|
{
|
||||||
base.Initialize(sysManager);
|
base.Initialize(sysManager);
|
||||||
_audio = sysManager.GetEntitySystem<SharedAudioSystem>();
|
|
||||||
_chat = sysManager.GetEntitySystem<ChatSystem>();
|
_chat = sysManager.GetEntitySystem<ChatSystem>();
|
||||||
|
_medibot = sysManager.GetEntitySystem<MedibotSystem>();
|
||||||
|
_audio = sysManager.GetEntitySystem<SharedAudioSystem>();
|
||||||
_interaction = sysManager.GetEntitySystem<SharedInteractionSystem>();
|
_interaction = sysManager.GetEntitySystem<SharedInteractionSystem>();
|
||||||
_popup = sysManager.GetEntitySystem<SharedPopupSystem>();
|
_popup = sysManager.GetEntitySystem<SharedPopupSystem>();
|
||||||
_solution = sysManager.GetEntitySystem<SolutionContainerSystem>();
|
_solution = sysManager.GetEntitySystem<SolutionContainerSystem>();
|
||||||
@@ -75,8 +77,7 @@ public sealed partial class MedibotInjectOperator : HTNOperator
|
|||||||
return HTNOperatorStatus.Failed;
|
return HTNOperatorStatus.Failed;
|
||||||
|
|
||||||
var state = mobState.CurrentState;
|
var state = mobState.CurrentState;
|
||||||
var treatment = botComp.Treatments[mobState.CurrentState];
|
if (!_medibot.TryGetTreatment(botComp, mobState.CurrentState, out var treatment) || !treatment.IsValid(total))
|
||||||
if (!treatment.IsValid(total))
|
|
||||||
return HTNOperatorStatus.Failed;
|
return HTNOperatorStatus.Failed;
|
||||||
|
|
||||||
_entMan.EnsureComponent<NPCRecentlyInjectedComponent>(target);
|
_entMan.EnsureComponent<NPCRecentlyInjectedComponent>(target);
|
||||||
|
|||||||
Reference in New Issue
Block a user