Образовательный виртуальный мир 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.1400222224.txt.gz · Последние изменения: 2023/05/08 17:36 (внешнее изменение)