Перейти к содержимому


Фотография

Повторение скрипта на юните, после его смерти.


Лучший Ответ Blender , 25 April 2015 - 19:16

А как сделать для конкретного юнита? К примеру, у меня 7 бойцов, как сделать чтобы только у них работало дыхание после возрождения (до смерти)?

Либо вписать в инициализацию этих юнитов в редакторе, либо дать этим юнитам имена, и выполнять скрипт только для них.
Например мы назвали наших юнитов - myUnit1, myUnit2, myUnit3. Тогда в скрипте пишем:
if (player in [myUnit1, myUnit2, myUnit3]) then { // Выполняем скрипт, если игрок равен одному из трех юнитов массива
    while {true} do {
        waitUntil { sleep 0.1; alive player }; // Ждем пока игрок "оживет"
        [player, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>";
        waitUntil {sleep 0.5; !alive player }; // Ждем пока игрок умрет
    }; // Цикл WHILE - все повторяется заново
};
Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 OFFLINE   axon4er13

axon4er13

    Рядовой

  • Пользователи
  • 29 сообщений

Отправлено 25 April 2015 - 11:32

Доброго времени суток!
Нашел скрипт на пар изо рта. Прикрутил. Все работает. Но, после смерти/возрождения игрока скрипт не работает (пар изо рта не идет)
Подскажите, как сделать чтобы работал? Заранее спасибо!
 
Сам скрипт:
Скрытый текст

Ниже прикрепил файл

Прикрепленные файлы

  • Прикрепленный файл  nameofscript.sqf   921байт   12 Количество загрузок:

Сообщение отредактировал Blender: 25 April 2015 - 12:31
[code][spoiler]

  • 1

#2 OFFLINE   Blender

Blender

    Прапорщик

  • Администраторы
  • 615 сообщений
  • Откуда:Torrevieja, España

Отправлено 25 April 2015 - 12:36

Тут два варианта:

1. Вызывать скрипт по событию "

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

" с помощью

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

.

player addEventHandler ["Respawn", { [_this select 0, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>" }];

2. Создать цикл, который смотрит за состоянием игрока, и выполняет скрипт.

while {true} do {
    waitUntil { sleep 0.1; alive player }; // Ждем пока игрок "оживет"
    [player, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>";
    waitUntil {sleep 0.5; !alive player }; // Ждем пока игрок умрет
}; // Цикл WHILE - все повторяется заново

Естественно <ПУТЬ К ФАЙЛУ СКРИПТА> и <ИНТЕНСИВНОСТЬ> заменить на соответствующие значения


  • 1

#3 OFFLINE   axon4er13

axon4er13

    Рядовой

  • Пользователи
  • 29 сообщений

Отправлено 25 April 2015 - 18:48

Тут два варианта:

1. Вызывать скрипт по событию "

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

" с помощью

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

.

player addEventHandler ["Respawn", { [_this select 0, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>" }];

2. Создать цикл, который смотрит за состоянием игрока, и выполняет скрипт.

while {true} do {
    waitUntil { sleep 0.1; alive player }; // Ждем пока игрок "оживет"
    [player, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>";
    waitUntil {sleep 0.5; !alive player }; // Ждем пока игрок умрет
}; // Цикл WHILE - все повторяется заново

Естественно <ПУТЬ К ФАЙЛУ СКРИПТА> и <ИНТЕНСИВНОСТЬ> заменить на соответствующие значения

А как сделать для конкретного юнита? К примеру, у меня 7 бойцов, как сделать чтобы только у них работало дыхание после возрождения (до смерти)?


  • 0

#4 OFFLINE   Blender

Blender

    Прапорщик

  • Администраторы
  • 615 сообщений
  • Откуда:Torrevieja, España

Отправлено 25 April 2015 - 19:16   Лучший Ответ

А как сделать для конкретного юнита? К примеру, у меня 7 бойцов, как сделать чтобы только у них работало дыхание после возрождения (до смерти)?

Либо вписать в инициализацию этих юнитов в редакторе, либо дать этим юнитам имена, и выполнять скрипт только для них.
Например мы назвали наших юнитов - myUnit1, myUnit2, myUnit3. Тогда в скрипте пишем:
if (player in [myUnit1, myUnit2, myUnit3]) then { // Выполняем скрипт, если игрок равен одному из трех юнитов массива
    while {true} do {
        waitUntil { sleep 0.1; alive player }; // Ждем пока игрок "оживет"
        [player, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>";
        waitUntil {sleep 0.5; !alive player }; // Ждем пока игрок умрет
    }; // Цикл WHILE - все повторяется заново
};

  • 1

#5 OFFLINE   axon4er13

axon4er13

    Рядовой

  • Пользователи
  • 29 сообщений

Отправлено 28 April 2015 - 13:37

 

А как сделать для конкретного юнита? К примеру, у меня 7 бойцов, как сделать чтобы только у них работало дыхание после возрождения (до смерти)?

Либо вписать в инициализацию этих юнитов в редакторе, либо дать этим юнитам имена, и выполнять скрипт только для них.
Например мы назвали наших юнитов - myUnit1, myUnit2, myUnit3. Тогда в скрипте пишем:
if (player in [myUnit1, myUnit2, myUnit3]) then { // Выполняем скрипт, если игрок равен одному из трех юнитов массива
    while {true} do {
        waitUntil { sleep 0.1; alive player }; // Ждем пока игрок "оживет"
        [player, <ИНТЕНСИВНОСТЬ>] execVM "<ПУТЬ К ФАЙЛУ СКРИПТА>";
        waitUntil {sleep 0.5; !alive player }; // Ждем пока игрок умрет
    }; // Цикл WHILE - все повторяется заново
};

Спасибо!


  • 0




Яндекс.Метрика