В общем, в игре реализован интерфейс с помощью мыши - нужно выделять здания, и отдавать приказы (например, постройка). Реализовано это следующим образом - 2D-координата курсора преобразовывается в 3D-координату в мире, совершаются нехитрые преобразования, чтобы с ней (координатой) можно было адекватно работать, отслеживается, нет ли под курсором в мире здания, ну и в зависимости от того, был ли отдан приказ, выделено ли сейчас здание и т.д., совершается определенное действие. Проблема в следующем. У меня есть интерфейс, созданный с помощью Scaleform, и, соответственно, прописаны разные действия для кнопок и т.д.. Но есть нюанс - взаимодействие мыши с миром срабатывает всегда. То есть. возможна ситуация, когда под какой-то панелькой интерфейса будет здание, и когда я клацну на кнопку на этой панельке, это здание выделится, что мне ни к чему. Так вот - есть ли возможность поставить щелчок по интерфейсу более приоритетным, и не просчитывать взаимодействие с миром в таком случае? У меня есть один метод решения, но он сделан через универсальный интерфейс.Добавлено (02.05.2013, 02:56)
---------------------------------------------
Да, кстати, решение я вроде бы нашел, но пока не реализовал. В общем, идея следующая. Добавить в флэш-файле интерфейса новый слой, сделать его фоновым (ниже всех остальных слоев), вставить в него прямоугольник, растянуть на весь экран, выставить максимальную прозрачность, и в коде прописать событие "по щелчку", в котором просто вызывать соответственную функцию в UnrealScript (то есть, сменить StartFire на определенную функцию, и уже ее вызывать). В итоге, когда курсор на элементах интерфейса, они перекрывают прямоугольник, и функция взаимодействия курсора с миром просто не вызывается. Профит. Осталось понять, есть ли аналог OnMouseClick для объектов кроме кнопок.
Добавлено (16.05.2013, 02:16)
---------------------------------------------
Сделать вышеуказанный вариант не совсем получилось. В общем, я создал кнопку, растянул ее на весь экран, выставил максимальную прозрачность (по сути сделал невидимой), и просто прописал ее как обычную кнопку.