Образовательный виртуальный мир vAcademia

Инструменты пользователя

Инструменты сайта


Боковая панель

Это старая версия документа.


Функции vJS для управления ботами

doGesture(name) - выполнить жест по имени жеста. Параметр name этой функции является именем выполняемого действия.

Возможные действия: • agree - согласие, • disagree - несогласие, • applause - аплодисменты, • waving – помахать рукой, • shrug – пожать плечами, • laugh - смех, • approv - одобрение, • cheer - ура, • look_at_watch – посмотреть на часы, • dance – танцевать.

Пример использования: 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 и 2-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());

} }

jazyk/bots_2.1400222017.txt.gz · Последние изменения: 2023/05/08 17:36 (внешнее изменение)