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


Фотография

Лазерный целеуказатель и переменные, которые он возвращает


Лучший Ответ sharkman , 20 January 2018 - 16:09

sharkman, во-первых, текст ошибки, в том числе на русском, приводится в RPT-файле; во-вторых, _nObject -- массив объектов, а tank -- объект, то есть ты сравниваешь несравнимые типы. Извлеки элемент из массива, а потом сравнивай.

Спасибо за подсказку, сейчас буду кубатурить! 

Schatten,

if ((_nObject select 0)==tank) then {Hint "Это АБРАМС"}; 

Да, сработало! Спасибо!!!!

Перейти к сообщению


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

#1 OFFLINE   sharkman

sharkman

    Ефрейтор

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

Отправлено 19 January 2018 - 17:52

Здравствуйте уважаемые коллеги!

 

Хотел узнать, как можно вернуть имя переменной объекта, которой подсвечиваешь лазером?

Ранее в редакторе объектам были даны имена, например tank. Думал, что команда

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

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

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

решит эту задачу:

 _TargLaser = laserTarget player;
 hint str _TargLaser;

но результат выдает совершенно другой (скриншот прилагаю).

 

Пробовал другой вариант:

_TargLaser = laserTarget player;
_targ = vehicleVarName _TargLaser; 
hint str _targ;

Выдает пустую строку "".

 

Буду очень признателен, если кто-нибудь сможет объяснить что тут не так и возможные пути решения.

Заранее благодарен!

 

 

 

 

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


Сообщение отредактировал sharkman: 19 January 2018 - 17:56

  • 0

#2 OFFLINE   vlad333000

vlad333000

    Полковник

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

Отправлено 19 January 2018 - 22:14

sharkman, эта команда возвращает вам вон ту зелененькую точку в виде объекта :)
Узнать что подсвечено? Посмотрите какие объекты есть рядом с этой точкой используя nearXXX и lineIntersectXXX :)
  • 1

#3 OFFLINE   sharkman

sharkman

    Ефрейтор

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

Отправлено 20 January 2018 - 15:56

sharkman, эта команда возвращает вам вон ту зелененькую точку в виде объекта :)
Узнать что подсвечено? Посмотрите какие объекты есть рядом с этой точкой используя nearXXX и lineIntersectXXX :)

Огромное спасибо за подсказку!  Попробовал применить: 

_klassObj = ["B_MBT_01_cannon_F", "B_Heli_Transport_03_F", "B_Truck_01_transport_F", "rhsusf_m1a2sep1tuskiid_usarmy", "B_APC_Tracked_01_rcws_F"]; // классы объектов для опознования целеуказателем

while {alive player} do
{
_TargLaser = laserTarget player;
_nObject = nearestObjects [_TargLaser, _klassObj, 5];
hint str _nObject;
sleep 1;
}; 

Да, выводит имя перемененной объекта, заданный ранее в редакторе.

 

 Хотел осуществить в цикле еще вот это:

if (_nObject==tank) then {Hint "Это АБРАМС"};

Но это не работает, выдает ошибку, может подскажите где я ошибся? Заранее благодарен!

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


  • 0

#4 OFFLINE   Schatten

Schatten

    Капитан

  • Пользователи
  • 1792 сообщений
  • Откуда:Тбилиси, Грузия

Отправлено 20 January 2018 - 16:03

sharkman, во-первых, текст ошибки, в том числе на русском, приводится в RPT-файле; во-вторых, _nObject -- массив объектов, а tank -- объект, то есть ты сравниваешь несравнимые типы. Извлеки элемент из массива, а потом сравнивай.


  • 2

#5 OFFLINE   sharkman

sharkman

    Ефрейтор

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

Отправлено 20 January 2018 - 16:09   Лучший Ответ

sharkman, во-первых, текст ошибки, в том числе на русском, приводится в RPT-файле; во-вторых, _nObject -- массив объектов, а tank -- объект, то есть ты сравниваешь несравнимые типы. Извлеки элемент из массива, а потом сравнивай.

Спасибо за подсказку, сейчас буду кубатурить! 

Schatten,

if ((_nObject select 0)==tank) then {Hint "Это АБРАМС"}; 

Да, сработало! Спасибо!!!!


  • 0




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