Всем привет!
кто может помочь?
у меня такая проблема
есть скрипт спавна артефактов в определенных координатах заданных в массиве
ставлю триггер в EDEN редакторе имя переменной пишу sp_point1
после в скрипте получаю координаты триггера (_art_spawn1 = getPosWorld sp_point1;)
и когда запускаю скрипт в логах выдает такую ошибку
что я не так делаю, помогите пожалуйста(
1:52:38 "SPAWN LOCAL ARTIFACT : Medusa_Unstab at [[278.043,156.917,22.2639]]" 1:52:38 Error in expression <Artifact__spawnedArtifacts pushBack (_x createVehicleLocal _posRandom); diag_lo> 1:52:38 Error position: <createVehicleLocal _posRandom); diag_lo> 1:52:38 Error 1 установлено элементов, 3 ожидалось 1:52:38 File zone_server\modules\Artifact\Artifact.sqf, line 81 1:52:38 "RANDOMIZER : 100" 1:52:38 "POSITION : [[278.043,156.917,22.2639]]" 1:52:38 "SPAWN LOCAL ARTIFACT : GRAVI_Unstab at [[278.043,156.917,22.2639]]" 1:52:38 Error in expression <Artifact__spawnedArtifacts pushBack (_x createVehicleLocal _posRandom); diag_lo> 1:52:38 Error position: <createVehicleLocal _posRandom); diag_lo> 1:52:38 Error 1 установлено элементов, 3 ожидалось 1:52:38 File zone_server\modules\Artifact\Artifact.sqf, line 81
Вот сам скрипт
moduleInitStart(); module(_artifacts) = [ [ "GRAVI_Unstab","FIRE_Unstab","MEAT_Unstab","Medusa_Unstab","Item_ELECTRA_Unstab","Item_TEARS_Unstab","Item_CRYSTALL_Unstab","Item_BATTERY_Unstab"], [100,100,100,45,25,35,25,25] ]; _art_spawn1 = getPosWorld sp_point1; module(_spawnAreas) = [ [[_art_spawn1], 10, ["Medusa_Unstab", "GRAVI_Unstab"]] //TEST AREA ]; module(_spawnDelay) = 150; module(_maxArtifacts) = 1500; module(_spawnedArtifacts) = []; module(SpawnArtifacts) = { // foreach module(_spawnAreas) { _position = _x select 0; _radius = _x select 1; _artifacts = _x select 2; // foreach _artifacts { if ((count module(_spawnedArtifacts)) < module(_maxArtifacts)) then { if (assocGet(module(_artifacts), _x) > (random 100)) then { private ["_posRandom"]; private ["_randomizer"]; _randomizer = _radius * 10; diag_log format ["RANDOMIZER : %1", _randomizer]; _posRandom = _position; //vectorAdd [round(random (2*(- _randomizer))+ _randomizer), round(random (2*(- _randomizer))+ _randomizer), 0]; //_position diag_log format ["POSITION : %1", _position]; module(_spawnedArtifacts) pushBack (_x createVehicleLocal _posRandom); diag_log format ["SPAWN LOCAL ARTIFACT : %1 at %2", _x, _posRandom]; }; }; } foreach _artifacts; } foreach module(_spawnAreas); }; [] spawn { while {true} do { sleep module(_spawnDelay); [] call module(SpawnArtifacts); }; }; [] spawn { while {true} do { sleep 3; { _currentUnit = _x; diag_log format['!!!!!!!!! %1 >>> %2 ', _currentUnit, (_currentUnit getVariable ["ARTDETECTOR", 0])]; //if ((1 == (_currentUnit getVariable ["ARTDETECTOR", 0]))) then { // foreach nearestObjects { private ["_artifactClass", "_artifactPosition"]; diag_log format["IS LOCAL %1", (local _x)]; if (local _x) then { _artifactClass = typeOf _x; _artifactPosition = (getPos _x); // удаляем локальный арт deleteVehicle _x; module(_spawnedArtifacts) = module(_spawnedArtifacts) - [_x]; // спавним артефакт глобально diag_log format ["spawn artifact %1 for player %2 at %3", _artifactClass, _currentUnit, _artifactPosition]; // _artifactClass createVehicle _artifactPosition; _veh = _artifactClass createVehicle _artifactPosition; _veh setOwner (owner _currentUnit); // "Sign_Pointer_Green_F" createVehicle _artifactPosition; // test }; } foreach nearestObjects [_currentUnit, (module(_artifacts) select 0), 20]; // todo: заменить костнантами - класс артефакта и радиус действия детектора //}; } forEach playableUnits; }; }; moduleInitEnd();