Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Private ["_minimumAnamalii","_maxsimumAnamalii","_markeriNaKarte","_max_artifactov","_art_chance","_anamalyArray","_max_art","_min_anamalies","_max_anamalies","_kolichestvo_anamalies","_b","_rnd","_rnd_count","_ms","_ms_2","_anamalyArraySelected","_pos","_a","_kolichestvo_art","_anamaliya_name","_anamaliya","_marker_name","_marker","_anamalyArraySelected4","_countArtifactov","_art","_pos_art","_art_spawn","_razmer_ms"];
- diag_log "[Randomnaya_Generaciya_Anamalii]: skript zagrujen";
- _minimumAnamalii = 25;
- _maxsimumAnamalii = 50;
- _markeriNaKarte = true;
- _max_artifactov = 3;
- _art_chance = 50;
- _anamalyArray = [
- [
- "Burn",
- 20,
- [20, 20, 0, false],
- ["this", "XC=[thistrigger,10]execvm ""anamalies\Burn.sqf"";", ""],
- ["DAP_TEARS","DAP_FIRE"]
- ],
- [
- "Gravi",
- 20,
- [20, 20, 0, false],
- ["this", "XC=[thistrigger,10]execvm ""anamalies\Gravi.sqf"";", ""],
- ["DAP_BLACKDRIP","DAP_GRAVI","DAP_EMPTY"]
- ],
- [
- "Trampoline",
- 20,
- [20, 20, 0, false],
- ["this", "XC=[thistrigger,10]execvm ""anamalies\Trampoline.sqf"";", ""],
- ["DAP_BLACKDRIP","DAP_GRAVI","DAP_EMPTY"]
- ],
- [
- "Mincer",
- 20,
- [20, 20, 0, false],
- ["this", "XC=[thistrigger,10]execvm ""anamalies\Mincer.sqf"";", ""],
- ["DAP_STONEBLOOD","DAP_MEAT","DAP_SOUL"]
- ],
- [
- "Electro",
- 30,
- [30, 30, 0, false],
- ["this", "XC=[thistrigger,15]execvm ""anamalies\Electro.sqf"";", ""],
- ["DAP_ELECTRA","DAP_SPIKES","DAP_BATTERY"]
- ],
- [
- "Galantine",
- 50,
- [50, 50, 0, false],
- ["this", "XC=[thistrigger,50]execvm ""anamalies\Galantine.sqf"";", ""],
- ["DAP_AMEBA","DAP_CRYSTALL"]
- ],
- [
- "Radiation",
- 100,
- [100, 100, 0, false],
- ["this", "XC=[thistrigger,100]execvm ""anamalies\Radiation.sqf"";", ""],
- []
- ],
- [
- "Psy",
- 250,
- [250, 250, 0, false],
- ["this", "XC=[thistrigger,250]execvm ""anamalies\Psy.sqf"";", ""],
- []
- ]
- ];
- waitUntil {(!isNil "BIS_fnc_selectRandom")};
- waitUntil {(!isNil "BIS_fnc_findSafePos")};
- _max_art = _max_artifactov + 1;
- _min_anamalies = _minimumAnamalii - 1;
- _max_anamalies = _maxsimumAnamalii - _minimumAnamalii;
- _kolichestvo_anamalies = floor (random _max_anamalies) + _min_anamalies;
- _b = 0;
- _rnd = 0;
- _rnd_count = count _anamalyArray;
- _ms = [];
- _ms_2 = [];
- diag_log format["[Randomnaya_Generaciya_Anamalii]: vsego_anamalii (%1)",_kolichestvo_anamalies];
- While {_b < _kolichestvo_anamalies} do {
- _rnd = floor (random _rnd_count);
- _anamalyArraySelected = (_anamalyArray select _rnd);
- _b = _b + 1;
- _pos = [getMarkerPos 'Center',0,dayz_MapArea,25,0,2000,0] call BIS_fnc_findSafePos;
- _a = 0;
- _kolichestvo_art = floor (random _max_art);
- _anamaliya_name = (_anamalyArraySelected select 0);
- _anamaliya = createTrigger ["EmptyDetector", _pos];
- _anamaliya setTriggerArea (_anamalyArraySelected select 2);
- _anamaliya setTriggerActivation ["ANY", "PRESENT", true];
- _anamaliya setTriggerStatements (_anamalyArraySelected select 3);
- _marker_name = str _b;
- if (_markeriNaKarte) then {
- _marker = createMarker [_marker_name, _pos];
- _marker setMarkerShape "ICON";
- _marker setMarkerType "DOT";
- _marker setMarkerText _anamaliya_name;
- };
- _anamalyArraySelected4 = _anamalyArraySelected select 4;
- _countArtifactov = count _anamalyArraySelected4;
- if (_countArtifactov == 0) then {
- _ms = [];
- _ms_2 = [];
- } else {
- While {_a < _kolichestvo_art} do {
- if ((floor (random 100) < _art_chance)) then {
- _art = _anamalyArraySelected4 call BIS_fnc_selectRandom;
- _pos_art = [_pos, 1, (_anamalyArraySelected select 1), 3, 0, 20, 0] call BIS_fnc_findSafePos;
- _art_spawn = _art createVehicle _pos_art;
- _ms set [_a, _art];
- _ms_2 set [_a, _pos_art];
- };
- _a = _a + 1;
- };
- };
- _razmer_ms = count _ms;
- diag_log format["[Randomnaya_Generaciya_Anamalii]: Nazvanie_Anamalii: %1 Koordinati_Anamalii: %2 Vsego_Artifactov: %3 Artefacti: %4 Koordinati_Artefactov: %5",_anamaliya_name,_pos,_razmer_ms,_ms,_ms_2];
- };
- diag_log "[Randomnaya_Generaciya_Anamalii]: skript vipolnen";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement