DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ AffectLiquidContainerOnTransfer()

override void FilteringBottle::AffectLiquidContainerOnTransfer ( int liquidType,
float amount,
float sourceLiquidTemperature )
inlineprotected

См. определение в файле FilteringBottle.c строка 93

94 {
95 //does damage if receiving scalding liquid
96 if (sourceLiquidTemperature >= GetItemOverheatThreshold())
97 {
98 float temperatureDiff = sourceLiquidTemperature - GetTemperature();
99 float tTime = Math.Clamp(Math.InverseLerp(DAMAGE_ENVIRO_TEMPDIFF_MIN,DAMAGE_ENVIRO_TEMPDIFF_MAX,temperatureDiff),0,1);
100 float temperatureDiffCoef = Math.Lerp(DAMAGE_ENVIRO_LIQUID_COEF_MIN,DAMAGE_ENVIRO_LIQUID_COEF_MAX,tTime);
101 float damageVal = GetMaxHealth("","Health") / GetQuantityMax();
102 DecreaseHealth(amount * damageVal * temperatureDiffCoef,false);
103 }
104 }
override int GetQuantityMax()
Определения ItemBase.c:8106
override float GetItemOverheatThreshold()
disregards liquid boil threshold if filled
Определения FilteringBottle.c:107
const float DAMAGE_ENVIRO_LIQUID_COEF_MAX
Определения FilteringBottle.c:6
const float DAMAGE_ENVIRO_TEMPDIFF_MIN
Определения FilteringBottle.c:7
const float DAMAGE_ENVIRO_TEMPDIFF_MAX
Определения FilteringBottle.c:8
const float DAMAGE_ENVIRO_LIQUID_COEF_MIN
Определения FilteringBottle.c:5

Перекрестные ссылки Math::Clamp(), DAMAGE_ENVIRO_LIQUID_COEF_MAX, DAMAGE_ENVIRO_LIQUID_COEF_MIN, DAMAGE_ENVIRO_TEMPDIFF_MAX, DAMAGE_ENVIRO_TEMPDIFF_MIN, GetItemOverheatThreshold(), GetQuantityMax(), Math::InverseLerp() и Math::Lerp().