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


Фотография

Вопросы по скриптингу

Arma3 как плотформа для созда Скритпы

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

#1221 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 31 May 2018 - 23:05

 

 

Что написано насчёт попытки вызова в отчёте?

А что там будет написано? Да ни чего).

Вызывающий вызвал функцию у себя, а клиенту отправил результат. Всё норм, как написано, то и исполнено).

 

не ну так то да в принципе это логично =))но есть идеии  у когонить как это дело обыграть? там тупо одна строка в функции которую нужно исполнить именно клиенту  просто если вот например результатом окажется  еще раз вызов функции?

getinvite = call{
h = call fn_getinvite;
h
};

Сообщение отредактировал lopster102: 31 May 2018 - 23:10

  • 0

#1222 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 31 May 2018 - 23:21

но есть идеии  у когонить как это дело обыграть? там тупо одна строка в функции которую нужно исполнить именно клиенту

Ну так передавать нужно код. Но это тупой вариант. Более правильно определить функцию у клиента и запускать её с помощью

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

.


  • 0

#1223 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 31 May 2018 - 23:46

вообщем ток такой вариант в голвоу лезет!

зацените как вам

----------client------
fn_getinvite = {code};
------server------
getinvite = {call fn_getinvite};
getinvite  remoteExec["bis_fnc_call",owner client];

Сообщение отредактировал lopster102: 01 June 2018 - 05:28

  • 0

#1224 OFFLINE   Schatten

Schatten

    Капитан

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

Отправлено 01 June 2018 - 00:11

вообщем ток такой вариант в голвоу лезет!
зацените как вам

----------client------
_fn_getinvite = {code};
fn_getinvite = call compileFinal "_fn_getinvite";
------server------
getinvite = []spawn fn_getinvite;
owner client publicvariableclient "getinvite";

Полный отстой. Вижу непонимание того, что происходит и как используется, так что изучаем матчасть.

 

Тупой вариант:

if (isServer) then {
	_fn_getinvite = {...};

	_fn_getinvite remoteExec ["call", _player];
};

Предпочтительный вариант:

if (hasInterface) then {
	fn_getinvite = {...};
};
if (isServer) then {
	[] remoteExecCall ["fn_getinvite", _player];
};

Сообщение отредактировал Schatten: 02 June 2018 - 00:20

  • 0

#1225 OFFLINE   J7EXA7733

J7EXA7733

    Рядовой

  • Пользователи
  • 2 сообщений
  • Откуда:Не отвечать

Отправлено 09 June 2018 - 00:04

Всем доброго времени суток, товарищи. Прошу помощи, по редактору, как всегда. :acute:  Новый комп, аккаунт и всё как с чистого листа.

 

Сам вопросы:

-Как сделать переход между юнитами в стиле Call of Duty или Battlefield 3(4)? Мол те же события но только от другого персонажа. Сама команда выглядит, что-то вроде "P1 play in P2". Где Р1(2) - это играбельные персонажи.

-Как сделать нормальный(не кривой) спуск по тросу вертолета? Моды AGM и RHS

 

Ранее этот вопрос мною задавался, но опять же новая система и всё с нуля.

 

 

Заранее спасибо!


Сообщение отредактировал J7EXA7733: 09 June 2018 - 00:06

  • 0

#1226 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 09 June 2018 - 08:58

Всем доброго времени суток, товарищи. Прошу помощи, по редактору, как всегда. :acute:  Новый комп, аккаунт и всё как с чистого листа.

 

Сам вопросы:

-Как сделать переход между юнитами в стиле Call of Duty или Battlefield 3(4)? Мол те же события но только от другого персонажа. Сама команда выглядит, что-то вроде "P1 play in P2". Где Р1(2) - это играбельные персонажи.

-Как сделать нормальный(не кривой) спуск по тросу вертолета? Моды AGM и RHS

 

Ранее этот вопрос мною задавался, но опять же новая система и всё с нуля.

 

 

Заранее спасибо!

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

///но тут точно не помню последовательность аргументов так что проверьте! смысл в том что от одного юнита камера перелетит к другому и будет вам счастье.

selectPlayer  _newunit;
[player,_oldunit] spawn BIS_fnc_respawnGroup;

Сообщение отредактировал lopster102: 09 June 2018 - 09:03

  • 0

#1227 OFFLINE   SteelRat

SteelRat

    Полковник

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

Отправлено 09 June 2018 - 21:27

 

