DIFF

class WeatherSource

Weather controller

Constructors 2

private void Weather()
References m_missionWeather
private void ~Weather()

Members 2

protected bool m_missionWeather
protected bool m_UpdateFrozen

Methods 35

proto native float GetTime()

Returns actual time from start of a server (how many seconds elapsed from server start).

proto native WindDirection GetWindDirection()

Returns a wind direction phenomenon object.

NoteWind direction is angle in radians, typically in the <-PI, +PI> interval.

See also: See, Weather.WindDirectionToAngle, and, Weather.AngleToWindDirection, for, conversions.

proto native void SetStorm(float density, float threshold, float timeOut)

Sets the thunderstorm properties.

density
A value in <0, 1> range where 0 means no thunderstorms at all and 1 means thunderstorm every time it gets cloudy.
threshold
The overcast value that must be exceeded so that lightning can appear.
timeOut
A minimal time in seconds between lightning during thunderstorm.
proto native void SuppressLightningSimulation(bool state)

enables/disables thunderbolt simulation on client (together with sounds)

proto native vector GetWind()

Returns wind vector (direction and speed as length of the vector).

proto native void SetWind(vector wind)

Sets the wind vector (direction and speed as length of the vector).

NoteEquivalent to setting WindMagnitude and WindDirection phenomenon(s) with zero time and duration.
float len = wind.Normalize();
if ( len > 0 )
{
	float angle = WindDirectionToAngle( wind );
	GetWindMagnitude().Set( len, 0, 0 );
	GetWindDirection().Set( angle, 0, 0 );
}

See also: See, Weather.WindDirectionToAngle, and, Weather.AngleToWindDirection, for, conversions.

proto native float GetWindSpeed()

Returns actual wind speed in metre per second.

NoteWind is changing continuously in time, so the returned value may not stand for too long. Equivalent to WindMagnitude phenomenon actual value.
proto native void SetWindSpeed(float speed)

Sets the actual wind speed in metre per second.

NoteWind is changing continuously in time, so the returned value may not stand for too long. Minimum speed for wind is 0.1 m/s. Equivalent to setting WindMagnitude phenomenon(s) with zero time and duration.
proto native float GetWindMaximumSpeed()

Returns maximal wind speed in metre per second.

NoteBy default this value is 10 m/s but it can be overridden in script on mission initialization. Equivalent to getting WindMagnitude phenomenon upper limit.
proto native void SetWindMaximumSpeed(float maxSpeed)

Sets the maximal wind speed in metre per second. Equivalent to setting WindMagnitude phenomenon(s) value upper limit.

proto void GetWindFunctionParams(out float fnMin, out float fnMax, out float fnSpeed)

Reads function parameters that controls the wind behaviour (change in time).

fnMin
Function relative minimum (in range <0, 1>).
fnMax
Function relative maximum (in range <0, 1>).
fnSpeed
Controls speed of change of function value.
proto native void SetWindFunctionParams(float fnMin, float fnMax, float fnSpeed)

Sets function parameters that controls the wind behaviour (change in time).

fnMin
Function relative minimum (in range <0, 1>).
fnMax
Function relative maximum (in range <0, 1>).
fnSpeed
Controls speed of change of function value.
proto native void SetRainThresholds(float tMin, float tMax, float tTime)

Sets overcast threshold values for rain phenomena.

Rain can start only if actual overcast value is in given range of <tMin, tMax>. If it's already raining and actual overcast value gets out of given range then rain will stop in given tTime seconds.

Default values are: tMin = 0.6 tMax = 1 tTime = 30

tMin
Minimal overcast value (in range <0, 1>).
tMax
Maximal overcast value (in range <0, 1>).
tTime
Time in seconds when it stops raining.
proto native void SetSnowfallThresholds(float tMin, float tMax, float tTime)

Sets overcast threshold values for snowfall phenomena.

Snowfall can start only if actual overcast value is in given range of <tMin, tMax>. If it's already snowing and actual overcast value gets out of given range then snowfall will stop in given tTime seconds.

Default values are: tMin = 0.6 tMax = 1 tTime = 30

tMin
Minimal overcast value (in range <0, 1>).
tMax
Maximal overcast value (in range <0, 1>).
tTime
Time in seconds when it stops snowing.
proto native void SetSnowflakeScale(float scale)

Sets the overall scale of snowflakes during snowfall phenomenon. This value is not synchronized and should be set by deterministic means.

scale
Scale, 1.0 = default
proto native float GetSnowflakeScale()

Returns the overall scale of snowflakes during snowfall phenomenon.

static proto float WindDirectionToAngle(vector dir)

Returns the xz angle of the provided wind vector.

dir
Non-zero wind vector

Returns: Wind angle in the -PI, +PI interval.

static proto vector AngleToWindDirection(float angle)

Returns wind direction from the provided wind angle.

angle
Wind angle in the -PI, +PI interval.

Returns: Wind direction vector.

proto native bool IsDynVolFogEnabled()

Dynamic volumetric fog only takes effect if enabled in the world config.

Returns: Whether the dynamic volumetric fog is enabled.

proto native void SetDynVolFogDistanceDensity(float value, float time = 0)

Sets the dynamic volumetric fog distance density. Only takes effect if dynamic volumetric fog is enabled.

value
Density percentage in <0,1> range.
time
Transition time in seconds. (0 for immediate effect)
proto native float GetDynVolFogDistanceDensity()

Returns the current 'dynamic' volumetric fog distance density.

proto native void SetDynVolFogHeightDensity(float value, float time = 0)

Sets the dynamic volumetric fog height density. Only takes effect if dynamic volumetric fog is enabled.

value
Density percentage in <0,1> range.
time
Transition time in seconds. (0 for immediate effect)
proto native float GetDynVolFogHeightDensity()

Returns the current 'dynamic' volumetric fog height density.

proto native void SetDynVolFogHeightBias(float value, float time = 0)

Sets the 'dynamic' volumetric height bias. Takes effect only if enabled via world config.

value
Height offset in meters relative to 0.
time
Transition time in seconds.
proto native float GetDynVolFogHeightBias()

Returns the current 'dynamic' volumetric fog height bias in meters.

void MissionWeather(bool use)
References m_missionWeather
bool GetMissionWeather()
References m_missionWeather
void SetWeatherUpdateFreeze(bool state)
References m_UpdateFrozen
bool GetWeatherUpdateFrozen()
References m_UpdateFrozen