Need to merge this

This commit is contained in:
Pieter-Jan Briers
2020-03-25 11:16:57 +01:00
parent 42814fcfe7
commit 705aeceba6
7 changed files with 104 additions and 121 deletions

View File

@@ -1,6 +1,9 @@
using System;
using Robust.Shared.GameObjects;
using Robust.Shared.Interfaces.Timing;
using Robust.Shared.IoC;
using Robust.Shared.Serialization;
using Robust.Shared.ViewVariables;
namespace Content.Shared.GameObjects.Components.Mobs
{
@@ -9,6 +12,50 @@ namespace Content.Shared.GameObjects.Components.Mobs
public sealed override uint? NetID => ContentNetIDs.COMBATMODE;
public override string Name => "CombatMode";
private bool _isInCombatMode;
private TargetingZone _activeZone;
[ViewVariables(VVAccess.ReadWrite)]
public virtual bool IsInCombatMode
{
get => _isInCombatMode;
set
{
var gt = IoCManager.Resolve<IGameTiming>();
_isInCombatMode = value;
Dirty();
}
}
[ViewVariables(VVAccess.ReadWrite)]
public virtual TargetingZone ActiveZone
{
get => _activeZone;
set
{
_activeZone = value;
Dirty();
}
}
public override void HandleComponentState(ComponentState curState, ComponentState nextState)
{
base.HandleComponentState(curState, nextState);
if (!(curState is CombatModeComponentState state))
return;
IsInCombatMode = state.IsInCombatMode;
ActiveZone = state.TargetingZone;
}
public override ComponentState GetComponentState()
{
return new CombatModeComponentState(IsInCombatMode, ActiveZone);
}
[Serializable, NetSerializable]
protected sealed class CombatModeComponentState : ComponentState
{