doGesture(name) - выполнить жест по имени жеста. Параметр name этой функции является именем выполняемого действия.
Возможные действия:
Пример использования:
var bot1 = scene.getBotByName("bot1"); bot1.doGesture("look_at_watch");
doGestureInCycle(name, replayCount) - выполнить жест replayCount раз. Параметр name этой функции является именем выполняемого действия.
playSound(res, volume) – проиграть звук из серверного ресурса res (полученный с помощью getServerResource) с уровнем громкости volume в процентах. Бот должен на протяжении проигрывания звука махать руками и шевелить ртом. Могут быть проиграны любые звуки в формате wav или mp3, предварительно загруженные в коллекцию ресурсов.
Пример использования:
var bot1 = scene.getBotByName("bot1"); scene.myRes = getServerResource("long_speech.mp3"); bot1.onPress = function() { bot1.playSound(scene.myRes, 100); }
stopSounds() – прекратить проигрывание всех звуков Пример использования – при нажатии на bot1, он начинает проигрывать звук, а при нажатии на bot2 перестаёт:
var bot1 = scene.getBotByName("bot1"); var bot2 = scene.getBotByName("bot2"); scene.myRes = getServerResource("table_speech.mp3"); bot1.onPress = function() { bot1.playSound(scene.myRes, 100); } bot2.onPress = function() { bot1. stopSounds(); }
goToPos (x, y) – бот идёт в точку c координатами x, y. При этом изменяется синхронизируемое свойство position бота.
Пример:
var bot1 = scene.getBotByName("bot1"); bot1.goToPos(62385, 26900);
teleport(x, y) – бот переносится в точку с координатами x, y моментально. При этом изменяется синхронизируемое свойство position бота.
Пример:
var bot1 = scene.getBotByName("bot1"); bot1.teleport (62385, 26900);
writeToChat(str) – бот пишет в чат строку str, в чате отображается имя, аватар бота и строка str.
Пример:
var bot1 = scene.getBotByName("bot1"); bot1.writeToChat (“Hello world!”);
showDialog(name, question, answers, sound, answersSound) – показать диалоговое окно бота с именем name с вопросом question и 1-10 вариантами ответа (массив строк answers). Вопрос может быть продублирован звуком sound, а может быть проигнорирован (sound = null). answersSound – массив звуков к вариантам ответов. Вместо массива ответов допустим null.
Пример:
scene.questionSound = getServerResource("question.mp3"); scene.answers = new Array(); scene.answersSound = new Array(); for (var i = 0; i < 5; ++i) { scene.answers.push("answer " + i); scene.answersSound.push(scene.musica); }
var bot1 = scene.getBotByName("bot1"); bot1.onPress = function() { var obj = showDialogueBox("bot1", "Some question here", scene.answers, scene.questionSound, scene.answersSound); obj.onClose = function() { 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);