SoundAPI

SoundAPI - библиотека, упрощающая работу со звуком.

Загрузка

Версия Ссылка Список изменений
1 Скачать
  • Первая версия
2 Скачать
  • Добавлен класс MultiSound
  • Добавлены методы setInEntity и setVolume для класса Sound
2.1 Скачать
  • Добавлен метод destroy
  • Добавлены методы isPlaying и isLooping для класса Sound 
  • Исправлена ошибка при создании пустого плеера
  • Исправлена формула зависимости громкости звука от расстояния
2.2 Скачать
  • Исправлена ошибка из-за которой звук не менял свою громкость вне зависимости к чему он привязан. 
  • Возвращена предыдущая формула громкости из-за неправильной работы предыдущей.
2.3 Скачать
  • Исправлена ошибка вызванная глобальностью библиотеки.
  • Громкость плеера зависит от громкости в настройках игры.

Условия использования

  • Запрещено распространение на сторонних источниках без указания ссылки на официальное сообщество
  • Запрещено изменение кода библиотеки
  • Запрещено явное копирование кода в другие библиотеки или моды 

Используя данный продукт вы автоматически соглашаетесь с этими правилами

Документация

Импорт библиотеки

IMPORT("SoundAPI")

Sound

Для создания новго плеера необходимо использовать конструктор Sound()

var mySound = new Sound();

Затем зададим ему файл, который нужно воспроизводить

mySound.setSource("mySound.ogg");

Аргументом является наименование звукого файла из папки sounds/

Это можно сократить в одну строчку

var mySound = new Sound("mySound.ogg");

Для того, что бы запустить звук, нужно вызвать метод play()

mySound.play();

Для отсановки - stop()

mySound.stop();

Пример:

IMPORT("SoundAPI")
var mySound = new Sound();
mySound.setSource("mySound.ogg");
//var mySound = new Sound("mySound.ogg");

Callback.addCallback("LevelLoaded", function () {
    mySound.play();
});

Все методы класса:

Версия API Метод Аргументы Описание метода
2.1 destroy() - Уничтожить экземпляр Sound
2.1 isPlaying() - Играет ли плеер
2.1 isLooping() - Включен ли повтор у плеера
2 setInEntity(Entity entity, int radius)

entity - Сущность
radius - радиус слышимости звука (Больше 2)

Установить сущность источником звука 
1 setInBlock(int x,int y,int z,int radius)

x, y, z - координаты
radius - радиус слышимости звука (Больше 2)

Устанавливает источник звука по координатам
1 setInPlayer() Устанавливает источник звука "в игроке"
Можно использовать для звуков в меню.
1 setOnCompletion(function event) event - Событие происходящее при окончании воспроизведения Устанавливает действие при завершении воспроизведения. Не срабатывает при вызове stop()
1 setSource(string fileName) fileName - Название файла Установить файл для воспроизведения из директории мода
1

setLooping(bool looping)

looping - Повторное воспроизведение Повторное воспроизведение
2

setVolume(float volume)

volume - Уровень громкости(От 0 до 1) Установить громкость звука
1

play()

- Воспроизвести
1 pause() - Приостановить воспроизведение
1

reset()

- Сбросить плеер
1

stop()

- Остановить

MultiSound

Класс MultiSound подходит для работы с несколькими звуками, зависимых друг от друга.

Для создания такого плеера нужен конструктор MultiSound()

var mySounds = new MultiSound([{
    src:"mySound.ogg"
},
{
    src:"mySound2.ogg",
    volume:0.5
}]);

Конструктор принимает один параметр - массив с объектами настроек для каждого звука

  • src - название звукового файла
  • volume - громкомсть звука

Для того, что бы запустить плеер, нужно вызвать метод play()

mySounds.play();

Для отсановки - stop()

mySounds.stop();

Класс имеет поле components -  массив звуков в виде классов Sound 

Пример

IMPORT("SoundAPI");

var mySounds = new MultiSound([{
    src:"mySound.ogg"
},
{
    src:"mySound2.ogg",
    volume:.5
}]);
mySounds.components[0].setVolume(.9);

Callback.addCallback("LevelLoaded", function () {
    mySounds.play();
});

Все методы класса

Версия API Метод Аргументы Описание метода
2.1 destroy() - ить экземпляр Sound
2 setInEntity(Entity entity, int radius) entity - Сущность
radius - радиус слышимости звука (Больше 2)
Установить сущность источником звука 
2 setInBlock(int x,int y,int z,int radius) x, y, z - координаты
radius - радиус слышимости звука (Больше 2)
Устанавливает источник звука по координатам
2 setInPlayer() - Устанавливает источник звука "в игроке"
Можно использовать для звуков в меню.
2 setLooping(bool looping) looping - Повторное воспроизведение Повторное воспроизведение
2 addVolume(float volume) volume - Уровень громкости Изменение громкомти плеера
2 play() - Воспроизвести
2 pause() - Приостановить воспроизведение
2 reset() - Сбросить плеер
2 stop() - Остановить