ок. второй маленький вопрос. можно как то в addaction убрать дубляж в центре экрана команды?
#1201 OFFLINE
Posted 19 May 2018 - 02:53
#1202 OFFLINE
Posted 19 May 2018 - 12:55
Парни, помогите в качестве примера как сделать addaction (если это реализовано этой командой) игроку, чтобы нужное действие не искать скролом мыши в меню, а сделать его появление при наведение на "цель" на определенном расстояни? И чтоб его не было в меню. Примерно так, как работает бисовский ревайв, когда игрок подходит к игроку и нажатием кнопки совершает действие на "цели".
можно как то в addaction убрать дубляж в центре экрана команды?
За это отвечает аргумент showWindow:
.#1203 OFFLINE
Posted 19 May 2018 - 18:21
ок. второй маленький вопрос. можно как то в addaction убрать дубляж в центре экрана команды?
lда можно дык эт самое там смотри там уже даже добавили новые параметры!даже уже париться не надо все готово сами бисы все сделали!смотри параметр showWindow тут типо false чтобы на экране не показывал имя твоего акшена
и тот что тебе нужен можно больше условия не писать вот он unconscious просто true и все
player addAction ["НАЗВАНИЕ", {скриптик}, [], 1.5, false, true, "", "", 15, true]
Edited by lopster102, 19 May 2018 - 21:05.
#1204 OFFLINE
Posted 19 May 2018 - 19:38
#1205 OFFLINE
Posted 20 May 2018 - 05:01
если хочется как в revive
#1206 OFFLINE
Posted 20 May 2018 - 08:35
если хочется как в revive
private _id = player addAction ["" + " ВЫЛЕЧИТЬСЯ" + "", "_this call A3E_fnc_HealAtBuilding;", [], 1, false, true, "", "call at_fnc_checkHealAtBuilding"]; if ((typeof player) in ["B_medic_F","O_medic_F"]) then {player removeAction _id;}; at_fnc_checkHealAtBuilding = { _return = false; _target = cursorTarget; if(isNull _target) exitwith {false;}; if((player distance _target)>4) exitwith {false;}; if((typeof _target) in [ "C_IDAP_Van_02_medevac_F", "C_Van_02_medevac_F" ]) then { _return = true; }; _return; };
Помогите пожалуйста преобразовать этот скрипт в вариант с https://community.bi...c_holdActionAdd
Edited by TopDen, 20 May 2018 - 08:39.
#1207 OFFLINE
Posted 20 May 2018 - 14:09
at_fnc_checkHealAtBuilding = { private _target = cursorTarget; ((typeOf _target) in ["C_IDAP_Van_02_medevac_F", "C_Van_02_medevac_F"]) and {(_target distance player) < 5} }; [ player, "ВЫЛЕЧИТЬСЯ", "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_revive_ca.paa", "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_revive_ca.paa", "call at_fnc_checkHealAtBuilding;", "call at_fnc_checkHealAtBuilding;", {}, {}, {call A3E_fnc_HealAtBuilding;}, {}, [], _duration, 1, false ] call BIS_fnc_holdActionAdd;
Нужную длительность (_duration) сам укажешь.
Вообще-то добавлять действие на игрока -- хреново. Также хреново сначала всем добавить действие, а потом у медиков удалить.
#1208 OFFLINE
Posted 20 May 2018 - 18:54
at_fnc_checkHealAtBuilding = { private _target = cursorTarget; ((typeOf _target) in ["C_IDAP_Van_02_medevac_F", "C_Van_02_medevac_F"]) and {(_target distance player) < 5} }; [ player, "ВЫЛЕЧИТЬСЯ", "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_revive_ca.paa", "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_revive_ca.paa", "call at_fnc_checkHealAtBuilding;", "call at_fnc_checkHealAtBuilding;", {}, {}, {call A3E_fnc_HealAtBuilding;}, {}, [], _duration, 1, false ] call BIS_fnc_holdActionAdd;Нужную длительность (_duration) сам укажешь.
Вообще-то добавлять действие на игрока -- хреново. Также хреново сначала всем добавить действие, а потом у медиков удалить.
спасибо за помощь. проверю. не мои скрипты.. учусь на чужой миссии)
#1210 OFFLINE
Posted 30 May 2018 - 01:35
всЕм привет! может быть такое что после удалении группы она не удаляется или под понятием deletegroup имеется ввиду что она изначально уже создана но не активна и удалить ее впринципе нельзя? просто чтобы понимать влияет ли это вообще на фпс если например после смерти ботов их группы не удалять?!так как после удаления группы я все равно почему то могу в нее кого то присоединить (groupnull) или лучше может быть их по цветам внутри одной группы распределять так как видимо нет смысла наверное вообще ботам выделять больше одной группы
Edited by lopster102, 30 May 2018 - 01:41.
#1211 OFFLINE
Posted 30 May 2018 - 02:13
Так же любой юнит может присоединиться к группе grpNull, тогда он создаст свою собственную группу и будет ее единственным бойцом.
А как по вашему на FPS может влиять просто структура которая хранится в памяти? Создайте пару десятков переменных и посмотрите измениться ли хоть как то FPS от этого, если вы не будете к ним обращаться вообще
Больше одной группы ботам имеет смысл выделять, так во-первых не будет непоняток для игроков по типу «35 убит» - игрок: «какой нах 35?», во-вторых, некоторые логики ИИ привязаны к группе, такие как выбор цели, лечение, передвижение, формация, выбор положения и т д - я не думаю что вам нужно поведение на подобии такого:
Командир групп нахоящийся на другом конце острова приказал своим бойцам перейти в скрытный режим, тем временем бойцы на другом конце острова находясь в бою вдруг переходят в режим скрытности и выходят из боя
#1212 OFFLINE
Posted 30 May 2018 - 18:37
lopster102,ну если вы напишите команды удаления группы и добавления юнита в группу в одном скрипте, то конечно группа не удалится
дык эт самое консоль отладки может считаться за один скрипт?вот таким способом я проверял удаление
a = group player;/////B alpha 1-1 b = creategroup west;/////B alpha 1-2 -----local exec-------- [player] join b; -----local exec-------- [player] join a; -----local exec-------- deletegroup b; -----local exec-------- [player] join b; -----local exec-------- hint str group player////B alpha 1-2 -----local exec-------- [player] join a; -----local exec-------- hint str b////[NULL -group]
вот собственно и вопрос то как это понимать?
Edited by lopster102, 30 May 2018 - 18:39.
#1213 OFFLINE
Posted 30 May 2018 - 19:03
консоль отладки может считаться за один скрипт?
Вообще-то так и есть.
вот собственно и вопрос то как это понимать?
Игрока же перекинули из группы b, поэтому её значение стало равно null.
Edited by Schatten, 31 May 2018 - 10:56.
#1214 OFFLINE
Posted 30 May 2018 - 19:13
1. Запомнили текущую группу игрока A и создали еще одну B
2. Отправили игрока в группу B
После выхода игрока из группы A, она удаляется
3. Отправляете игрока в группу A
A = grpNull >> создается новая группа C, и как я упомянул в начале сообщения - ее имя становится эквивалентным старой группе A
После выхода игрока из группы B, она удаляется
4. Удаляете группу B
B = grpNull >> ничего не удаляется
5. Отправляете игрока в группу B
B = grpNull >> создается новая группа D, с имеем эквивалентным старой группе B, т. к. первый индекс занят группой C
После выхода игрока из группы C, она удаляется
#1215 OFFLINE
Posted 30 May 2018 - 20:16
понял то есть это было просто совпадения что создавались группы с такими же индексами?
Edited by lopster102, 30 May 2018 - 20:43.
#1216 OFFLINE
Posted 31 May 2018 - 03:23
#1217 OFFLINE
Posted 31 May 2018 - 20:49
ага спс!эт самое смотрите прикол не получается вызвать функцию у клиента чето сегодня
getinvite = call fn_getinvite; _UID publicVariableClient "getinvite";
видимо есть разница чтоли потмоу что обычным пабликом можно сделать вызов функции а таким чето не получается
#1218 OFFLINE
Posted 31 May 2018 - 22:23
#1219 OFFLINE
Posted 31 May 2018 - 22:29
Что написано насчёт попытки вызова в отчёте?
А что там будет написано? Да ни чего).
Вызывающий вызвал функцию у себя, а клиенту отправил результат. Всё норм, как написано, то и исполнено).