Здесь показаны различия между двумя версиями данной страницы.
jazyk:bots_2 [2014/05/16 10:33] vadmin создано |
jazyk:bots_2 [2023/05/08 17:44] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | {{indexmenu_n>13}} | ||
=====Функции vJS для управления ботами==== | =====Функции vJS для управления ботами==== | ||
- | doGesture(name) - выполнить жест по имени жеста. Параметр name этой функции является именем выполняемого действия. | + | //doGesture(name)// - выполнить жест по имени жеста. Параметр name этой функции является именем выполняемого действия. |
Возможные действия: | Возможные действия: | ||
- | • agree - согласие, | + | * agree - согласие; |
- | • disagree - несогласие, | + | * disagree - несогласие; |
- | • applause - аплодисменты, | + | * applause - аплодисменты; |
- | • waving – помахать рукой, | + | * waving – помахать рукой; |
- | • shrug – пожать плечами, | + | * shrug – пожать плечами; |
- | • laugh - смех, | + | * laugh - смех; |
- | • approv - одобрение, | + | * approv - одобрение; |
- | • cheer - ура, | + | * cheer - ура; |
- | • look_at_watch – посмотреть на часы, | + | * look_at_watch – посмотреть на часы; |
- | • dance – танцевать. | + | * dance – танцевать. |
Пример использования: | Пример использования: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | bot1.doGesture("look_at_watch"); | + | bot1.doGesture("look_at_watch"); |
- | doGestureInCycle(name, replayCount) - выполнить жест replayCount раз. Параметр name этой функции является именем выполняемого действия. | + | //doGestureInCycle(name, replayCount)// - выполнить жест replayCount раз. Параметр name этой функции является именем выполняемого действия. |
- | playSound(res, volume) – проиграть звук из серверного ресурса res (полученный с помощью getServerResource) с уровнем громкости volume в процентах. Бот должен на протяжении проигрывания звука махать руками и шевелить ртом. Могут быть проиграны любые звуки в формате wav или mp3, предварительно загруженные в коллекцию ресурсов. | + | //playSound(res, volume)// – проиграть звук из серверного ресурса res (полученный с помощью getServerResource) с уровнем громкости volume в процентах. Бот должен на протяжении проигрывания звука махать руками и шевелить ртом. Могут быть проиграны любые звуки в формате wav или mp3, предварительно загруженные в коллекцию ресурсов. |
Пример использования: | Пример использования: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | scene.myRes = getServerResource("long_speech.mp3"); | + | scene.myRes = getServerResource("long_speech.mp3"); |
- | bot1.onPress = function() | + | bot1.onPress = function() |
- | { | + | { |
- | bot1.playSound(scene.myRes, 100); | + | bot1.playSound(scene.myRes, 100); |
- | } | + | } |
- | stopSounds() – прекратить проигрывание всех звуков | + | //stopSounds()// – прекратить проигрывание всех звуков |
Пример использования – при нажатии на bot1, он начинает проигрывать звук, а при нажатии на bot2 перестаёт: | Пример использования – при нажатии на bot1, он начинает проигрывать звук, а при нажатии на bot2 перестаёт: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | var bot2 = scene.getBotByName("bot2"); | + | var bot2 = scene.getBotByName("bot2"); |
- | scene.myRes = getServerResource("table_speech.mp3"); | + | scene.myRes = getServerResource("table_speech.mp3"); |
- | bot1.onPress = function() | + | bot1.onPress = function() |
- | { | + | { |
- | bot1.playSound(scene.myRes, 100); | + | bot1.playSound(scene.myRes, 100); |
- | } | + | } |
- | bot2.onPress = function() | + | bot2.onPress = function() |
- | { | + | { |
- | bot1. stopSounds(); | + | bot1. stopSounds(); |
- | } | + | } |
- | goToPos (x, y) – бот идёт в точку c координатами x, y. При этом изменяется синхронизируемое свойство position бота. | + | //goToPos (x, y)// – бот идёт в точку c координатами x, y. При этом изменяется синхронизируемое свойство position бота. |
Пример: | Пример: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | bot1.goToPos(62385, 26900); | + | bot1.goToPos(62385, 26900); |
- | teleport(x, y) – бот переносится в точку с координатами x, y моментально. При этом изменяется синхронизируемое свойство position бота. | + | //teleport(x, y)// – бот переносится в точку с координатами x, y моментально. При этом изменяется синхронизируемое свойство position бота. |
Пример: | Пример: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | bot1.teleport (62385, 26900); | + | bot1.teleport (62385, 26900); |
- | writeToChat(str) – бот пишет в чат строку str, в чате отображается имя, аватар бота и строка str. | + | //writeToChat(str)// – бот пишет в чат строку str, в чате отображается имя, аватар бота и строка str. |
Пример: | Пример: | ||
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | bot1.writeToChat (“Hello world!”); | + | bot1.writeToChat (“Hello world!”); |
- | showDialog(name, question, answers, sound, answersSound) – показать диалоговое окно бота с именем name с вопросом question и 2-10 вариантами ответа (массив строк answers). Вопрос может быть продублирован звуком sound, а может быть проигнорирован (sound = null). answersSound – массив звуков к вариантам ответов. Вместо массива ответов допустим null. | + | |
+ | //showDialog(name, question, answers, sound, answersSound)// – показать диалоговое окно бота с именем name с вопросом question и 1-10 вариантами ответа (массив строк answers). Вопрос может быть продублирован звуком sound, а может быть проигнорирован (sound = null). answersSound – массив звуков к вариантам ответов. Вместо массива ответов допустим null. | ||
Пример: | Пример: | ||
- | scene.questionSound = getServerResource("question.mp3"); | + | scene.questionSound = getServerResource("question.mp3"); |
- | scene.answers = new Array(); | + | scene.answers = new Array(); |
- | scene.answersSound = new Array(); | + | scene.answersSound = new Array(); |
- | for (var i = 0; i < 5; ++i) | + | for (var i = 0; i < 5; ++i) |
- | { | + | { |
- | scene.answers.push("answer " + i); | + | scene.answers.push("answer " + i); |
- | scene.answersSound.push(scene.musica); | + | scene.answersSound.push(scene.musica); |
- | } | + | } |
- | var bot1 = scene.getBotByName("bot1"); | + | var bot1 = scene.getBotByName("bot1"); |
- | bot1.onPress = function() | + | bot1.onPress = function() |
- | { | + | { |
- | var obj = showDialogueBox("bot1", "Some question here", scene.answers, scene.questionSound, scene.answersSound); | + | var obj = showDialogueBox("bot1", "Some question here", scene.answers, scene.questionSound, scene.answersSound); |
- | obj.onClose = function() | + | obj.onClose = function() |
- | { | + | { |
- | traceStr(“Choosen answer = ” + this.getButtonId()); | + | traceStr(“Choosen answer = ” + this.getButtonId()); |
- | } | + | } |
- | } | + | } |
+ | |||
+ | //sit(chair, placeID)// - бот садится на 3D-объект chair c размеченными сиденьями на сидение с номером placeID (начинаются с 0), если сиденье занято – садится на ближайшее соседнее. | ||
+ | |||
+ | Пример: | ||
+ | var bot1 = scene.getBotByName("bot1"); | ||
+ | var sit1 = scene.getObjectByName("sit1"); | ||
+ | bot1.sit(sit1, 0); | ||
+ | |||
+ | //applyMimic(viseme)// - бот показывает на лице эмоцию с названием viseme (допустимые значения: smile). | ||
+ | |||
+ | Пример: | ||
+ | var bot1 = scene.getBotByName("bot1"); | ||
+ | bot1.applyMimic("smile"); | ||
+ | |||
+ | //pointerShow(pos)// - бот показывает указку, направленную в точку с координатами, переданными в аргументе pos (тип аргумента - Position3D). | ||
+ | |||
+ | Пример: | ||
+ | var bot1 = scene.getBotByName("bot1"); | ||
+ | var pos = new Position3D(0, 0, 0); | ||
+ | bot1.pointerShow(pos); | ||
+ | |||
+ | //pointerHide()// - бот прячет указку. | ||
+ | |||
+ | Пример: | ||
+ | var bot1 = scene.getBotByName("bot1"); | ||
+ | bot1.pointerHide(); | ||
+ | |||
+ | //pointerShowForTime(pos, time)// - бот показывает указку и прячет ее по истечении времени time (в миллисекундах). | ||
+ | |||
+ | Пример: | ||
+ | var bot1 = scene.getBotByName("bot1"); | ||
+ | var pos = new Position3D(0, 0, 0); | ||
+ | bot1.pointerShowForTime(pos, 1000); | ||