18 return {EffectWidgetsTypes.MASK_OCCLUDER, EffectWidgetsTypes.MASK_BREATH};
28 GetInventory().CreateInInventory(
"GasMask_Filter");
33 return FindAttachmentBySlotName(
"GasMaskFilter");
40 if (filter && !filter.IsRuined() && filter.GetQuantity() > 0)
52 return filter.GetQuantityMax();
64 return filter.GetQuantity();
81 quantity = filter.GetQuantity();
95 return ItemBase.Cast(FindAttachmentBySlotName(
"GasMaskFilter")) != null;
115 itemToConsume =
this;
119 itemToConsume = filter;
123 itemToConsume.AddQuantity(-quantity);
135 float damage = quantity * filter.GetFilterDamageRatio();
136 filter.AddHealth(
"",
"", -damage);
141 super.InitGlobalExclusionValues();
143 AddSingleExclusionValueGlobal(EAttExclusions.EXCLUSION_MASK_2);
145 AddSingleExclusionValueGlobal(EAttExclusions.EXCLUSION_GLASSES_TIGHT_0);
146 AddSingleExclusionValueGlobal(EAttExclusions.EXCLUSION_HEADGEAR_HELMET_0);
ECachedEquipmentItemCategory
override float GetQuantity()
override bool HasQuantity()
override int GetQuantityMax()
override void OnDebugSpawn()
override ECachedEquipmentItemCategory GetCachedEquipmentCategory()
bool ConsumeQuantity(float quantity, PlayerBase consumer_player)
float GetFilterQuantityMax()
override array< int > GetEffectWidgetTypes()
override bool AllowFoodConsumption()
bool HasIntegratedFilter()
float GetFilterQuantity()
float m_LowFilterEventTime
EntityAI GetExternalFilter()
float GetFilterQuantity01()
bool HasValidFilter()
has either external or integrated non-empty non-ruined filter ?
void OnQuantityConsumed(notnull ItemBase filter, PlayerBase consumer_player)
bool IsExternalFilterAttached()
void OnQuantityConsumed(notnull ItemBase filter, PlayerBase consumer_player, float quantity)
bool CanHaveExternalFilter()
override bool IsGasMask()
void InitGlobalExclusionValues()
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...