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

◆ GetGroundEffectPotentialPosition()

vector DustEffectManager::GetGroundEffectPotentialPosition ( )
inlineprotected

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

321 {
322 vector PlayerPos = m_Player.GetPosition();
323 vector PlayerSpeed = GetPlayerSpeed();
324 float PlayerSpeedStr = PlayerSpeed.Normalize();
325
326 PlayerSpeed[1] = PlayerSpeed[2];
327 float yaw = PlayerSpeed.VectorToYaw();
328
329 float coef = 1 + (PlayerSpeedStr / GROUND_EFFECT_SPEED_COEFICIENT);
330
331 float x = Math.RandomFloat(-coef * m_GroundEffectRadius, coef * m_GroundEffectRadius) + (PlayerSpeedStr * GROUND_EFFECT_SPEED_ADJUSTMENT);
332 float z = Math.RandomFloat(-m_GroundEffectRadius / coef, m_GroundEffectRadius / coef);
333
334 vector point = Vector(x, 0.0, z);
335
336 point = vector.RotateAroundZeroDeg(point, vector.Up, -yaw);
337
338 return PlayerPos + point;
339 }
Icon x
const float GROUND_EFFECT_SPEED_COEFICIENT
Определения DustEffectsManager.c:48
vector GetPlayerSpeed()
Определения DustEffectsManager.c:341
PlayerBase m_Player
Определения DustEffectsManager.c:14
float m_GroundEffectRadius
Определения DustEffectsManager.c:30
const float GROUND_EFFECT_SPEED_ADJUSTMENT
Определения DustEffectsManager.c:49
static vector RotateAroundZeroDeg(vector vec, vector axis, float angle)
Rotate a vector around 0,0,0 by an angle in degrees.
Определения EnConvert.c:484
proto float Normalize()
Normalizes vector. Returns length.
proto float VectorToYaw()
Returns yaw of vector.
proto native vector Vector(float x, float y, float z)
Vector constructor from components.

Перекрестные ссылки GetPlayerSpeed(), GROUND_EFFECT_SPEED_ADJUSTMENT, GROUND_EFFECT_SPEED_COEFICIENT, m_GroundEffectRadius, m_Player, vector::Normalize(), Math::RandomFloat(), vector::RotateAroundZeroDeg(), vector::Up, Vector(), vector::VectorToYaw() и x.

Используется в CreateGroundEffect().