т.к не помню переходов в батле и колде=(.....

что то около спектатор.


  • 0

#1228 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

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

Отправлено 09 June 2018 - 21:45

ага спс!эт самое смотрите прикол  не получается вызвать функцию у клиента чето сегодня

getinvite = call fn_getinvite;
_UID  publicVariableClient "getinvite";

видимо есть разница чтоли потмоу что обычным пабликом можно сделать вызов функции  а таким чето не получается

xxx = compileFinal preprocessFileLineNumbers "xxx.sqf";

_UID  publicVariableClient "xxx";


  • 0

#1229 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 10 June 2018 - 00:09

 

 

т.к не помню переходов в батле и колде=(.....

что то около спектатор.

 

а ну эт самое тогда не подойдет мой вариант.....нужно  тупо тогда  зайти в ваниль и посмотреть скрипты спектатора


  • 1

#1230 OFFLINE   J7EXA7733

J7EXA7733

    Рядовой

  • Пользователи
  • 2 сообщений
  • Откуда:Не отвечать

Отправлено 10 June 2018 - 21:48

 

Всем доброго времени суток, товарищи. Прошу помощи, по редактору, как всегда. :acute:  Новый комп, аккаунт и всё как с чистого листа.

 

Сам вопросы:

-Как сделать переход между юнитами в стиле Call of Duty или Battlefield 3(4)? Мол те же события но только от другого персонажа. Сама команда выглядит, что-то вроде "P1 play in P2". Где Р1(2) - это играбельные персонажи.

-Как сделать нормальный(не кривой) спуск по тросу вертолета? Моды AGM и RHS

 

Ранее этот вопрос мною задавался, но опять же новая система и всё с нуля.

 

 

Заранее спасибо!

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

///но тут точно не помню последовательность аргументов так что проверьте! смысл в том что от одного юнита камера перелетит к другому и будет вам счастье.

selectPlayer  _newunit;
[player,_oldunit] spawn BIS_fnc_respawnGroup;

Слушай, ты Бог, это то что мне нужно было!  Спасибо большое :acute:  :)


  • 0

#1231 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 14 June 2018 - 23:34

Всем привет!  есть ли смысл удалять хендлер с дписплея если он вызывается через cutRsc как дополнительный интрефейс на экране?

вот пример как задумывал но так не будет работать -

Fn_ChekcStateCandler  = {
  _display = uiNamespace getVariable ["GUI_display",nil];
 if(!isnil "_display")exitWith{_display displayRemoveAllEventHandlers "Load"};
 uiNamespace setVariable ['GUI_display', _this select 0];
 nil;
};

class GUI
{
        idd = -1;
        duration = 10e10;////в качестве примера так есть дисплеи которые я вызываю на некоорое время и тут стоит вопрос о оптимизаци чтобы хендлер сработал один раз после вызова cutRsc 
        onLoad = "call Fn_ChekcStateCandler";
        fadein = 0;
        fadeout = 0;
        movingEnable = 0;
        objects[] = {}
        class controls{};
        };

         0 cutRsc ["GUI","PLAIN",1,false];                                                               

Сообщение отредактировал lopster102: 14 June 2018 - 23:42

  • 0

#1232 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 15 June 2018 - 03:40

lopster102, какой? Load? А нахрена? Он один раз вызвался и все, игра про него забыла...
Использование альтернативного синтаксиса getVariable очень странно, он был придуман для того, что бы nil не получать, а вы говорите ему вернуть nil, если переменныя nil...
Данный код вообще странный, при исчезновении дисплея он не станет nil, а станет displayNull, следовательно следующий вызов данного дисплея пойдет по ветке exitWith, а значит GUI_display будет хранить ссылку на старый дисплей, который эквивалентен NULL

Сообщение отредактировал vlad333000: 15 June 2018 - 03:41

  • 0

#1233 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 15 June 2018 - 04:18

lopster102, какой? Load? А нахрена? Он один раз вызвался и все, игра про него забыла...
Использование альтернативного синтаксиса getVariable очень странно, он был придуман для того, что бы nil не получать, а вы говорите ему вернуть nil, если переменныя nil...
Данный код вообще странный, при исчезновении дисплея он не станет nil, а станет displayNull, следовательно следующий вызов данного дисплея пойдет по ветке exitWith, а значит GUI_display будет хранить ссылку на старый дисплей, который эквивалентен NULL

спс!


Сообщение отредактировал lopster102: 15 June 2018 - 04:19

  • 0

#1234 OFFLINE   Ego_Brain

Ego_Brain

    Ефрейтор

  • Пользователи
  • 49 сообщений
  • Откуда:Холмск

Отправлено 15 June 2018 - 13:20

Здравствуйте.

Подскажите как задать маркеру форму (или нужно использовать drawicon) техники?

Нужно нарисовать на карте маркер спомощью скрипта, такой же какие выводятся на сложности солдат (маркер юнита из конфига этого юнита).

Подскажите пожалуйста.


  • 0

#1235 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 15 June 2018 - 14:05

Здравствуйте.
Подскажите как задать маркеру форму (или нужно использовать drawicon) техники?
Нужно нарисовать на карте маркер спомощью скрипта, такой же какие выводятся на сложности солдат (маркер юнита из конфига этого юнита).
Подскажите пожалуйста.

Тот что вы сказали в 99% случаев делается через drawIcon, т. к. маркера могут быть только заранее определенных текстур, и если делать через маркера, то придётся неслабо пописать кода
  • 0

#1236 OFFLINE   Ego_Brain

Ego_Brain

    Ефрейтор

  • Пользователи
  • 49 сообщений
  • Откуда:Холмск

Отправлено 15 June 2018 - 14:34

Друг, подскажи пожалуйста как реализовать с помощью обоих вариантов? Но вообще мне наверное желательно через маркеры, так как логика отрисовки марекров уже написана, но сделать только значок соответствующий!

Есть возможность вызывать drawIcon без привязки к обработчику события? Мне было бы так удобно. Пытаюсь но возникает ошибка, пропущены ;

 

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

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

, 24, 24,

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

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

, 'Player Vehicle', 1, 0.03, 'TahomaB', 'right' ];


  • 0

