Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
Math library

Data Structures

class  Math

Functions

void Math ()
void ~Math ()
static proto float AbsFloat (float f)
 Returns absolute value.
static proto int AbsInt (int i)
 Returns absolute value.
static proto float Acos (float c)
 Returns angle in radians from cosinus.
static proto float AreaOfRightTriangle (float s, float a)
 Returns area of a right triangle.
static proto float Asin (float s)
 Returns angle in radians from sinus.
static proto float Atan (float x)
 Returns angle in radians from tangent.
static proto float Atan2 (float y, float x)
 Returns angle in radians from tangent.
static proto float Ceil (float f)
 Returns ceil of value.
static vector CenterOfRectangle (vector min, vector max)
static proto float Clamp (float value, float min, float max)
 Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float Cos (float angle)
 Returns cosinus of angle in radians.
static proto float DiffAngle (float angle1, float angle2)
 Return relative difference between angles.
static int Factorial (int val)
 values above '12' will cause int overflow
static proto float Floor (float f)
 Returns floor of value.
static proto int GetNthBitSet (int value, int n)
 returns the the index of n-th bit set in a bit mask counting from the right, for instance, in a mask ..0110 1000 , the 0th set bit(right-most bit set to 1) is at 3th position(starting at 0), 1st bit is at 5th position, 2nd bit is at 6th position etc..
static proto int GetNumberOfSetBits (int i)
 returns the number of bits set in a bitmask i
static proto float HypotenuseOfRightTriangle (float s, float a)
 Returns hypotenus of a right triangle.
static proto float InverseLerp (float a, float b, float value)
 Calculates the linear value that produces the interpolant value within the range [a, b], it's an inverse of Lerp.
static proto bool IsInRange (float v, float min, float max)
 Returns if value is between min and max (inclusive).
static proto bool IsInRangeInt (int v, int min, int max)
 Returns if value is between min and max (inclusive).
static proto bool IsPointInCircle (vector c, float r, vector p)
 Returns if point is inside circle.
static proto bool IsPointInRectangle (vector mi, vector ma, vector p)
 Returns if point is inside rectangle.
static proto float Lerp (float a, float b, float time)
 Linearly interpolates between 'a' and 'b' given 'time'.
static proto float Log2 (float x)
 Returns the binary (base-2) logarithm of x.
static proto float Max (float x, float y)
 Returns bigger of two given values.
static proto float Min (float x, float y)
 Returns smaller of two given values.
static proto float ModFloat (float x, float y)
 Returns the floating-point remainder of x/y rounded towards zero.
static proto float NormalizeAngle (float ang)
 Normalizes the angle (0...360).
static float Poisson (float mean, int occurences)
 occurences values above '12' will cause Factorial to overflow int.
static proto float Pow (float v, float power)
 Return power of v ^ power.
static bool RandomBool ()
 Returns a random bool .
static proto float RandomFloat (float min, float max)
 Returns a random float number between and min[inclusive] and max[exclusive].
static float RandomFloat01 ()
 Returns a random float number between and min [inclusive] and max [inclusive].
static float RandomFloatInclusive (float min, float max)
 Returns a random float number between and min [inclusive] and max [inclusive].
static proto int RandomInt (int min, int max)
 Returns a random int number between and min [inclusive] and max [exclusive].
static int RandomIntInclusive (int min, int max)
 Returns a random int number between and min [inclusive] and max [inclusive].
static proto int Randomize (int seed)
 Sets the seed for the random number generator.
static proto float RemainderFloat (float x, float y)
 Returns the floating-point remainder of x/y rounded to nearest.
static float Remap (float inputMin, float inputMax, float outputMin, float outputMax, float inputValue, bool clampedOutput=true)
 Returns given value remaped from input range into output range.
static proto float Round (float f)
 Returns mathematical round of value.
static proto float SignFloat (float f)
 Returns sign of given value.
static proto int SignInt (int i)
 Returns sign of given value.
static proto float Sin (float angle)
 Returns sinus of angle in radians.
static proto float SmoothCD (float val, float target, inout float velocity[], float smoothTime, float maxVelocity, float dt)
 Does the CD smoothing function - easy in | easy out / S shaped smoothing.
static float SmoothCDPI2PI (float val, float target, inout float velocity[], float smoothTime, float maxVelocity, float dt)
static proto float SqrFloat (float f)
 Returns squared value.
static proto int SqrInt (int i)
 Returns squared value.
static proto float Sqrt (float val)
 Returns square root.
static proto float Tan (float angle)
 Returns tangent of angle in radians.
static bool VectorIsEqual (vector v1, vector v2, float tolerance)
 Returns if given vectors are equal with given tolerance.
