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


Фотография

триггер


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

#1 OFFLINE   nammidd

nammidd

    Ефрейтор

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

Отправлено 30 May 2015 - 11:18

В скрипте создаю танки вот таким вот образом

t1 = [getMarkerPos "csatspawn1", 0, "O_MBT_02_cannon_F", _grpt] call bis_fnc_spawnvehicle;

как мне передать их названия в тригер чтобы уничтожить к примеру вот так {_x setDammage 1;} forEach [t1,t2,t3...]};?

как я понял это массив, но как из него выбирать чтобы передать в триггер, даже в пределах этого же скрипта я не понимаю.

Ещё один пример, пробовал создавать другой триггер уже в этом скрипте , всё равно выдаёт ошибку

_trg setTriggerStatements ["vehicle Player in thislist and {alive _x} count [t1,t2,t3] < 1", "_infantryS = execVM 'infantry.sqf'", ""];

Сообщение отредактировал nammidd: 30 May 2015 - 11:32

  • 0

#2 OFFLINE   HarryWorner

HarryWorner

    Лейтенант

  • Модераторы
  • 1035 сообщений

Отправлено 30 May 2015 - 13:23

nammidd, у вас есть массив t1, который содержит такую информацию как
1) созданную технику (в вашем случаи Иранский танк),
2) его экипаж (3 бойца)
3) и в какую группу они входят.
 
Вы хотите уничтожить танк? Тогда пишем 
{_x setDammage 1;} forEach [t1 select 0]; 
Отсюда t1 select 0 означает что я выбираю 1) созданную технику (в вашем случаи Иранский танк),  
Если нужно уничтожить экипаж, то тогда select 1
{_x setDammage 1;} forEach [t1 select 1]; 
Я вижу что у вас несколько созданных разных групп, вот для примера мы уничтожаем танки первой группы и уничожаем экипаж во второй группе:
{_x setDammage 1;} forEach [t1 select 0, t2 select 1]; 
Теперь все ясно? Мы просто передаем массив t1,t2.. в триггер таким способом.
  • 2

#3 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

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

Отправлено 30 May 2015 - 13:29

nammidd, у вас есть массив t1, который содержит такую информацию как
1) созданную технику (в вашем случаи Иранский танк),
2) его экипаж (3 бойца)
3) и в какую группу они входят.
 
Вы хотите уничтожить танк? Тогда пишем 

{_x setDammage 1;} forEach [t1 select 0]; 
Отсюда t1 select 0 означает что я выбираю 1) созданную технику (в вашем случаи Иранский танк),  
Если нужно уничтожить экипаж, то тогда select 1
{_x setDammage 1;} forEach [t1 select 1]; 
Я вижу что у вас несколько созданных разных групп, вот для примера мы уничтожаем танки первой группы и уничожаем экипаж во второй группе:
{_x setDammage 1;} forEach [t1 select 0, t2 select 1]; 
Теперь все ясно? Мы просто передаем массив t1,t2.. в триггер таким способом.

 

 

спустя три года, я наконец-то понял основу вычисления массива 


  • 0

#4 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 30 May 2015 - 19:33

 

nammidd, у вас есть массив t1, который содержит такую информацию как
1) созданную технику (в вашем случаи Иранский танк),
2) его экипаж (3 бойца)
3) и в какую группу они входят.
 
Вы хотите уничтожить танк? Тогда пишем 

{_x setDammage 1;} forEach [t1 select 0]; 
Отсюда t1 select 0 означает что я выбираю 1) созданную технику (в вашем случаи Иранский танк),  
Если нужно уничтожить экипаж, то тогда select 1
{_x setDammage 1;} forEach [t1 select 1]; 
Я вижу что у вас несколько созданных разных групп, вот для примера мы уничтожаем танки первой группы и уничожаем экипаж во второй группе:
{_x setDammage 1;} forEach [t1 select 0, t2 select 1]; 
Теперь все ясно? Мы просто передаем массив t1,t2.. в триггер таким способом.

 

 

спустя три года, я наконец-то понял основу вычисления массива 

 

 

Такое впечатление что некоторые люди за зря тратят своё время!

 

http://arma3.ru/foru...pisaniiu/page-1

ArmA Scripting Tutorials: Массивы (Часть Номер Раз).

ArmA Scripting Tutorials: Массивы (Часть Номер Два).

ArmA Scripting Tutorials: Массивы (Часть Номер Три).


  • 0

#5 OFFLINE   TankiSD

TankiSD

    Ст. Прапорщик

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

Отправлено 30 May 2015 - 19:42

да я читал это читал, но не асилил и не понял толком ничего. 


  • 0

#6 OFFLINE   nammidd

nammidd

    Ефрейтор

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

Отправлено 30 May 2015 - 22:45

да я читал это читал, но не асилил и не понял толком ничего. 

аналогично, если не понятно, то даже если 10 раз это прочитать, то всё равно не поймёшь. Я так помимо этого гайда читал ещё много других.


Сообщение отредактировал nammidd: 30 May 2015 - 22:45

  • 0

#7 OFFLINE   Djon

Djon

    Старшина

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

Отправлено 30 May 2015 - 23:26

Я время от времени туда заглядываю. На начальном этапе я увидел там набор слов и иероглифов, но когда мало мальски представление о коде сложилось, то стал черпать от туда полезную информацию. Просто этот справочник и сделан как справочник, то есть учить там не чего а вот когда вопросы возникают по той или иной теме то заглянуть туда можно. И вообще думаю мало кто на чистом энтузиазме способен вложить столько трудов для разъяснения чего либо как это сделал Avi.


  • 0

#8 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 31 May 2015 - 19:18

Я время от времени туда заглядываю. На начальном этапе я увидел там набор слов и иероглифов, но когда мало мальски представление о коде сложилось, то стал черпать от туда полезную информацию. Просто этот справочник и сделан как справочник, то есть учить там не чего а вот когда вопросы возникают по той или иной теме то заглянуть туда можно. И вообще думаю мало кто на чистом энтузиазме способен вложить столько трудов для разъяснения чего либо как это сделал Avi.

 

Прямо в точку!). Золотые слова!

Читать это хорошо, это развивает. Но чтиво без практики, применительно к скриптингу, пустая трата времени.


  • 0

#9 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 сообщений
  • Откуда:РФ

Отправлено 31 May 2015 - 19:24

ЗЫ

Плюс файл лога всегда, почти всегда, услужливо укажет где и какую ошибку при написании вы сделали.


  • 0




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