Перейти к содержанию

Anti-Zombie Frequency Emitter​

ZizionarD
Авторизация  

Рекомендуемые сообщения

Прошло больше года с тех пор, как инфекция начала распространяться. Остались только самые сильные и умные из выживших. Ученый, по имени mmmyum, изучает поведение инфицированных и, с помощью технически решений выжившего по имени Freaking Fred, создал устройство, чтобы помочь победить их. Устройство излучает частоту, которая смертельна для инфицированных, но не оказывает вредного воздействия на выживших. Слово новое устройство быстро распространился по всей Черноруссии.

 

Информация:

Для этого аддона потребуются кастомные compiles.sqf и fn_selfActions.sqf для размещения в папке fixes в папке миссии. Если эти пользовательские файлы уже есть в папке миссии, перейдите к разделу установка. Если вы этого не сделаете, следуйте этому руководству.

 

Установка кастомных файлов:

1. Перейти к arma 2 operation arrowhead на вашем компьютере и найти папку @DayZ.

2. В папке @DayZ перейдите в папку addons и найдите dayz_code.pbo. Сделайте копию dayz_code.pbo на рабочем столе.

3. Распаковать dayz_code.pbo, который вы разместили на своем рабочем столе. Внутри папки dayz_code найдите папку compile.

4. Внутри папки compile вы найдете fn_selfActions.sqf. Сделайте копию и поместите ее на рабочий стол.

5. Вернитесь в основную папку dayz_code и найдите папку init. Внутри папки init вы найдете compiles.sqf. Сделайте копию и поместите ее на рабочий стол.

6. В папке миссии сервера создайте папку fixes, если у вас ее еще нет. Переместите fn_selfActions.sqf и compiles.sqf с рабочего стола в эту папку.

7. В вашем compiles.sqf найдите следующую строку:

fnc_usec_selfActions =        compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_selfActions.sqf";        //Checks which actions for self

Измените его на:

fnc_usec_selfActions =      compile preprocessFileLineNumbers "fixes\fn_selfActions.sqf";        //Checks which actions for self

8. В init.sqf найдите следующую строку:

call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";              //Compile regular functions

Измените его на:

call compile preprocessFileLineNumbers "fixes\compiles.sqf";              //Compile regular functions

 

Установка аддона:

1. В папке миссии сервера создайте новую папку scripts, если у вас ее еще нет.

2. В папке scripts создайте новый текстовый документ и назовите его zombieshield.sqf.

3. Скопируйте и вставьте следующий код в zombieshield.sqf:

private ["_mypos", "_dir", "_createShield", "_sounddist", "_timeplay", "_shield", "_shieldUp", "_timer", "_zombies", "_count", "_zombie", "_soundList"];
 
player playActionNow "Medic";
sleep 1;
titleText ["You are building an Anti-Zombie Frequency Emitter.","PLAIN DOWN"]; titleFadeOut 5;
 
_mypos = getposATL player;
_dir = getdir player;
_mypos = [(_mypos select 0)+2*sin(_dir),(_mypos select 1)+2*cos(_dir), (_mypos select 2)];
_createShield = createVehicle ["SkeetMachine", _mypos, [], 0, "CAN_COLLIDE"];
_createShield setDir _dir;
_createShield setposATL _mypos;
sleep 1;
 
player removeMagazine "TrashJackDaniels";
player removeMagazine "TrashTinCan";
player removeMagazine "PartEngine";
player removeMagazine "ItemJerrycan";
sleep 0.01;
player addMagazine "ItemJerrycanEmpty";
 
titleText ["Device activated.","PLAIN DOWN"]; titleFadeOut 5;
 
_sounddist = 50;
_timeplay = 18;
while {_timeplay > 1} do {
    _shield = nearestObject [player, "SkeetMachine"];
    [nil,_shield,rSAY,["engine_12s", _sounddist]] call RE;
 
    _shieldUp = (alive _shield);
    _timer = time;
    while {_shieldUp} do {
        _zombies = (getPosATL _shield) nearEntities ["zZombie_Base",20];
        _count = count _zombies;
 
        for "_i" from 0 to (_count -1) do {
            _zombie = _zombies select _i;
            _zombie setdamage 1;
            sleep 0.01;
        };
        if ((time - _timer) > 10) exitwith {};
    };
    _soundList = ["PMC_ElectricBlast1","PMC_ElectricBlast2"] call BIS_fnc_selectRandom;
    [nil,_shield,rSAY,[_soundList, _sounddist]] call RE;
    _timeplay = _timeplay - 1;
};
 
sleep 1;
deleteVehicle _createShield;
titleText ["Device deactivated.","PLAIN DOWN"]; titleFadeOut 5;

4. Откройте fn_selfActions.sqf скопируйте и вставьте следующий код в конец файла:

// ZOMBIE SHIELD START
if (("TrashTinCan" in magazines player) && ("TrashJackDaniels" in magazines player) && ("PartEngine" in magazines player) && ("ItemJerrycan" in magazines player) && ("ItemToolbox" in items player)) then {
    hasShield = true;
} else {
    hasShield = false;
};
if (hasShield) then {
    if (zombieShield < 0) then {
    zombieShield = player addAction [("<t color=""#00c362"">" + ("Anti-Zombie Freq Emitter") +"</t>"),"scripts\zombieshield\zombieshield.sqf","",5,false,true,"",""];
    };
} else {
    player removeAction zombieShield;
    zombieShield = -1;
};
// ZOMBIE SHIELD END

 

Как использовать:

1. Убедитесь, что у вас есть необходимые предметы в инвентаре.

2. Прокрутите колесо прокрутки и выберите опцию Anti-Zombie Freq Emitter.

3. Устройство убьет любых зомби, которые будут в радиусе 20 метров в течение следующих 3 минут.

 

FAQ:

В: У меня есть необходимые предметы в моем инвентаре, но я не получаю опцию колеса прокрутки.
О: Попробуйте сбросить необходимые предметы на землю и забрать их обратно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

×