Если вы не забыли, то мне помимо спавна юнита и вейпоинта ещё и инит нужен, _infantry9 setFuel 0; выдаёт ошибку на эту строку.
Сообщение отредактировал nammidd: 28 May 2015 - 02:30
Лучший Ответ Djon , 28 May 2015 - 03:16
Это готовый код с вайпойнтом и техникой с пустым баком
_infantry9 = [getMarkerPos "infantryspawn9", 40, "O_APC_Tracked_02_AA_F", EAST] call bis_fnc_spawnvehicle; _grpINF9 = _infantry9 select 2; _wp9 = _grpINF9 addWaypoint [getMarkerPos "wpinfantry9", 5]; _wp9 setWaypointType "GUARD"; _wp9 setWaypointSpeed "LIMITED"; _wp9 setWaypointBehaviour "COMBAT"; _infantry9 select 0 setFuel 0;
Объясняю на пальцах
Вы создали массив _infantry9 в который входит [техника,[экипаж],группа].
Для того, чтобы обратиться к какому либо элементу из этого массива вам нужно каким то образом это выразить при помощи кода так?
Значит этот массив будет выглядеть для армы таким образом [select 0,[select 1]select 2,]
если вы хотите применить команду к технике допустим, то так как у вас нет имени этой техники а есть только массив данных _infantry9
пишите _infantry9 select 0 setFuel 0; // где указываете массив _infantry9 и конкретный элемент из этого массива select 0 который в данном случае соответствует элементу - техника. Таким образом это выражение обращается исключительно к технике из массива.
Так понятно?
Перейти к сообщениюОтправлено 28 May 2015 - 02:26
Если вы не забыли, то мне помимо спавна юнита и вейпоинта ещё и инит нужен, _infantry9 setFuel 0; выдаёт ошибку на эту строку.
Сообщение отредактировал nammidd: 28 May 2015 - 02:30
Отправлено 28 May 2015 - 02:58
_infantry9 = [getMarkerPos "infantryspawn9", 40, "O_APC_Tracked_02_AA_F", EAST] call bis_fnc_spawnvehicle; _grpINF9 = _infantry9 select 2; _wp9 = _grpINF9 addWaypoint [getMarkerPos "wpinfantry9", 5]; _wp9 setWaypointType "GUARD"; _wp9 setWaypointSpeed "LIMITED"; _wp9 setWaypointBehaviour "COMBAT"; _infantry9 select 0 setFuel 1;
Что то я не обратил внимание на ваши изобретения:
_grpINF9 = group ((_infantry9 select 1) select 0);
Они не к чему.
Как Влад написал
_grpINF9 = _infantry9 select 2;
Так и достаточно. Выбираете из массива к чему вы хотите обратиться и с помощью селектов обращаетесь
[техника,[экипаж],группа] - [select 0,[select 1]select 2,]
Надеюсь я ни чего не напутал.
P.S. Вы ведь понимаете что созданная вами техника это массив так сказать объектов и вы не можете группе залить топливо или слить его))) По этому вам нужно объяснить арме, что вам нужна именно техника этой группы и манипулировать вы хотите именно с ее топливом.
Сообщение отредактировал Djon: 28 May 2015 - 03:01
Отправлено 28 May 2015 - 03:05
_infantry9 = [getMarkerPos "infantryspawn9", 40, "O_APC_Tracked_02_AA_F", EAST] call bis_fnc_spawnvehicle; _grpINF9 = _infantry9 select 2; _wp9 = _grpINF9 addWaypoint [getMarkerPos "wpinfantry9", 5]; _wp9 setWaypointType "GUARD"; _wp9 setWaypointSpeed "LIMITED"; _wp9 setWaypointBehaviour "COMBAT"; _infantry9 select 0 setFuel 1;Что то я не обратил внимание на ваши изобретения:
_grpINF9 = group ((_infantry9 select 1) select 0);Они не к чему.
Как Влад написал
_grpINF9 = _infantry9 select 2;Так и достаточно. Выбираете из массива к чему вы хотите обратиться и с помощью селектов обращаетесь
[техника,[экипаж],группа] - [select 0,[select 1]select 2,]Надеюсь я ни чего не напутал.
P.S. Вы ведь понимаете что созданная вами техника это массив так сказать объектов и вы не можете группе залить топливо или слить его))) По этому вам нужно объяснить арме, что вам нужна именно техника этой группы и манипулировать вы хотите именно с ее топливом.
Как выбирать из массива? Я вообще в этом не понимаю, куда и что вставлять.
Отправлено 28 May 2015 - 03:16 Лучший Ответ
Это готовый код с вайпойнтом и техникой с пустым баком
_infantry9 = [getMarkerPos "infantryspawn9", 40, "O_APC_Tracked_02_AA_F", EAST] call bis_fnc_spawnvehicle; _grpINF9 = _infantry9 select 2; _wp9 = _grpINF9 addWaypoint [getMarkerPos "wpinfantry9", 5]; _wp9 setWaypointType "GUARD"; _wp9 setWaypointSpeed "LIMITED"; _wp9 setWaypointBehaviour "COMBAT"; _infantry9 select 0 setFuel 0;
Объясняю на пальцах
Вы создали массив _infantry9 в который входит [техника,[экипаж],группа].
Для того, чтобы обратиться к какому либо элементу из этого массива вам нужно каким то образом это выразить при помощи кода так?
Значит этот массив будет выглядеть для армы таким образом [select 0,[select 1]select 2,]
если вы хотите применить команду к технике допустим, то так как у вас нет имени этой техники а есть только массив данных _infantry9
пишите _infantry9 select 0 setFuel 0; // где указываете массив _infantry9 и конкретный элемент из этого массива select 0 который в данном случае соответствует элементу - техника. Таким образом это выражение обращается исключительно к технике из массива.
Так понятно?
Отправлено 28 May 2015 - 03:25
Это готовый код с вайпойнтом и техникой с пустым баком
_infantry9 = [getMarkerPos "infantryspawn9", 40, "O_APC_Tracked_02_AA_F", EAST] call bis_fnc_spawnvehicle; _grpINF9 = _infantry9 select 2; _wp9 = _grpINF9 addWaypoint [getMarkerPos "wpinfantry9", 5]; _wp9 setWaypointType "GUARD"; _wp9 setWaypointSpeed "LIMITED"; _wp9 setWaypointBehaviour "COMBAT"; _infantry9 select 0 setFuel 0;Объясняю на пальцах
Вы создали массив _infantry9 в который входит [техника,[экипаж],группа].
Для того, чтобы обратиться к какому либо элементу из этого массива вам нужно каким то образом это выразить при помощи кода так?
Значит этот массив будет выглядеть для армы таким образом [select 0,[select 1]select 2,]
если вы хотите применить команду к технике допустим, то так как у вас нет имени этой техники а есть только массив данных _infantry9
пишите _infantry9 select 0 setFuel 0; // где указываете массив _infantry9 и конкретный элемент из этого массива select 0 который в данном случае соответствует элементу - техника. Таким образом это выражение обращается исключительно к технике из массива.
Так понятно?
Большое спасибо за помощь и за разъяснение, в данном примере всё понятно, но тем не менее мне нужно будет потом попробовать почитать про это ещё.
Сообщение отредактировал nammidd: 28 May 2015 - 03:27
Отправлено 28 May 2015 - 03:36
nammidd, Обязательно почитайте. Я тут редко и наверно по этому так разжёвываю, хотя сам не далек в этом. А парни которые по сути ответили на ваш вопрос ( в частности Влад дал вам его на первой странице) отвечают тут на подобные вопросы каждый день и нервишки не железные, сами понимаете, каждому человеку сотый раз объяснять что и как. Я уже давненько стараюсь им не надоедать.