Epoch/Sources/epoch_server_settings/EpochEvents/EarthQuake.sqf

31 lines
1.3 KiB
Plaintext
Raw Normal View History

2015-07-24 14:16:25 +00:00
/*
Earthquake and Mineral Deposit Event
by Aaron Clark - EpochMod.com
2017-02-28 18:33:58 +00:00
2015-07-24 14:16:25 +00:00
Improvements and or bugfixes and other contributions are welcome via the github:
2016-06-13 16:54:19 +00:00
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server_settings/EpochEvents/Earthquake.sqf
2015-07-24 14:16:25 +00:00
*/
2017-05-02 12:35:38 +00:00
//[[[cog import generate_private_arrays ]]]
private ["_chance","_item","_markers","_minerals","_playersNearEpicenter","_position"];
2017-05-02 12:35:38 +00:00
//[[[end]]]
2015-06-04 14:11:41 +00:00
_position = [epoch_centerMarkerPosition, 0, EPOCH_dynamicVehicleArea, 10, 0, 1000, 0] call BIS_fnc_findSafePos;
if ((count _position) == 2) then{
Release 0.3.8 (#502) * first build for 0.3.8 * 0.3.8.0190 * 0.3.8.0202 * 0.3.8.0213 * 0.3.7.0214 * 0.3.8.0222 * 0.3.8.0246 * 0.3.8.0247 fixed typo * 0.3.8.0249 more fixes for server compiler * 0.3.8.0256 * add build number and simple batch file for packing * match build number with internal * add build numbers to server pbo's and mission files also reworked build script for more options * 0.3.8.0261 * 0.3.8.0261 * 0.3.8.0283 * 0.3.8.0284 * changelog * 0.3.8.0307 * 0.3.8.0311 * remove old BEC plugin * update redis-server.exe to latest build and full config * 0.3.8.0314 * 0.3.8.0315 * inverse logic This should correctly prevent spawning these units nearby jammer or protection zones * use pushbackUnique here * optimized loot function by using selectRandom instead of slower sqf logic * 0.3.8.0316 * make use of new getDir functionality instead of BIS fnc * add lower disconnect value to server.cfg * use new getpos functionality * 0.3.8.0317 * 0.3.8.0319 * 0.3.8.0327 * 0.3.8.0338 changelog update tba * changelog * 0.3.8.0341 * BE update * 0.3.8.0353 * changelog * removed duplicates * 0.3.8.0355 fixed error in getIDC * 0.3.8.0356 revert to BIS_fnc_param as params threw errors * 0.3.8.0357 fixes for #496 #497 * 0.3.8.0359 fixed #497 fixed #496 * 0.3.8.0365 * 0.3.8.0371 * 0.3.8.0373 * 0.3.8.0379 * 0.3.8.0381 * 0.3.8.0386 * 0.3.8.0393 * 0.3.8.0395 * 0.3.8.0396 * 0.3.8.0397 * 0.3.8.0406 * 0.3.8.0409 * 0.3.8.0410 loot balance suppress error in spawnloot make near object check based on building size * 0.3.8.0412 * 0.3.8.0414 removed classes with scope 0 test remove loot trash on gear for #498 fixed #501 * 0.3.8.0415 * same
2016-04-08 20:21:46 +00:00
_playersNearEpicenter = _position nearEntities[["Epoch_Male_F", "Epoch_Female_F"], 1000];
2017-08-30 21:38:48 +00:00
// decrease chance with more players
_chance = linearConversion [1, 100, (count allPlayers), 0, 0.5, true];
if ((random 1) > _chance) then {
2015-06-04 14:11:41 +00:00
2017-08-30 21:38:48 +00:00
if !(_playersNearEpicenter isEqualTo[]) then{
2015-06-04 14:11:41 +00:00
// send earthquake to each player in zone
2017-08-30 21:38:48 +00:00
[_position] remoteExec ['EPOCH_client_earthQuake',_playersNearEpicenter];
};
2016-01-08 04:32:52 +00:00
2017-08-30 21:38:48 +00:00
// Mineral veins
_minerals = ["MineralDepositCopper_EPOCH", "MineralDepositGold_EPOCH", "MineralDepositSilver_EPOCH"];
_item = createVehicle[(selectRandom _minerals), _position, [], 0.0, "CAN_COLLIDE"];
if (EPOCH_showEarthQuakes) then{
_markers = ["EarthQuake",_position] call EPOCH_server_createGlobalMarkerSet;
2015-06-04 14:11:41 +00:00
};
};
2015-07-24 14:16:25 +00:00
};