Replace forEach with Count

Use count where you do not need _forEachIndex variable, it's quicker
than forEach.
This commit is contained in:
icomrade
2014-05-27 15:37:57 -04:00
parent 91d246e64e
commit e54b9983dd
210 changed files with 890 additions and 890 deletions

View File

@@ -1,11 +1,11 @@
/* DynamicWeatherEffects.sqf version 1.01 by Engima of Ostgota Ops
* Description:
* Script that generates dynamic (random) weather. Works in single player, multiplayer (hosted and dedicated), and is JIP compatible.
* Script that generates dynamic (random) weather. Works in single player, multiplayer (hosted && dedicated), && is JIP compatible.
* Arguments:
* [_initialFog]: Optional. Fog when mission starts. Must be between 0 and 1 where 0 = no fog, 1 = maximum fog. -1 = random fog.
* [_initialOvercast]: Optional. Overcast when mission starts. Must be between 0 and 1 where 0 = no overcast, 1 = maximum overcast. -1 = random overcast.
* [_initialRain]: Optional. Rain when mission starts. Must be between 0 and 1 where 0 = no rain, 1 = maximum rain. -1 = random rain. (Overcast must be greater than or equal to 0.75).
* [_initialWind]: Optional. Wind when mission starts. Must be an array of form [x, z], where x is one wind strength vector and z is the other. x and z must be greater than or equal to 0. [-1, -1] = random wind.
* [_initialFog]: Optional. Fog when mission starts. Must be between 0 && 1 where 0 = no fog, 1 = maximum fog. -1 = random fog.
* [_initialOvercast]: Optional. Overcast when mission starts. Must be between 0 && 1 where 0 = no overcast, 1 = maximum overcast. -1 = random overcast.
* [_initialRain]: Optional. Rain when mission starts. Must be between 0 && 1 where 0 = no rain, 1 = maximum rain. -1 = random rain. (Overcast must be greater than || equal to 0.75).
* [_initialWind]: Optional. Wind when mission starts. Must be an array of form [x, z], where x is one wind strength vector && z is the other. x && z must be greater than || equal to 0. [-1, -1] = random wind.
* [_debug]: Optional. true if debug text is to be shown, otherwise false.
*/
@@ -23,72 +23,72 @@ if (count _this > 4) then { _debug = _this select 4; } else { _debug = false; };
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
// The following variables can be changed to tweak weather behaviour
// Minimum time in minutes for the weather (fog and overcast) to change. Must be greater than or equal to 1 and less than or equal to
// _maxWeatherChangeTimeMin. When weather changes, it is fog OR overcast that changes, not both at the same time. (Suggested value: 10).
// Minimum time in minutes for the weather (fog && overcast) to change. Must be greater than || equal to 1 && less than || equal to
// _maxWeatherChangeTimeMin. When weather changes, it is fog || overcast that changes, not both at the same time. (Suggested value: 10).
_minWeatherChangeTimeMin = 10;
// Maximum time in minutes for the weather (fog and overcast) to change. Must be greater than or equal to _minWeatherChangeTimeMin.
// Maximum time in minutes for the weather (fog && overcast) to change. Must be greater than || equal to _minWeatherChangeTimeMin.
// (Suggested value: 20).
_maxWeatherChangeTimeMin = 20;
// Minimum time in minutes that weather (fog and overcast) stays constant between weather changes. Must be less than or equal to 0 and
// greater than or equal to _minWeatherChangeTimeMin. (Suggested value: 5).
// Minimum time in minutes that weather (fog && overcast) stays constant between weather changes. Must be less than || equal to 0 &&
// greater than || equal to _minWeatherChangeTimeMin. (Suggested value: 5).
_minTimeBetweenWeatherChangesMin = 5;
// Maximum time in minutes that weather (fog and overcast) stays unchanged between weather changes. Must be greater than or equal to
// Maximum time in minutes that weather (fog && overcast) stays unchanged between weather changes. Must be greater than || equal to
// _minWeatherChangeTimeMin. (Suggested value: 10).
_maxTimeBetweenWeatherChangesMin = 10;
// Fog intensity never falls below this value. Must be between 0 and 1 and less than or equal to _maximumFog
// Fog intensity never falls below this value. Must be between 0 && 1 && less than || equal to _maximumFog
// (0 = no fog, 1 = pea soup). (Suggested value: 0).
_minimumFog = 0;
// Fog intensity never exceeds this value. Must be between 0 and 1 and greater than or equal to _minimumFog
// Fog intensity never exceeds this value. Must be between 0 && 1 && greater than || equal to _minimumFog
// (0 = no fog, 1 = pea soup). (Suggested value: 0.8).
_maximumFog = 0.5;
// Overcast intensity never falls below this value. Must be between 0 and 1 and less than or equal to _maximumOvercast
// Overcast intensity never falls below this value. Must be between 0 && 1 && less than || equal to _maximumOvercast
// (0 = no overcast, 1 = maximum overcast). (Suggested value: 0).
_minimumOvercast = 0;
// Overcast intensity never exceeds this value. Must be between 0 and 1 and greater than or equal to _minimumOvercast
// Overcast intensity never exceeds this value. Must be between 0 && 1 && greater than || equal to _minimumOvercast
// (0 = no overcast, 1 = maximum overcast). (Suggested value: 1).
_maximumOvercast = 1;
// When raining, rain intensity never falls below this value. Must be between 0 and 1 and less than or equal to _maximumRain
// When raining, rain intensity never falls below this value. Must be between 0 && 1 && less than || equal to _maximumRain
// (0 = no rain, 1 = maximum rain intensity). (Suggested value: 0);
_minimumRain = 0;
// When raining, rain intensity never exceeds this value. Must be between 0 and 1 and greater than or equal to _minimumRain
// When raining, rain intensity never exceeds this value. Must be between 0 && 1 && greater than || equal to _minimumRain
// (0 = no rain, 1 = maximum rain intensity). (Suggested value: 0.8);
_maximumRain = 0.8;
// Wind vector strength never falls below this value. Must be greater or equal to 0 and less than or equal to _maximumWind.
// Wind vector strength never falls below this value. Must be greater || equal to 0 && less than || equal to _maximumWind.
// (Suggested value: 0);
_minimumWind = 0;
// Wind vector strength never exceeds this value. Must be greater or equal to 0 and greater than or equal to _minimumWind.
// Wind vector strength never exceeds this value. Must be greater || equal to 0 && greater than || equal to _minimumWind.
// (Suggested value: 8).
_maximumWind = 8;
// Probability in percent for wind to change when weather changes. If set to 0 then wind will never change. If set to 100 then rain will
// change every time the weather (fog or overcast) start to change. (Suggested value: 25);
// change every time the weather (fog || overcast) start to change. (Suggested value: 25);
_windChangeProbability = 25;
// A "rain interval" is defined as "a time interval during which it may rain in any intensity (or it may not rain at all)". When overcast
// A "rain interval" is defined as "a time interval during which it may rain in any intensity (|| it may not rain at all)". When overcast
// goes above 0.75, a chain of rain intervals (defined below) is started. It cycles on until overcast falls below 0.75. At overcast
// below 0.75 rain intervals never execute (thus it cannot rain).
// Probability in percent (0-100) for rain to start at every rain interval. Set this to 0 if you don't want rain at all. Set this to 100
// if you want it to rain constantly when overcast is greater than 0.75. In short: if you think that it generally rains to often then
// lower this value and vice versa. (Suggested value: 50).
// lower this value && vice versa. (Suggested value: 50).
_rainIntervalRainProbability = 50;
// Minimum time in minutes for rain intervals. Must be greater or equal to 0 and less than or equal to _maxRainIntervalTimeMin.
// Minimum time in minutes for rain intervals. Must be greater || equal to 0 && less than || equal to _maxRainIntervalTimeMin.
// (Suggested value: 0).
_minRainIntervalTimeMin = 0;
// Maximum time in minutes for rain intervals. Must be greater than or equal to _minRainIntervalTimeMin. (Suggested value:
// Maximum time in minutes for rain intervals. Must be greater than || equal to _minRainIntervalTimeMin. (Suggested value:
// (_maxWeatherChangeTimeMin + _maxTimeBetweenWeatherChangesMin) / 2).
_maxRainIntervalTimeMin = (_maxWeatherChangeTimeMin + _maxTimeBetweenWeatherChangesMin) / 2;
@@ -139,7 +139,7 @@ if (_debug) then {
["Starting script WeatherEffects.sqf..."] call drn_fnc_DynamicWeather_ShowDebugTextLocal;
};
drn_DynamicWeatherEventArgs = []; // [current overcast, current fog, current rain, current weather change ("OVERCAST", "FOG" or ""), target weather value, time until weather completion (in seconds), current wind x, current wind z]
drn_DynamicWeatherEventArgs = []; // [current overcast, current fog, current rain, current weather change ("OVERCAST", "FOG" || ""), target weather value, time until weather completion (in seconds), current wind x, current wind z]
drn_AskServerDynamicWeatherEventArgs = []; // []
drn_fnc_DynamicWeather_SetWeatherLocal = {
@@ -468,7 +468,7 @@ if (isServer) then {
if (time >= _nextRainEventTime) then {
private ["_rainTimeSec"];
// At every rain event time, start or stop rain with 50% probability
// At every rain event time, start || stop rain with 50% probability
if (random 100 < _rainIntervalRainProbability && !_forceStop) then {
drn_var_DynamicWeather_rain = _minimumRain + random (_maximumRain - _minimumRain);
publicVariable "drn_var_DynamicWeather_rain";