Авторизация
×

Логин (e-mail)

Пароль

Интерактивные истории, текстовые игры, квесты и визуальные новеллы
Гиперкнига

Библиотека    Блог

Расширяем возможности макросов с помощью Javascript. Часть 2-я

DoubleDragon, 15.03.13 | Маленькие хитрости

Продолжаю рассказ о возможностях Javascript, которые можно применять в макросах AXMA Story Maker. Сегодня я расскажу Вам о математических методах, которые мы позаимствуем из Javascript. Их аргументами могут быть только те объекты, которые имеют числовые значения.

Напомню, что всё описанное ниже работает в следующих макросах: <<set>>, <<if>>, <<elseif>> и <<print>>.

Пример использования:

<<set $объект = 3>>
<<print Math.pow($объект,2)>>

9

или так:

<<print Math.min(-4,10,-7,2)>>

-7

Ещё одно важное напоминание — названия методов чувствительны к регистру (то есть к строчным и заглавным буквам).

Метод Math.abs(x)

Возвращает абсолютную величину числа x, то есть модуль числа.

Метод Math.min(x1,x2,...xn)

Возвращает наименьшее из указанных чисел.

Метод Math.max(x1,x2,...xn)

Возвращает наибольшее из указанных чисел.

Метод Math.pow(x,y)

Возвращает число x, возведённое в степень y.

Метод Math.sqrt(x)

Возвращает квадратный корень из числа x.

Метод Math.log(x)

Возвращает натуральный (по основанию e) логарифм числа x.

Метод Math.round(x)

Возвращает округлённое число x. Если дробная часть числа равна 0.5 или больше, то округляется к следующему большему целому. Если дробная часть меньше, чем 0.5, то округление производится до ближайшего меньшего целого.

Метод x.toFixed(n)

Возвращает округлённое число x аналогично Math.round(x), но с точностью до знака n (от 0 до 20).

Метод Math.floor(x)

Возвращает ближайшее целое, меньшее или равное числу x. Другими словами отбрасывает дробную часть числа (округление в меньшую сторону).

Метод Math.ceil(x)

Возвращает ближайшее к x большее целое (округление в большую сторону).

Метод Math.random()

Возвращает случайное число в диапазоне от 0 (включительно) до 1. Умножая полученное значение на нужный коэффициент и прибавляя к результату другие числа, можно получить случайное число из заданного интервала.

Метод Math.sin(x)

Возвращает значение из интервала от -1 до 1, которое является синусом аргумента. Аргумент задаётся в радианах.

Метод Math.cos(x)

Возвращает значение из интервала от -1 до 1, которое является косинусом аргумента. Аргумент задаётся в радианах.

Метод Math.tan(x)

Возвращает численное значение для тангенса угла в радианах.

Метод Math.acos(x)

Возвращает угол в радианах, косинус которого равен указанному числу. Если аргумент лежит за пределами промежутка от -1 до 1 - возвращает NaN.

Метод Math.asin(x)

Возвращает угол в радианах, синус которого равен указанному числу. Если аргумент лежит за пределами промежутка от -1 до 1 - возвращает NaN.

Метод Math.atan(x)

Возвращает числовое значение из промежутка от -PI/2 до PI/2, которое является арктангенсом аргумента.

* * *

Вот, пожалуй и всё. Осталось только добавить про пару математических констант, которые могут пригодиться в расчётах.

Math.E

Число Эйлера — основание натурального логарифма. Приблизительно 2.718.

Math.PI

Отношение длины окружности к ее диаметру, приблизительно 3.142.

Комментарии: 5.

Профиль


Закрыть

Показать все комментарии

Евгений Туголуков (Korwin)
15.03.13 16:02

Гмм... мне приходит в голову текстовая «Elite»... Симулятор космического полета или посадки самолёта... текстовый. Вопрос, насколько это можно сделать интересно остается открытым.
Кельта
16.04.13 21:59

Супер! Мне так не хватало функций mod и div из Pascal... Спасибо огромное, Вы значительно расширили диапазон возможностей для будущих игр
DoubleDragon
15.04.15 04:22

Добавлено описание метода x.toFixed(n).

Для того, чтобы оставлять комментарии, необходимо зарегистрироваться и подтвердить в профиле указанный e-mail адрес.

При использовании любых материалов блога обязательно указание ссылки на источник