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

◆ AffectLiquidContainerOnTransfer() [2/2]

override void Bottle_Base::AffectLiquidContainerOnTransfer ( int liquidType,
float amount,
float sourceLiquidTemperature )
inlineprivate

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

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

Перекрестные ссылки 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().