#1237 OFFLINE   lopster102

lopster102

    Ст.сержант

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

Отправлено 15 June 2018 - 21:18

 

Друг, подскажи пожалуйста как реализовать с помощью обоих вариантов? Но вообще мне наверное желательно через маркеры, так как логика отрисовки марекров уже написана, но сделать только значок соответствующий!

Есть возможность вызывать drawIcon без привязки к обработчику события? Мне было бы так удобно. Пытаюсь но возникает ошибка, пропущены ;

 

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

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

, 24, 24,

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

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

, 'Player Vehicle', 1, 0.03, 'TahomaB', 'right' ];

 

Привет!вы название маркера не правильно указали поэтому наверное ошибка.вместо 'iconStaticMG' нужно указать путь к этой картинке.а через маркера как сказал уже Влад вам придется  только модом свои картинки вставлять в конфиг чтобы уже их отрисовывать через createmarker  и этот код  будет очень не производительный и довльно большой!в принципе на FT-2 так и поступили взяв с армаголика скрипт маркеров поэтому там и фпс садится    прилично так что лучше вариант через drawIcon только   единственное нужно лишние знаки удалят из пути от сценария но опять же можно модом все картинки подготовить   тогда через префикс мода все вставится

 

 

  к примеру можно вот так делать

_icon = switch true do {
              case ((vehicle player) isKindOf "Car") : {"\A3\ui_f\data\map\markers\nato\n_motor_inf.paa"};
              case ((vehicle player) isKindOf "Man") : {"\A3\ui_f\data\map\markers\nato\n_inf.paa"};
              default {"\A3\ui_f\data\map\markers\nato\n_inf.paa"};
            };
 drawIcon [ _icon, [1,0,0,1], getPos player, 24, 24, getDir player, 'Player Vehicle', 1, 0.03, 'TahomaB','right' ];

или так можно еще

_Image = getText(configFile >>  "CfgVehicles" >> (typeOf (vehicle player)) >> "icon");
_Image = getText(configFile >>  "CfgVehicleIcons" >> _Image );
  drawIcon [ _Image, [1,0,0,1], getPos player, 24, 24, getDir player, 'Player Vehicle', 1, 0.03,'TahomaB','right'];

Сообщение отредактировал lopster102: 16 June 2018 - 17:44

  • 1

#1238 OFFLINE   Ego_Brain

Ego_Brain

    Ефрейтор

  • Пользователи
  • 49 сообщений
  • Откуда:Холмск

Отправлено 16 June 2018 - 10:16

 

drawIcon ["\A3\ui_f\data\map\markers\nato\n_inf.paa", [1,0,0,1], getPos player, 24, 24, getDir player, 'Player Vehicle', 1, 0.03, 'TahomaB','right'];

 

drawIcon ["\A3\ui_f\data\map\markers\nato\n_inf.p>
17:12:43   Error position: <["\A3\ui_f\data\map\markers\nato\n_inf.p>
17:12:43   Error Потеряны ;

Не получилось :sad:


  • 0

#1239 OFFLINE   Ego_Brain

Ego_Brain

    Ефрейтор

  • Пользователи
  • 49 сообщений
  • Откуда:Холмск

Отправлено 16 June 2018 - 10:26

Нужно передать еще контрол, из примера на их Вики я указал

findDisplay 12 displayCtrl 51 drawIcon

 

Но иконка отображается не в меню карты а в самой игре. Как сделать чтобы оно отображалось только на карте пока что не ясно.


  • 0

#1240 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 сообщений
  • Откуда:Кострома

Отправлено 16 June 2018 - 10:29

Ego_Brain, ну так на вики есть копипастовый пример.
  • 0




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