static proto float WrapFloat (float f, float min, float max)
 Returns wrap number to specified interval [min, max[.
static proto float WrapFloat0X (float f, float max)
 Returns wrap number to specified interval [0, max[.
static proto float WrapFloat0XInclusive (float f, float max)
 Returns wrap number to specified interval, inclusive [0, max].
static proto float WrapFloatInclusive (float f, float min, float max)
 Returns wrap number to specified interval, inclusive [min, max].
static proto int WrapInt (int i, int min, int max)
 Returns wrap number to specified interval [min, max[.
static proto int WrapInt0X (int i, int max)
 Returns wrap number to specified interval [0, max[.

Variables

static const float DEG2RAD = 0.01745329251994329577
static const float EULER = 2.7182818284590452353
static const float PI = 3.14159265358979
static const float PI2 = 6.28318530717958
static const float PI_HALF = 1.570796326794
static const float RAD2DEG = 57.2957795130823208768

Detailed Description

Function Documentation

◆ Math()

void Math ( )
inlineprivate

Definition at line 8 of file enmath.c.

Referenced by RandomFloatInclusive(), RandomIntInclusive(), Remap(), SmoothCDPI2PI(), and VectorIsEqual().

◆ ~Math()

void ~Math ( )
inlineprivate

Definition at line 9 of file enmath.c.

◆ AbsFloat()

proto float AbsFloat ( float f)
staticprivate

Returns absolute value.

Parameters
ffloat Value
Returns
float - Absolute value
Print( Math.AbsFloat(-12.5) );
>> 12.5
proto void Print(void var)
Prints content of variable to console/log.
void Math()
Definition enmath.c:8

Referenced by DayZIntroScenePC::DayZIntroScenePC(), ActionCondition(), ActionEnterLadder::ActionCondition(), ActionFillBrakes::ActionCondition(), SoftSkillsManager::AddSpecialty(), DayZPlayerImplementAiming::ApplyHorizontalNoise(), Math3D::BoxSize(), WorldData::CalcBaseEnvironmentTemperature(), CalculateEyeAcco(), CCTWaterSurface::Can(), DebugMonitorValues::CheckBlood(), Managed::CheckBlood(), DebugMonitorValues::CheckHealth(), Managed::CheckHealth(), BaseBuildingBase::CheckMemoryPointVerticalDistance(), DayZPlayerImplementHeading::ClampAngle(), StaminaHandler::DepleteStaminaEx(), Car::EOnPostSimulate(), EvaluateComponentEx(), EvaluateHit_Player(), EntityLightSource::FadeBrightnessTo(), EntityLightSource::FadeRadiusTo(), DayZInfected::FightLogic(), FilterObstructedObjectsByGrouping(), Weapon::GetApproximateMovementOffset(), Weapon_Base::GetApproximateMovementOffset(), DayZInfected::GetAttackPitch(), GetCollisionBoxSize(), GetEnvironmentTemperature(), GetMeleeTargetEx(), ActionTargetsCursor::GetOnScreenPosition(), SoftSkillsManager::GetPreciseRoughLevels(), GetRadius(), Transport::GetSpeedometerAbsolute(), DayZInfected::HandleMove(), DayZPlayer::HandleView(), DayZPlayer::HandleWeapons(), InitData(), AttachmentsOutOfReach::IsAttachmentReachable(), Hologram::IsBaseFlat(), Hologram::IsCollidingAngle(), BaseBuildingBase::IsFacingPlayer(), ManBase::IsFacingTarget(), IsPlayerOrientedTowardPos(), PointLightBase::OnFrameLightSource(), Car::OnInput(), InventoryActionHandler::OnUpdate(), OnUpdate(), DayZPlayerImplementAiming::ProcessAimFilters(), ProcessHeatComfort(), ManBase::SendLiftWeaponSync(), Set(), Weapon_Base::SetCylinderRotationAnimationPhase(), EntityLightSource::SetDancingShadowsAmplitude(), EntityLightSource::SetDancingShadowsMovementSpeed(), PPERequester_GameplayBase::SetEffectProgress(), EntityLightSource::SetFlickerAmplitude(), Hologram::SmoothProjectionMovement(), EnProfilerTests::TestClassTimeData(), EnProfilerTests::TestFuncTimeData(), AnimationTimer::Tick(), AnimatorTimer::Tick(), ScriptedWidgetEventHandler::Update(), UIScriptedMenu::Update(), WeaponManager::Update(), UpdateLRAngleUnlocked(), BoatHud::UpdateSpeedPointer(), UpdateUDAngle(), UpdateUDAngleUnlocked(), UniversalTemperatureSourceLambdaBaseImpl::UpdateVicinityTemperatureRecursive(), and UniversalTemperatureSourceLambdaBaseImpl::WarmAndCoolItemsInVicinity().

◆ AbsInt()

◆ Acos()

◆ AreaOfRightTriangle()

proto float AreaOfRightTriangle ( float s,
float a )
staticprivate

Returns area of a right triangle.

Parameters
sfloat Length of adjacent leg
afloat Angle of corner bordering adjacent which is not the right corner (in radians)
Returns
float - Area

◆ Asin()

proto float Asin ( float s)
staticprivate

Returns angle in radians from sinus.

Parameters
sfloat Sinus
Returns
float - Angle in radians
Print( Math.Asin(0.707107) ); // (sinus 45)
>> 0.785398

Referenced by Easing::EaseInElastic(), Easing::EaseInOutElastic(), and Easing::EaseOutElastic().

◆ Atan()

proto float Atan ( float x)
staticprivate

Returns angle in radians from tangent.

Parameters
xfloat Tangent
Returns
float - Angle in radians

References x.

Referenced by PoweredOptic_Base::DoMeasurement(), and PPERequester_GameplayBase::SetEffectProgress().

◆ Atan2()

proto float Atan2 ( float y,
float x )
staticprivate

Returns angle in radians from tangent.

Parameters
yfloat Tangent
xfloat Tangent
Returns
float - Angle in radians
Print ( Math.Atan2(1, 1) );
>> 0.785398

References x, and y.

Referenced by DayZIntroScene::DayZIntroScene(), GetMousePointerAngle(), DayZInfected::HandleOrientation(), MeleeTargetSettings(), and PluginBase::OnUpdate().

◆ Ceil()

◆ CenterOfRectangle()

vector CenterOfRectangle ( vector min,
vector max )
inlinestaticprivate

Definition at line 751 of file enmath.c.

References Vector(), and x.

Referenced by RefreshTracksCache().

◆ Clamp()

proto float Clamp ( float value,
float min,
float max )
staticprivate

Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.

Parameters
valuefloat Value
minfloat Minimum value
maxfloat Maximum value
Returns
float - Clamped value
Print( Math.Clamp(-0.1, 0, 1) );
Print( Math.Clamp(2, 0, 1) );
Print( Math.Clamp(0.5, 0, 1) );
>> 0
>> 1
>> 0.5

Referenced by ShockDealtEffect::ShockDealtEffect(), Chat::Add(), ShockHandler::AddEffectBobbing(), ComponentEnergyManager::AddEnergy(), SoftSkillsManager::AddExponentialPrecise(), SoftSkillsManager::AddExponentialRough(), IEntity::AddHealthLevel(), SoftSkillsManager::AddLinearPrecise(), SoftSkillsManager::AddLinearRough(), BaseBuildingBase::AddRefresherTime01(), AddWetnessToFireplace(), AddWetnessToItem(), AdjustCameraParameters(), ItemBase::AdjustDetectionRange(), ActionRepairVehiclePartBase::AdjustVehicleHealthServer(), Bottle_Base::AffectLiquidContainerOnFill(), FilteringBottle::AffectLiquidContainerOnFill(), Bottle_Base::AffectLiquidContainerOnTransfer(), FilteringBottle::AffectLiquidContainerOnTransfer(), Hologram::AlignProjectionOnTerrain(), BaseBuildingBase::AnimateFlagEx(), RecoilBase::ApplyCamOffset(), RecoilBase::ApplyHandsOffset(), RecoilBase::ApplyMouseOffset(), Weapon::ApproximateWeaponLiftTransform(), InfluenzaAgent::AutoinfectCheck(), ShockHandler::BaseEffectIntensityCalc(), HitDirectionEffectBase::CalculateArrowPosition(), CalculateBreadCrumbs(), GameplayEffectWidgets_base::CalculateBreathEffect(), PluginBase::CalculateHealth(), DayZPlayerImplementAiming::CalculateSwayMultiplier(), ChernarusPlusData::CalculateVolFog(), EnochData::CalculateVolFog(), RecipeBase::CanDo(), Managed::CheckBlood(), ManBase::CheckLiftWeapon(), DayZPlayerImplementHeading::ClampAngle(), Barrel_ColorBase::ColourClothes(), WorldData::ComputeSnowflakeScale(), Cooling(), Car::DamageCrew(), DecreaseCookedItemQuantity(), UIScriptedMenu::DeleteKeyframe(), StaminaHandler::DepleteStaminaEx(), WrittenNoteData::DepleteWritingImplement(), InjurySoundHandlerBase::DetermineInjuryZone(), Hud::DisplayNotifier(), Hud::DisplayTendencyNormal(), RecipeBase::Do(), WeaponDebug::DrawLineOfFireCameraHybrid(), UniversalTemperatureSourceLambdaBaseImpl::DryItemsInVicinity(), EOnPostSimulate(), ItemBase::Fertilize(), CAContinuousFertilizeGardenSlot::FertilizeSlot(), PPEffects::FlashbangEffect(), ManBase::FreezeCheck(), ConstructionActionData::GetActualAttachmentToDetach(), GetAirResistanceForSmokeParticles(), Weapon::GetApproximateMovementOffset(), Weapon_Base::GetApproximateMovementOffset(), CatchingContextFishingRodAction::GetBaitLossChanceModifierClamped(), HeatComfortAnimHandler::GetEventTime(), ItemBase::GetFuel(), ManBase::GetHealthRegenSpeed(), CatchingContextFishingRodAction::GetHookLossChanceModifierClamped(), ManBase::GetImmunity(), CAContinuousQuantityEdible::GetProgress(), Hologram::GetProjectionEntityPosition(), SoundHandlerBase::GetStaminaState(), GetTemperatureColor(), UIScriptedMenu::GetTotalTime(), UIScriptedMenu::GetTutorialLineScale(), GetZone(), PlayerAgentPool::GrowAgents(), HandleFallDamage(), Entity::HandleFreezingProgression(), Entity::HandleItemOverheating(), DayZPlayer::HandleWeapons(), GameplayEffectWidgets_base::HandleWidgetRoot(), Heating(), PPEffects::HitEffect(), HitDirectionEffectBase::Init(), CatchingContextFishingRodAction::InitCatchingItemData(), Entity::InitItemVariables(), Weapon::LiftWeaponCheckEx(), ScriptedWidgetEventHandler::LoadEntries(), DayZCreature::ModCommandHandlerBefore(), RightArea::MoveUpDownIcons(), NormalizedTemperature(), ItemBase::OnAction(), BaseBuildingBase::OnCEUpdate(), ActionRefuelTorch::OnExecuteServer(), Grenade_Base::OnExplosionEffects(), ActionRepairCarPart::OnFinishProgressServer(), Car::OnInput(), CarScript::OnSound(), BleedingSourcesManagerBase::OnTick(), CommonColdMdfr::OnTick(), HeatComfortMdfr::OnTick(), InfluenzaMdfr::OnTick(), ModifierBase::OnTick(), OnTick(), ShockDamageMdfr::OnTick(), DayZPlayerCamera3rdPersonErc::OnUpdate(), OnUpdate(), OnUpdate(), TimerBase::OnUpdate(), SymptomBase::OnUpdateClient(), BoatScript::OnVehicleJumpOutServer(), Car::OnVehicleJumpOutServer(), GameplayEffectWidgets_base::OnVoiceEvent(), FlashbangEffect::PlaySound(), DayZPlayerImplementAiming::ProcessAimFilters(), RainProcurementHandler::ProcessBatch(), ProcessHeatComfort(), BleedingSourcesManagerBase::ProcessHit(), ProcessNoiseComponents(), MissionBase::RandomArtillery(), ScriptedWidgetEventHandler::RandomizePageIndex(), PlayerAgentPool::ReduceAgent(), ReduceContents(), PPERequesterBase::RelativizeValue(), PPERequester_GameplayBase::ReSampleChannels(), SanitizeString(), PluginBase::SelectedObjectSetDamage(), Managed::SendInitValues(), HudDebugWinHorticulture::SendRPCSpeed(), ManBase::SetBloodyHandsPenaltyChancePerAgent(), CatchingResultBasic::SetCatchChance(), InventoryItem::SetCleanness(), UniversalTemperatureSourceLambdaFireplace::SetCurrentTemperature(), PPEffects::SetDeathDarkening(), PPERequester_GameplayBase::SetEffectProgress(), ItemBase::SetFertilizerQuantity(), PPERequester_GameplayBase::SetFlashbangIntensity(), PPERequester_GameplayBase::SetInitialLenseOffset(), Entity::SetItemOverheatProgress(), CAContinuousRepeatFishing::SetNewSignalData(), CatchingResultBasic::SetQuality(), InventoryItem::SetQuantity(), InventoryItem::SetQuantityNormalized(), DimmingConfig::SetRandomBrightenSpeedLimits(), DimmingConfig::SetRandomBrigthnessLimits(), DimmingConfig::SetRandomDimSpeedLimits(), DimmingConfig::SetRandomDurationLimits(), DimmingConfig::SetRandomPauseDurationLimits(), BaseBuildingBase::SetRefreshTimer01(), PluginBase::SetStamina(), StaminaHandler::SetStamina(), Entity::SetTemperatureDirect(), Entity::SetTemperatureEx(), PlayerAgentPool::SetTemporaryResistance(), ItemBase::SetWaterQuantity(), InventoryItem::SetWet(), Hud::ShowPlayerTag(), ManBase::SimplifyShock(), SnapOnObject(), Transfer(), TruncateVec(), DamageDealtEffect::Update(), FlashbangEffect::Update(), HitDirectionEffectBase::Update(), NotificationUI::Update(), PPEMatClassParameterCommandData::Update(), RecoilBase::Update(), ShockDealtEffect::Update(), CatchingContextTrapsBase::UpdateBaseProbability(), UpdateCookingState(), IngameHudHeatBuffer::UpdateEffect(), LeftArea::UpdateSelectionIcons(), UpdateSize(), BoatHud::UpdateSpeedPointer(), UpdateTemperature(), BleedingIndicatorDropData::UpdateTransform(), and ValueToBar().

◆ Cos()

◆ DiffAngle()

proto float DiffAngle ( float angle1,
float angle2 )
staticprivate

Return relative difference between angles.

Parameters
angle1float
angle2float
Returns
float Difference between angles (angle1 - angle2)
Print( Math.DiffAngle(-45, 45) );
Print( Math.DiffAngle(90, 80) );
>> -90
>> 10

◆ Factorial()

int Factorial ( int val)
inlinestaticprivate

values above '12' will cause int overflow

Definition at line 714 of file enmath.c.

References ErrorEx.

Referenced by Poisson().

◆ Floor()

◆ GetNthBitSet()

proto int GetNthBitSet ( int value,
int n )
staticprivate

returns the the index of n-th bit set in a bit mask counting from the right, for instance, in a mask ..0110 1000 , the 0th set bit(right-most bit set to 1) is at 3th position(starting at 0), 1st bit is at 5th position, 2nd bit is at 6th position etc..

Referenced by AreaExposureMdfr::BleedingSourceCreateCheck(), PluginBase::InjectAgentsWithPlayer(), and PluginBase::InjectAgentsWithPlayerCount().

◆ GetNumberOfSetBits()

◆ HypotenuseOfRightTriangle()

proto float HypotenuseOfRightTriangle ( float s,
float a )
staticprivate

Returns hypotenus of a right triangle.

Parameters
sfloat Length of adjacent leg
afloat Angle of corner bordering adjacent which is not the right corner (in radians)
Returns
float - hypotenus

◆ InverseLerp()

proto float InverseLerp ( float a,
float b,
float value )
staticprivate

Calculates the linear value that produces the interpolant value within the range [a, b], it's an inverse of Lerp.

Parameters
afloat Start
bfloat End
valuefloat value
Returns
float - the time given the position between 'a' and 'b' given 'value', there is no clamp on 'value', to stay between [0..1] use 'value' between 'a' and 'b'
Print( Math.InverseLerp(3, 7, 5) );
>> 0.5

Referenced by ItemBase::AdjustDetectionRange(), Bottle_Base::AffectLiquidContainerOnFill(), FilteringBottle::AffectLiquidContainerOnFill(), Bottle_Base::AffectLiquidContainerOnTransfer(), FilteringBottle::AffectLiquidContainerOnTransfer(), RecoilBase::ApplyCamOffset(), Weapon::ApproximateWeaponLiftTransform(), CalcTemperatureFromTemperatureSource(), PluginBase::CalcTemperatureFromTemperatureSource(), BleedChanceData::CalculateBleedChance(), GameplayEffectWidgets_base::CalculateBreathEffect(), DebugMonitor::CalculateMapTile(), Managed::CheckBlood(), WorldData::ComputeSnowflakeScale(), ConvertMins12hToAlarmHand01(), Car::DamageCrew(), BroomBase::DebugSetHealthAndEnergy(), WeaponDebug::DrawLineOfFireCameraHybrid(), CGame::ExplosionEffects(), ManBase::FreezeCheck(), HeatComfortAnimHandler::GetEventTime(), Mask_Base::GetFilterQuantity01(), ManBase::GetHealthRegenSpeed(), GetNormalized(), InventoryItem::GetQuantityNormalized(), ManBase::GetStatLevelBorders(), GetVolumeContainingAgent01(), GetZone(), BoatScript::HandleBoatSplashSound(), HandleFallDamage(), MaskMdfr::HandleSounds(), Weapon::LiftWeaponCheckEx(), CatchingContextFishingRodAction::ModifySignalProbability(), NormalizedTemperature(), Car::OnInput(), ManBase::OnReceivedHit(), CGame::OnRPC(), BoatScript::OnSound(), BleedingSourcesManagerBase::OnTick(), HeatComfortMdfr::OnTick(), ModifierBase::OnTick(), PoisoningMdfr::OnTick(), ShockDamageMdfr::OnTick(), OnUpdate(), OnVariablesSynchronized(), BoatScript::OnVehicleJumpOutServer(), Car::OnVehicleJumpOutServer(), DayZPlayerImplementAiming::ProcessAimFilters(), ProcessHeatBuffer(), ScriptConsoleGeneralTab::RefreshDateWidgets(), PPERequesterBase::RelativizeValue(), KitchenTimer::SecondsTo01(), Managed::SendInitValues(), DamageDealtEffect::Update(), EffectBoatWaterBack::Update(), FlashbangEffect::Update(), HitDirectionEffectBase::Update(), KuruShake::Update(), RecoilBase::Update(), ShockDealtEffect::Update(), Update(), Update(), UpdateSliderValues(), BoatHud::UpdateSpeedPointer(), BleedingIndicatorDropData::UpdateTransform(), and UniversalTemperatureSourceLambdaBaseImpl::WarmAndCoolItemsInVicinity().

◆ IsInRange()

proto bool IsInRange ( float v,
float min,
float max )
staticprivate

Returns if value is between min and max (inclusive).

Parameters
vfloat Value
minfloat Minimum value
maxfloat Maximum value
Returns
bool - if value is within range [min,max]
Print( Math.IsInRange(6.9, 3.6, 9.3) );
>> true

Referenced by HeatComfortAnimHandler::Process(), ContaminatedArea_Local::SpawnParticles(), and TickState().

◆ IsInRangeInt()

proto bool IsInRangeInt ( int v,
int min,
int max )
staticprivate

Returns if value is between min and max (inclusive).

Parameters
vint Value
minint Minimum value
maxint Maximum value
Returns
bool - if value is within range [min,max]
Print( Math.IsInRangeInt(6, 3, 9) );
>> true

◆ IsPointInCircle()

proto bool IsPointInCircle ( vector c,
float r,
vector p )
staticprivate

Returns if point is inside circle.

Parameters
cvector Center of circle ([0] and [2] will be used, as a circle is 2D)
rfloat Radius of circle
pvector Point ([0] and [2] will be used, as a circle is 2D)
Returns
bool - True when point is in circle

◆ IsPointInRectangle()

proto bool IsPointInRectangle ( vector mi,
vector ma,
vector p )
staticprivate

Returns if point is inside rectangle.

Parameters
mivector Minimums of rectangle ([0] and [2] will be used, as a rectangle is 2D)
mavector Maximums of rectangle ([0] and [2] will be used, as a rectangle is 2D)
pvector Point ([0] and [2] will be used, as a rectangle is 2D)
Returns
bool - True when point is in rectangle

Referenced by PlayerInsideOfLocationFilter(), and PlayerInsideOfLocationFilter().

◆ Lerp()

proto float Lerp ( float a,
float b,
float time )
staticprivate

Linearly interpolates between 'a' and 'b' given 'time'.

Parameters
afloat Start
bfloat End
timefloat Time [value needs to be between 0..1 for correct results, no auto clamp applied]
Returns
float - The interpolated result between the two float values.
Print( Math.Lerp(3, 7, 0.5) );
>> 5

Referenced by KuruShake::KuruShake(), ShockDamageMdfr::ActivateCondition(), BleedingIndicatorDropData::AdjustColorSaturation(), ItemBase::AdjustDetectionRange(), Bottle_Base::AffectLiquidContainerOnFill(), FilteringBottle::AffectLiquidContainerOnFill(), Bottle_Base::AffectLiquidContainerOnTransfer(), FilteringBottle::AffectLiquidContainerOnTransfer(), PlayerSpawnHandler::ApplyAttributes(), DayZPlayerImplementAiming::ApplyBreathingPattern(), RecoilBase::ApplyCamOffset(), DayZPlayerImplementAiming::ApplyHorizontalNoise(), WorldData::CalcBaseEnvironmentTemperature(), BleedChanceData::CalculateBleedChance(), GameplayEffectWidgets_base::CalculateBreathEffect(), CalculateLinePointFade(), DayZPlayerImplementAiming::CalculateSwayMultiplier(), ChernarusPlusData::CalculateVolFog(), EnochData::CalculateVolFog(), SakhalData::CalculateVolFog(), WorldData::ComputeSnowflakeScale(), ConvertAlarmHand01ToMins(), ConvertAlarmHand01ToMins12h(), Car::DamageCrew(), StaminaHandler::DepleteStaminaEx(), DetermineSpecificFinisherType(), WeaponDebug::DrawLineOfFireCameraHybrid(), EOnPostSimulate(), CGame::ExplosionEffects(), PPERequester_GameplayBase::FadeColourMult(), PPEffects::FlashbangEffect(), ManBase::FreezeCheck(), Weapon::GetApproximateMovementOffset(), Weapon_Base::GetApproximateMovementOffset(), FishYieldItemBase::GetCycleTimeForYieldItem(), HeatComfortAnimHandler::GetEventTime(), ManBase::GetHealthRegenSpeed(), GetMeleeTargetEx(), Weapon::GetObstructionPenetrationDistance(), InventoryItem::GetTemperatureFreezeTime(), InventoryItem::GetTemperatureThawTime(), HandleDimming(), Entity::HandleFreezingProgression(), Entity::HandleItemOverheating(), MaskMdfr::HandleSounds(), DayZPlayer::HandleWeapons(), PPEffects::HitEffect(), MissionBenchmark::LerpCamera(), ShockHandler::LerpVignette(), PPEMatClassParameterColor::ModifyResultValues(), PlayerSoundEventBase::OnPlay(), PPERequester_GameplayBase::OnStart(), HeatComfortMdfr::OnTick(), ModifierBase::OnTick(), PoisoningMdfr::OnTick(), ShockDamageMdfr::OnTick(), ManBase::OnUnconsciousUpdate(), PPERequester_GameplayBase::OnUpdate(), TimerBase::OnUpdate(), GameplayEffectWidgets_base::OnVoiceEvent(), DayZPlayerImplementAiming::ProcessAimFilters(), PPERequester_GameplayBase::ProcessFading(), ProcessHeatBuffer(), PPERequester_GameplayBase::ProcessSimulation(), PPERequester_GameplayBase::ReSampleChannels(), IngameHudHeatBuffer::SetBaseAlpha(), PPERequester_GameplayBase::SetEffectProgress(), ComponentEnergyManager::SetEnergy0To1(), InventoryItem::SetQuantityNormalized(), ManBase::SimplifyShock(), Hologram::SmoothProjectionMovement(), ManBase::SpawnDrowningBubbles(), KitchenTimer::Time01ToSeconds(), DamageDealtEffect::Update(), HitDirectionEffectBase::Update(), PPEMatClassParameterCommandData::Update(), ShockDealtEffect::Update(), BleedingIndicatorDropData::UpdateAlpha(), IngameHudHeatBuffer::UpdateEffect(), BoatHud::UpdateSpeedPointer(), ScriptConsoleGeneralTab::UpdateTime(), BleedingIndicatorDropData::UpdateTransform(), HudDebugWinBase::UpdateValues(), and ValueToBar().

◆ Log2()

proto float Log2 ( float x)
staticprivate

Returns the binary (base-2) logarithm of x.

Parameters
xfloat Value whose logarithm is calculated.
Returns
float The binary logarithm of x: log2x.
If x is negative, it causes a domain error:
If x is zero, it may cause a pole error (depending on the library implementation).
Print( Math.Log2(1.0) );
>> 0.0

References x.

Referenced by DigestAgents(), and PluginRecipesManagerBase::SortIngredientsInRecipe().

◆ Max()

proto float Max ( float x,
float y )
staticprivate

Returns bigger of two given values.

Parameters
xfloat Value
yfloat Value
Returns
float - max value
Print( Math.Max(5.3, 2.8) );
>> 5.3

References x, and y.

Referenced by BleedingIndicatorDropData::BleedingIndicatorDropData(), Weapon::ApproximateBaseObstructionLength(), CalcTemperatureFromTemperatureSource(), PluginBase::CalcTemperatureFromTemperatureSource(), BleedChanceData::CalculateBleedChance(), CheckBaitCompatibility(), Cooling(), ReplaceItemWithNewLambda::CopyOldPropertiesToNew(), StaminaHandler::DepleteStaminaEx(), UniversalTemperatureSourceLambdaBaseImpl::DryItemsInVicinity(), Weapon::GetApproximateMovementOffset(), Weapon_Base::GetApproximateMovementOffset(), WorldData::GetBaseEnvTemperatureAtPosition(), Weapon::GetEffectiveAttachmentLength(), CfgGameplayHandler::GetMovementRotationSpeedJog(), CfgGameplayHandler::GetMovementRotationSpeedSprint(), CfgGameplayHandler::GetMovementTimeToSprint(), CfgGameplayHandler::GetMovementTimeToStrafeJog(), CfgGameplayHandler::GetMovementTimeToStrafeSprint(), InventoryItem::GetTemperatureFreezeTime(), GetTemperatureHeightCorrection(), InventoryItem::GetTemperatureThawTime(), UIScriptedMenu::GetTutorialLineScale(), GetWetDelta(), Entity::HandleFreezingProgression(), ItemBase::HandleItemFalling(), Entity::HandleItemOverheating(), HasMaterials(), ManBase::Init(), ItemOptics::InitCameraOverrideProperties(), InventoryItem::ItemBase(), MissionBenchmark::LerpCamera(), PPEMatClassParameterColor::ModifyResultValues(), ScriptConsoleGeneralTab::OnDoubleClick(), CholeraMdfr::OnTick(), HeavyMetalPhase2Mdfr::OnTick(), OnTick(), PoisoningMdfr::OnTick(), ProcessItemsDryness(), ProcessNutrients(), StaminaHandler::ProcessStaminaChanges(), StaminaHandler::RecalculateStaminaCap(), Ammunition_Base::SetFromProjectile(), Hologram::SetOnGround(), StaticConstructionMethods::SpawnConstructionMaterialPiles(), TakeMaterialsServer(), PluginBase::TransmitAgentsEx(), PPEMatClassParameterCommandData::Update(), Update(), BroomBase::UpdateParticle(), Container::UpdateRowVisibility(), FlammableBase::Upgrade(), PlayerRestrictedAreaInstance::ValidatePlayerRestrictedAreaPositions(), and UniversalTemperatureSourceLambdaBaseImpl::WarmAndCoolItemsInVicinity().

◆ Min()

◆ ModFloat()

proto float ModFloat ( float x,
float y )
staticprivate

Returns the floating-point remainder of x/y rounded towards zero.

Parameters
xfloat Value of the quotient numerator
yfloat Value of the quotient denominator
Returns
float - The remainder of dividing the arguments
Print( Math.ModFloat(5.3, 2) );
Print( Math.ModFloat(18.5, 4.2) );
>> 1.3
>> 1.7

References x, and y.

Referenced by HitDirectionEffectBase::CalculateArrowPosition(), and FModulus().

◆ NormalizeAngle()

proto float NormalizeAngle ( float ang)
staticprivate

Normalizes the angle (0...360).

Parameters
angfloat Angle for normalizing
Returns
float - Normalized angle
Print( Math.NormalizeAngle(390) );
Print( Math.NormalizeAngle(-90) );
>> 30
>> 270

Referenced by HitDirectionEffectBase::CalculateArrowPosition(), and DayZInfected::HandleOrientation().

◆ Poisson()

float Poisson ( float mean,
int occurences )
inlinestaticprivate

occurences values above '12' will cause Factorial to overflow int.

Definition at line 708 of file enmath.c.

References EULER, Factorial(), and Pow().

Referenced by GameplayEffectsData::BuildProbabilityData(), and CatchingContextPoissonBase::ModifySignalProbability().

◆ Pow()

◆ RandomBool()

bool RandomBool ( )
inlinestaticprivate

Returns a random bool .

Returns
bool - Random bool either 0 or 1
Print( Math.RandomBool() );
Print( Math.RandomBool() );
Print( Math.RandomBool() );
>> true
>> true
>> false

Definition at line 73 of file enmath.c.

References RandomIntInclusive().

Referenced by TickState().

◆ RandomFloat()

proto float RandomFloat ( float min,
float max )
staticprivate

Returns a random float number between and min[inclusive] and max[exclusive].

Parameters
minfloat Range starts [inclusive]
maxfloat Range ends [exclusive]
Returns
float - Random number in range
Print( Math.RandomFloat(0,1) );
Print( Math.RandomFloat(0,2) );
>> 0.597561
>> 1.936456

Referenced by KuruShake::KuruShake(), Grenade_Base::ActivateRandomTime(), AdvanceState(), ActionPushCarCB::ApplyForce(), Hit_MeatBones::BloodSplatGround(), EffBulletImpactBase::CalculateStoppingForce(), CGame::CloseCombatEffects(), CreateOrgan(), StaminaHandler::DepleteStaminaEx(), RecipeBase::Do(), ItemBase::DoMeasurement(), ManBase::DropItem(), InventoryItemSuper::EEKilled(), Apple::EEOnCECreate(), BoatScript::EEOnCECreate(), Bottle_Base::EEOnCECreate(), Car::EEOnCECreate(), GreenBellPepper::EEOnCECreate(), Pear::EEOnCECreate(), Plum::EEOnCECreate(), Potato::EEOnCECreate(), Tomato::EEOnCECreate(), Zucchini::EEOnCECreate(), Car::EOnPostSimulate(), InventoryItem::ExplodeAmmo(), EntityLightSource::HandleDancingShadows(), EntityLightSource::HandleFlickering(), ChernarusPlusData::Init(), EnochData::Init(), SakhalData::Init(), ActionWringClothes::OnFinishProgressServer(), BrainDiseaseMdfr::OnTick(), SymptomBase::OnUpdateClient(), MiscEffects::PlayVegetationCollideParticles(), GeyserTrigger::RandomizeMouthPos(), Particle::RandomizeOrientation(), ParticleSource::RandomizeOrientation(), GameInventory::SetGroundPosByOwnerBounds(), DeveloperTeleport::SetPlayerPosition(), Particle::SetWiggle(), SpawnDecal(), FlammableBase::StandUp(), ThrowAllItemsInInventory(), CameraShake::Update(), and SakhalData::WeatherOnBeforeChange().

◆ RandomFloat01()

◆ RandomFloatInclusive()

float RandomFloatInclusive ( float min,
float max )
inlinestaticprivate

Returns a random float number between and min [inclusive] and max [inclusive].

Parameters
minfloat Range starts [inclusive]
maxfloat Range ends [inclusive]
Returns
float - Random number in range
Print( Math.RandomFloatInclusive(0, 1) ); // 0.0 .. 1.0
Print( Math.RandomFloatInclusive(1, 2) ); // 1.0 .. 2.0
>> 0.3
>> 2.0

Definition at line 106 of file enmath.c.

References Math().

Referenced by ActionRepairVehiclePartBase::AdjustVehicleHealthServer(), PlayerSpawnHandler::ApplyAttributes(), AttachBleedingToZonesByHeight(), InfluenzaAgent::AutoinfectCheck(), ChernarusPlusData::CalculateWind(), EnochData::CalculateWind(), SakhalData::CalculateWind(), DigestAgents(), PrepareAnimal::Do(), RecipeBase::Do(), GameplayEffectsData::GenerateSequenceRandomPosition(), FireworksLauncher::GetEventDelay(), HeatComfortAnimHandler::GetEventTime(), FireworksLauncherClientEvent::GetExplosionDelay(), FireworksLauncherClientEvent::GetExplosionDistance(), GetExplosionDistance(), GetQualityModifier(), Math3D::GetRandomDir(), FireworksLauncherClientEvent::GetShotDispersionAngle(), SpookyEventBase::GetSoundPos(), ItemBase::GetTemperatureValue(), GetWaitTimeForCategory(), HitDirectionEffectBase::Init(), Init(), BleedingIndicatorDropData::InitImageScale(), AreaExposureMdfr::OnActivate(), ContaminationStage2Mdfr::OnActivate(), OnActivate(), WoundInfectStage2Mdfr::OnActivate(), ActionEatCereal::OnFinishProgressServer(), ActionRepairCarPart::OnFinishProgressServer(), FireworksLauncherClientEvent::OnFired(), AreaExposureMdfr::OnTick(), ContaminationStage2Mdfr::OnTick(), FeverMdfr::OnTick(), HeavyMetalPhase2Mdfr::OnTick(), OnTick(), SalmonellaMdfr::OnTick(), WoundInfectStage2Mdfr::OnTick(), SymptomBase::OnUpdateClient(), PlateCarrierVest::OnWasAttached(), InjurySoundHandlerBase::ProcessSound(), ProcessSound(), vector::RandomDir(), vector::RandomDir2D(), RandomFloat01(), Randomize(), Particle::RandWiggleFloat(), BleedingIndicatorDropData::ScatterPosition(), ItemBase::SetActive(), InventoryItem::SetCEBasedQuantity(), SpawnItems(), BleedingIndicatorDropData::StartDrop(), ChernarusPlusData::WeatherOnBeforeChange(), EnochData::WeatherOnBeforeChange(), and SakhalData::WeatherOnBeforeChange().

◆ RandomInt()

proto int RandomInt ( int min,
int max )
staticprivate

Returns a random int number between and min [inclusive] and max [exclusive].

Parameters
minint Range starts [inclusive]
maxint Range ends [exclusive]
Returns
int - Random number in range
Print( Math.RandomInt(0, 1) ); // only 0
Print( Math.RandomInt(0, 2) ); // 0 or 1
>> 0
>> 1

Referenced by DayZIntroScene::DayZIntroScene(), FireworksLauncher::FireworksLauncher(), AttachBleedingToZonesByHeight(), ChernarusPlusData::CalculateVolFog(), EnochData::CalculateVolFog(), Catching(), Managed::CreateNewCharacterRandom(), DayZIntroSceneXbox::CreateRandomCharacter(), CreditsLoader::CreateTestJson(), SymptomManager::CreateUniqueID(), InventoryItem::DamageItemAttachments(), InventoryItem::DamageItemInCargo(), InventoryItem::DoAmmoExplosion(), InventoryItem::EEHitBy(), Apple::EEOnCECreate(), CraterellusMushroom::EEOnCECreate(), GreenBellPepper::EEOnCECreate(), MushroomBase::EEOnCECreate(), Pear::EEOnCECreate(), Plum::EEOnCECreate(), Potato::EEOnCECreate(), Tomato::EEOnCECreate(), Zucchini::EEOnCECreate(), DayZInfected::EOnInit(), FishPull(), BloodTypes::GenerateBloodType(), RemotelyActivatedItemBehaviour::GeneratePersistentID(), GameplayEffectsData::GenerateSequenceRandomPosition(), AreaDamageBase::GetRandomHitZone(), array< Class T >::GetRandomIndex(), GetRandomLoadingBackground(), SoundLookupTable::GetSoundBuilder(), HandleSoundEffectsPipeCreaking(), Init(), Init(), WeaponParticlesBase::OnActivate(), MapHandler::OnDoubleClick(), ActionUnrestrainSelf::OnFinishProgressServer(), OnSteppedOn(), CholeraMdfr::OnTick(), CommonColdMdfr::OnTick(), HeavyMetalPhase2Mdfr::OnTick(), InfluenzaMdfr::OnTick(), PneumoniaMdfr::OnTick(), SalmonellaMdfr::OnTick(), Car::OnVehicleJumpOutServer(), PlantBase(), ActionBase::PlayActionSound(), PlayPipeCreakingSoundOnLocation(), BleedingSourcesManagerBase::ProcessHit(), UIScriptedMenu::RandomizeCharacter(), HFSMBase< WeaponStateBase, WeaponEventBase, WeaponActionBase, WeaponGuardBase >::RandomizeFSMStateEx(), RandomizeIntervals(), ScriptedWidgetEventHandler::RandomizePageIndex(), BetaSound::SaySound(), DayZAIHitComponentHelpers::SelectMostProbableHitComponent(), SelectRandomTrackIndexFromCategory(), SendEmoteRequestSync(), SendEmoteRequestSyncEx(), OptionSelector::SetRandomValue(), ShuffleLock(), BarbedWireTrigger::SoundCollision(), ItemBase::SoundCollision(), ItemBase::SoundCut(), BarbedWireTrigger::SoundElectricShock(), ItemBase::SoundElectricShock(), ItemBase::SoundSpark(), ChernarusPlusData::WeatherOnBeforeChange(), EnochData::WeatherOnBeforeChange(), and SakhalData::WeatherOnBeforeChange().

◆ RandomIntInclusive()

int RandomIntInclusive ( int min,
int max )
inlinestaticprivate

Returns a random int number between and min [inclusive] and max [inclusive].

Parameters
minint Range starts [inclusive]
maxint Range ends [inclusive]
Returns
int - Random number in range
Print( Math.RandomIntInclusive(0, 1) ); // 0 or 1
Print( Math.RandomIntInclusive(0, 2) ); // 0, 1, 2
>> 1
>> 2

Definition at line 54 of file enmath.c.

References Math().

Referenced by FireworksLauncher::FireworksLauncher(), AreaExposureMdfr::BleedingSourceCreateCheck(), ChernarusPlusData::CalculateVolFog(), EnochData::CalculateVolFog(), ChernarusPlusData::CalculateWind(), EnochData::CalculateWind(), SakhalData::CalculateWind(), DamageHands(), CAContinuousMineWood::DamagePlayersHands(), PrepareAnimal::Do(), RecipeBase::Do(), Weapon::FillChamber(), Weapon::FillInnerMagazine(), AreaDamageComponentRaycasted::GetFallbackHitZone(), GetRandomizedPosition(), AreaDamageBase::GetRaycastedHitZone(), FireworksLauncherClientEvent::GetSecondaryExplosionDelay(), DayZInfected::HandleDamageHit(), HitDirectionEffectBase::Init(), CholeraMdfr::OnActivate(), ActionPackGift::OnFinishProgressServer(), OnFinishProgressServer(), TrapBase::OnServerSteppedOn(), OnSteppedOn(), CholeraMdfr::OnTick(), ToxicityMdfr::OnTick(), Car::OnVehicleJumpOutServer(), OpenItem::OpenAndSwitch(), Edible_Base::ProcessDecay(), MissionBase::RandomArtillery(), RandomBool(), Randomize(), RandomizedDeviation(), HitDirectionImagesBase::RandomizeImageIdx(), ScriptedWidgetEventHandler::RandomizePageIndex(), CrashBase::RandomizePosition(), SelectEvent(), HitDirectionEffectBase::SetIndicatorRotation(), Weapon::SpawnAttachedMagazine(), CrashBase::SpawnRandomDeers(), HotSpringTrigger::SpawnVaporEffect(), VolcanicTrigger::SpawnVaporEffect(), ChernarusPlusData::WeatherOnBeforeChange(), EnochData::WeatherOnBeforeChange(), and SakhalData::WeatherOnBeforeChange().

◆ Randomize()

proto int Randomize ( int seed)
staticprivate

Sets the seed for the random number generator.

Parameters
seedint New seed for the random number generator, -1 will use time
Returns
int - Returns new seed
Print( Math.Randomize(5) );
>> 5

Referenced by CGame::CGame(), KuruShake::KuruShake(), AttachBleedingToZonesByHeight(), ChooseAttack(), AreaDamageBase::GetRandomHitZone(), GetRandomLoadingBackground(), CGame::OnAfterCreate(), FireworksLauncher::OnVariablesSynchronized(), Randomize(), RandomizedDeviation(), and ScriptedWidgetEventHandler::RandomizePageIndex().

◆ RemainderFloat()

proto float RemainderFloat ( float x,
float y )
staticprivate

Returns the floating-point remainder of x/y rounded to nearest.

Parameters
xfloat Value of the quotient numerator
yfloat Value of the quotient denominator
Returns
float - The remainder of dividing the arguments
Print( Math.RemainderFloat(5.3, 2) );
Print( Math.RemainderFloat(18.5, 4.2) );
>> -0.7
>> 1.7

References x, and y.

◆ Remap()

float Remap ( float inputMin,
float inputMax,
float outputMin,
float outputMax,
float inputValue,
bool clampedOutput = true )
inlinestaticprivate

Returns given value remaped from input range into output range.

Parameters
inputMinfloat Minimal value of given input range
inputMaxfloat Maximal value of given input range
outputMinfloat Minimal value of given output range
outputMaxfloat Maximal value of given output range
inputValuefloat Value we want to remap
clampedOutput

p bool If value should stay in that range, otherwise it will be extrapolated

Returns
float - Remapped value

Definition at line 740 of file enmath.c.

References Math().

Referenced by CalculateBreadCrumbs(), and ProcessHeatComfort().

◆ Round()

proto float Round ( float f)
staticprivate

Returns mathematical round of value.

Parameters
ffloat Value
Returns
float - closest whole number to 'f'
Print( Math.Round(5.3) );
Print( Math.Round(5.8) );
>> 5
>> 6

Referenced by AddAgent(), ScriptedWidgetEventHandler::AddItem(), BaseBuildingBase::AddRefresherTime01(), BaseBuildingBase::AnimateFlagEx(), PlayerSpawnHandler::ApplyAttributes(), DayZPlayerImplementAiming::ApplyShakes(), InventoryItem::CombineItems(), CreateOrgan(), Entity::DeSerializeNumericalVars(), InventoryItem::DeSerializeNumericalVars(), DetermineSpecificFinisherType(), BleedingSourcesManagerBase::DisplayDebug(), RecipeBase::Do(), PoweredOptic_Base::DoMeasurement(), Inventory_Base::EmptySeedPack(), GetApplicableHeatbuffer(), ScriptedWidgetEventHandler::GetDistanceString(), ComponentEnergyManager::GetEnergy0To100(), VicinitySlotsContainer::GetItemQuantityText(), FlammableBase::GetRagQuantity(), ItemBase::GetTemperatureValue(), EntityLightSource::HandleBlinking(), DayZInfected::HandleOrientation(), UIScriptedMenu::NextPrevPage(), BaseBuildingBase::OnCEUpdate(), Battery9V::OnEnergyAdded(), VehicleBattery::OnEnergyAdded(), Battery9V::OnEnergyConsumed(), Chemlight_ColorBase::OnEnergyConsumed(), VehicleBattery::OnEnergyConsumed(), ModifierBase::OnTick(), OnUpdate(), OrderedAltitudeNumbersPosition(), UIScriptedMenu::ProcessDistanceAndUnits(), ProcessHeatComfort(), ProcessNoiseComponents(), ScriptedWidgetEventHandler::RefreshItemVariables(), ScriptedWidgetEventHandler::RefreshQuickbarItemVariables(), ScriptedWidgetEventHandler::RemoveItem(), ScriptedWidgetEventHandler::ResetItem(), PoweredOptic_Base::SetDistanceText(), DebugMonitor::SetFramerateText(), ScriptedWidgetEventHandler::SetItem(), ScriptedWidgetEventHandler::SetItemColor(), ActionTargetsCursor::SetItemQuantity(), ScriptedWidgetEventHandler::SetItemQuantity(), Icon::SetQuantity(), SlotsIcon::SetQuantity(), InventoryItem::SetQuantityNormalized(), BaseBuildingBase::SetRefreshTimer01(), OptionSelectorBase::SetValue(), OptionSelectorSliderSetup::SetValueText(), UIScriptedMenu::Update(), UIScriptedMenu::UpdateExitButtonState(), UIScriptedMenu::UpdateItemInfoQuantity(), UIScriptedMenu::UpdateItemInfoWeight(), ServerBrowserTab::UpdatePageButtons(), ScriptedWidgetEventHandler::UpdateQuantityItems(), UIScriptedMenu::UpdateQuickbarItemCard(), ScriptedWidgetEventHandler::UpdateTemperatureItems(), HudDebugWinBase::UpdateValues(), UpdateZones(), and ValueToBar().

◆ SignFloat()

proto float SignFloat ( float f)
staticprivate

Returns sign of given value.

Parameters
ffloat Value
Returns
float - Sign of given value
Print( Math.SignFloat(-12.0) );
Print( Math.SignFloat(0.0) );
Print( Math.SignFloat(12.0) );
>> -1.0
>> 0
>> 1.0

◆ SignInt()

proto int SignInt ( int i)
staticprivate

Returns sign of given value.

Parameters
iint Value
Returns
int - Sign of given value
Print( Math.SignInt(-12) );
Print( Math.SignInt(0) );
Print( Math.SignInt(12) );
>> -1
>> 0
>> 1

◆ Sin()

◆ SmoothCD()

proto float SmoothCD ( float val,
float target,
inout float velocity[],
float smoothTime,
float maxVelocity,
float dt )
staticprivate

Does the CD smoothing function - easy in | easy out / S shaped smoothing.

Parameters
valactual value
targetvalue we are reaching for -> Target
velocityfloat[1] - array of ONE member - some kind of memory and actual accel/decel rate, need to be zeroed when filter is about to be reset
smoothTimesmoothing parameter, 0.1 .. 0.4 are resonable values, 0.1 is sharp, 0.4 is very smooth
maxVelocitymaximal value change when multiplied by dt
dtdelta time
Returns
float smoothed/filtered value
val = EnfMath.SmoothCD(val, varTarget, valVelocity, 0.3, 1000, dt);

Referenced by DayZPlayerImplementAiming::ApplyHorizontalNoise(), HitDirectionEffectBase::CalculateArrowPosition(), DayZPlayer::HandleWeapons(), DayZPlayerCameraBase::HoldBreathFOVEffect(), HoldBreathFOVEffect(), DayZPlayerCameraBase::OnUpdate(), OnUpdate(), DayZPlayerImplementAiming::ProcessStealthFilters(), SmoothCDPI2PI(), StdFovUpdate(), NotificationUI::Update(), UpdateLRAngle(), UpdateLRAngleLookAt(), UpdateLRAngleUnlocked(), UpdateUDAngle(), and UpdateUDAngleUnlocked().

◆ SmoothCDPI2PI()

float SmoothCDPI2PI ( float val,
float target,
inout float velocity[],
float smoothTime,
float maxVelocity,
float dt )
inlinestaticprivate

Definition at line 680 of file enmath.c.

References Math(), and SmoothCD().

Referenced by OnUpdate().

◆ SqrFloat()

◆ SqrInt()

proto int SqrInt ( int i)
staticprivate

Returns squared value.

Parameters
iint Value
Returns
int - Squared value
Print( Math.SqrInt(12) );
>> 144

◆ Sqrt()

proto float Sqrt ( float val)
staticprivate

◆ Tan()

proto float Tan ( float angle)
staticprivate

Returns tangent of angle in radians.

Parameters
anglefloat Angle in radians
Returns
float - Tangens of angle
Print( Math.Tan(0.785398) ); // (45)
>> 1

Referenced by GetMeleeTarget(), GetMeleeTargetEx(), and PointLightBase::OnFrameLightSource().

◆ VectorIsEqual()

bool VectorIsEqual ( vector v1,
vector v2,
float tolerance )
inlinestaticprivate

Returns if given vectors are equal with given tolerance.

Parameters
v1float First vector for comparison
v2float Second vector for comparison
tolerancefloat Range in which given vectors can differ
Returns
bool - True if Vectors are equal; otherwise false

Definition at line 766 of file enmath.c.

References Math().

◆ WrapFloat()

proto float WrapFloat ( float f,
float min,
float max )
staticprivate

Returns wrap number to specified interval [min, max[.

Parameters
ffloat Value
minfloat Minimum
maxfloat Maximum
Returns
float - number in specified interval [min, max[
Print( Math.WrapFloat(9.0, 1.0, 9.0) );
>> 1.0

◆ WrapFloat0X()

proto float WrapFloat0X ( float f,
float max )
staticprivate

Returns wrap number to specified interval [0, max[.

Parameters
ffloat Value
maxfloat Maximum
Returns
float - number in specified interval [0, max[
Print( Math.WrapFloat0X(9.0, 9.0) );
>> 0.0

◆ WrapFloat0XInclusive()

proto float WrapFloat0XInclusive ( float f,
float max )
staticprivate

Returns wrap number to specified interval, inclusive [0, max].

Parameters
ffloat Value
maxfloat Maximum
Returns
float - number in specified interval [0, max]
Print( Math.WrapFloat0XInclusive(9.0, 9.0) );
>> 9.0

◆ WrapFloatInclusive()

proto float WrapFloatInclusive ( float f,
float min,
float max )
staticprivate

Returns wrap number to specified interval, inclusive [min, max].

Parameters
ffloat Value
minfloat Minimum
maxfloat Maximum
Returns
float - number in specified interval [min, max]
Print( Math.WrapFloatInclusive(9.0, 1.0, 9.0) );
>> 9.0

◆ WrapInt()

proto int WrapInt ( int i,
int min,
int max )
staticprivate

Returns wrap number to specified interval [min, max[.

Parameters
iint Value
minfloat Minimum
maxint Maximum
Returns
int - number in specified interval [min, max[
Print( Math.WrapInt(9, 1, 9) );
>> 1

Referenced by WeaponStateBase::FindNextFreeMuzzle().

◆ WrapInt0X()

proto int WrapInt0X ( int i,
int max )
staticprivate

Returns wrap number to specified interval [0, max[.

Parameters
iint Value
maxint Maximum
Returns
int - number in specified interval [0, max[
Print( Math.WrapInt0X(9, 9) );
>> 0

Variable Documentation

◆ DEG2RAD

◆ EULER

const float EULER = 2.7182818284590452353
staticprivate

Definition at line 11 of file enmath.c.

Referenced by Poisson().

◆ PI

◆ PI2

◆ PI_HALF

◆ RAD2DEG