Цитата Сообщение от Serduko Посмотреть сообщение
Спасибо. Т.е. переменная все время мониторится ТАРГЕТом или надо создавать функцию мониторинга данной переменной? Раньше не пробовал под ТАРГЕТ программировать.
Нет, переменная не мониторится сама по себе. Посмотри мой пост от 11.10.12(чуть выше на этой странице), там есть полный скрипт. Вот, там есть функция int EventHandle(int type, alias o, int x), которая вызывается всегда, когда происходит какое-то событие на физическом устройстве, будь то перемещение оси или нажатие/отпускание любой кнопки. Надо вне этой функции создать переменную(кажется, ключевое слово static не поддерживается таргетом), которая будет хранить состояние переключателя. Когда ты переключаешь переключатель, функция вызывается, а в аргумент "х"(кстати, это я назвал аргумент, как в мануале, можно дать ему любое имя, и есть более лучшие информативные варианты, например, назвать этот аргумент "source") этой функции передается код твоего переключателя, который говорит нам, что с переключателем что-то случилось. При помощи if`а ты отлавливаешь именно это событие(у меня там отлавливаются нажатие кнопок В11 или В12), и совершаешь необходимое действие на виртуальном контроллере. Т.е., например, из позиции 1 переключатель переключился в центр. В переменной x ты получишь код, соответствующий нажатию переключателя в центр, а в твоей переменной будет лежать что-то(ты сам можешь это определить, например, так 1 - первая позиция, 2 - вторая позиция, 0 - центр), что, как ты знаешь, соответствует нахождению переключателя в позиции 1. При помощи еще одного if`а ты проверяешь, что лежит в твоей переменной - если 1 - прогаешь один набор действий, если 2 - то другой набор. Кроме самих действий(нажатие кнопочек на виртуальном контроллере и т.д.) тебе нужно будет присвоить своей переменной новое значение (в нашем примере - 0, т.к. переключатель переместился в центр), вот, как бы, и все. Не нужно специальной функции мониторинга, все действия с переменной будут производиться только тогда, когда будет происходить событие, этой переменной касающееся.
К сожалению, это такое объяснение на пальцах пока, у меня таргета ща нет под рукой, и я чутка подзабыл, что точно там передается, но схема примерно такая.
Кстати, если ты не программист и тебе непонятны какие-то конструкции местого языка, можешь смело гуглить эти конструкции, как если бы они относились к языку Си, т.к. таргетовский язык практически точно его копирует, там есть даже некоторые функции из стандартной библиотеки, например, printf.
Если не справишься, пиши, я поставлю таргет, и сделаю примеры кода. И еще, там, в таргете, есть device analizer, запусти его, и посмотри, что происходит, когда ты переключаешь переключатели. По идее, джойстик с точки зрения программы - это много кнопок и несколько осей, так вот, посмотри, какие кнопки в аналайзере отжимаются/нажимаются, когда ты щелкаешь переключателем. И сюда напиши результаты наблюдений. Находятся ли какие-то из них в нажатом положении всегда, если переключатель в определенной позиции.

--- Добавлено ---

И, кстати, всем советую пользоваться таргетом сразу начиная со скриптов - гуевое его программирование весьма ущербно на мой взгляд, и нет смысла его использовать, когда есть такой суперский скриптовый язык, а заодно вы больше поймете, че там да как работает.