[ValidatePrototypeId<SatiationIconPrototype>]
private const string HungerIconStarvingId = "HungerIconStarving";
- private SatiationIconPrototype? _hungerIconOverfed;
- private SatiationIconPrototype? _hungerIconPeckish;
- private SatiationIconPrototype? _hungerIconStarving;
-
public override void Initialize()
{
base.Initialize();
- DebugTools.Assert(_prototype.TryIndex(HungerIconOverfedId, out _hungerIconOverfed) &&
- _prototype.TryIndex(HungerIconPeckishId, out _hungerIconPeckish) &&
- _prototype.TryIndex(HungerIconStarvingId, out _hungerIconStarving));
-
SubscribeLocalEvent<HungerComponent, MapInitEvent>(OnMapInit);
SubscribeLocalEvent<HungerComponent, ComponentShutdown>(OnShutdown);
SubscribeLocalEvent<HungerComponent, RefreshMovementSpeedModifiersEvent>(OnRefreshMovespeed);
switch (component.CurrentThreshold)
{
case HungerThreshold.Overfed:
- prototype = _hungerIconOverfed;
+ _prototype.TryIndex(HungerIconOverfedId, out prototype);
break;
case HungerThreshold.Peckish:
- prototype = _hungerIconPeckish;
+ _prototype.TryIndex(HungerIconPeckishId, out prototype);
break;
case HungerThreshold.Starving:
- prototype = _hungerIconStarving;
+ _prototype.TryIndex(HungerIconStarvingId, out prototype);
break;
default:
prototype = null;
using Robust.Shared.Random;
using Robust.Shared.Timing;
using Robust.Shared.Utility;
+using System.Diagnostics.CodeAnalysis;
namespace Content.Shared.Nutrition.EntitySystems;
[ValidatePrototypeId<SatiationIconPrototype>]
private const string ThirstIconParchedId = "ThirstIconParched";
- private SatiationIconPrototype? _thirstIconOverhydrated = null;
- private SatiationIconPrototype? _thirstIconThirsty = null;
- private SatiationIconPrototype? _thirstIconParched = null;
-
public override void Initialize()
{
base.Initialize();
- DebugTools.Assert(_prototype.TryIndex(ThirstIconOverhydratedId, out _thirstIconOverhydrated) &&
- _prototype.TryIndex(ThirstIconThirstyId, out _thirstIconThirsty) &&
- _prototype.TryIndex(ThirstIconParchedId, out _thirstIconParched));
-
SubscribeLocalEvent<ThirstComponent, RefreshMovementSpeedModifiersEvent>(OnRefreshMovespeed);
SubscribeLocalEvent<ThirstComponent, MapInitEvent>(OnMapInit);
SubscribeLocalEvent<ThirstComponent, RejuvenateEvent>(OnRejuvenate);
}
}
- public bool TryGetStatusIconPrototype(ThirstComponent component, out SatiationIconPrototype? prototype)
+ public bool TryGetStatusIconPrototype(ThirstComponent component, [NotNullWhen(true)] out SatiationIconPrototype? prototype)
{
switch (component.CurrentThirstThreshold)
{
case ThirstThreshold.OverHydrated:
- prototype = _thirstIconOverhydrated;
- return true;
+ _prototype.TryIndex(ThirstIconOverhydratedId, out prototype);
+ break;
case ThirstThreshold.Thirsty:
- prototype = _thirstIconThirsty;
- return true;
+ _prototype.TryIndex(ThirstIconThirstyId, out prototype);
+ break;
case ThirstThreshold.Parched:
- prototype = _thirstIconParched;
- return true;
+ _prototype.TryIndex(ThirstIconParchedId, out prototype);
+ break;
default:
prototype = null;
- return false;
+ break;
}
+
+ return prototype != null;
}
private void UpdateEffects(EntityUid uid, ThirstComponent component)