1261 {
1262 CfgParamArray presetParam;
1263 CfgParamString paramName;
1264 CfgParamFloat paramOvercast, paramRain, paramSnow, paramFog, paramWindMagnitude, paramWindDirection, paramVolFogDD, paramVolFogHD, paramVolFogHB;
1265
1267 int weatherPresetIndex = -1;
1268 for (int i = 0; i < weather_params.Count(); i++)
1269 {
1270 presetParam = CfgParamArray.Cast(weather_params.Get(i));
1271 if (!presetParam)
1272 return;
1273
1274 paramName = CfgParamString.Cast(presetParam.GetValueByName(
"Name",
CFG_TYPE_STRING));
1275 if (paramName.GetValue() ==
name)
1276 {
1277 weatherPresetIndex = i;
1278 break;
1279 }
1280 }
1281
1282 if (weatherPresetIndex > -1)
1283 {
1284 weather_params.Remove(weatherPresetIndex);
1285 }
1286
1287 presetParam = new CfgParamArray("");
1288 paramName = new CfgParamString("Name");
1289 paramName.SetValue(
name);
1290 paramOvercast = new CfgParamFloat("Overcast");
1291 paramOvercast.SetValue(overcast);
1292 paramRain = new CfgParamFloat("Rain");
1293 paramRain.SetValue(rain);
1294 paramSnow = new CfgParamFloat("Snow");
1295 paramSnow.SetValue(snow);
1296 paramFog = new CfgParamFloat("Fog");
1297 paramFog.SetValue(fog);
1298 paramWindMagnitude = new CfgParamFloat("WindMagnitude");
1299 paramWindMagnitude.SetValue(windM);
1300 paramWindDirection = new CfgParamFloat("WindDirection");
1301 paramWindDirection.SetValue(windD);
1302 paramVolFogDD = new CfgParamFloat("VolFogDD");
1303 paramVolFogDD.SetValue(volFogDD);
1304 paramVolFogHD = new CfgParamFloat("VolFogHD");
1305 paramVolFogHD.SetValue(volFogHD);
1306 paramVolFogHB = new CfgParamFloat("VolFogHB");
1307 paramVolFogHB.SetValue(volFogHB);
1308
1309 presetParam.InsertValue(paramName);
1310 presetParam.InsertValue(paramOvercast);
1311 presetParam.InsertValue(paramRain);
1312 presetParam.InsertValue(paramSnow);
1313 presetParam.InsertValue(paramFog);
1314 presetParam.InsertValue(paramWindMagnitude);
1315 presetParam.InsertValue(paramWindDirection);
1316 presetParam.InsertValue(paramVolFogDD);
1317 presetParam.InsertValue(paramVolFogHD);
1318 presetParam.InsertValue(paramVolFogHB);
1319
1320 if (weatherPresetIndex == -1)
1321 {
1322 weather_params.Insert(presetParam);
1323
1324 ScriptConsoleWeatherPreset preset = new ScriptConsoleWeatherPreset();
1326 preset.WOvercast = overcast;
1327 preset.WRain = rain;
1328 preset.WSnow = snow;
1329 preset.WFog = fog;
1330 preset.WWindMagnitude = windM;
1331 preset.WWindDir = windD;
1332 preset.WVolFogDD = volFogDD;
1333 preset.WVolFogHD = volFogHD;
1334 preset.WVolFogHB = volFogHB;
1336 }
1337 else
1338 {
1339 weather_params.InsertAt(presetParam, weatherPresetIndex);
1341 }
1342
1343 SaveConfigToFile();
1344 }
const int CFG_TYPE_STRING
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
void LoadWeatherPresets()
const string WEATHER_PRESETS_LIST
ref array< ref ScriptConsoleWeatherPreset > m_WeatherPresets
array< ref CfgParam > GetArray(string key)