Spec-Zone.ru › Phaser

Класс: Phaser.Physics.Arcade

Конструктор

new Arcade(game)

Мир физики Arcade. Содержит методы столкновения, перекрытия и движения, относящиеся к физике Arcade.

Параметры
Имя Тип Описание
game Phaser.Game

ссылка на текущую экземпляр игры.

Исходный код: physics/arcade/World.js (Строка 14)

Классы

Body
TilemapCollision

Общедоступные свойства

[static] BOTTOM_TOP : number

Константа, используемая для значения sortDirection.
Используйте эту константу, если ваш игровой мир узкий, но высокий, и прокручивается снизу вверх (например, Commando или вертикальная прокручиваемая игра-стрелялка)

Исходный код: physics/arcade/World.js (Строка 130)

[static] LEFT_RIGHT : number

Константа, используемая для значения sortDirection.
Используйте эту константу, если ваш игровой мир широкий, но короткий, и прокручивается слева направо (например, Mario)

Исходный код: physics/arcade/World.js (Строка 106)

[static] RIGHT_LEFT : number

Константа, используемая для значения sortDirection.
Используйте эту константу, если ваш игровой мир широкий, но короткий, и прокручивается справа налево (например, Mario в обратную сторону)

Исходный код: physics/arcade/World.js (Строка 114)

[static] SORT_NONE : number

Константа, используемая для значения sortDirection.
Используйте эту константу, если вы не хотите выполнять сортировку до столкновения вообще или будете сортировать свои группы вручную.

Исходный код: physics/arcade/World.js (Строка 98)

[static] TOP_BOTTOM : number

Константа, используемая для значения sortDirection.
Используйте эту константу, если ваш игровой мир узкий, но высокий, и прокручивается сверху вниз (например, Dig Dug)

Исходный код: physics/arcade/World.js (Строка 122)

bounds : Phaser.Rectangle

Границы, внутри которых существует мир физики. По умолчанию совпадает с границами мира.

Исходный код: physics/arcade/World.js (Строка 29)

checkCollision : Object

Установите свойства checkCollision для управления обработкой столкновения с границами.
Например, checkCollision.down = false означает, что объекты Body не могут сталкиваться с нижней границей World.bounds. Объект, содержащий разрешенные флаги столкновений.

Исходный код: physics/arcade/World.js (Строка 36)

forceX : boolean

Если true, World.separate всегда будет разделять по оси X перед Y. В противном случае он сначала проверит суммарные значения силы тяжести.

Исходный код: physics/arcade/World.js (Строка 56)

game : Phaser.Game

Локальная ссылка на игру.

Исходный код: physics/arcade/World.js (Строка 19)

gravity : Phaser.Point

Настройка гравитации World. По умолчанию x: 0, y: 0, или отсутствует гравитация.

Исходный код: physics/arcade/World.js (Строка 24)

isPaused : boolean

Если true метод Body.preUpdate будет пропущен, останавливая все движения для всех объектов. Обратите внимание, что другие методы, такие как collide, все равно будут работать, поэтому будьте осторожны, не вызывая их для приостановленных объектов.

Исходный код: physics/arcade/World.js (Строка 72)

maxLevels : number

Используется QuadTree для установки максимального количества уровней итераций.

Исходный код: physics/arcade/World.js (Строка 46)

maxObjects : number

Используется QuadTree для установки максимального количества объектов в каждом квадранте.

Исходный код: physics/arcade/World.js (Строка 41)

OVERLAP_BIAS : number

Значение, добавляемое к значениям дельты во время проверок столкновений.

Исходный код: physics/arcade/World.js (Строка 51)

quadTree : Phaser.QuadTree

QuadTree мира.

Исходный код: physics/arcade/World.js (Строка 77)

skipQuadTree : boolean

Если true, QuadTree не будет использоваться для столкновений. QuadTree отлично подходят, если объекты равномерно распределены в игре, в противном случае они приводят к потере производительности. Если вы это включите, вы можете отключить его для каждого тела с помощью Body.skipQuadTree.

Исходный код: physics/arcade/World.js (Строка 67)

sortDirection : number

Используется при столкновении Sprite с группой или группы с группой. Определяет направление, на основе которого выполняется сортировка. По умолчанию Phaser.Physics.Arcade.LEFT_RIGHT.

Исходный код: physics/arcade/World.js (Строка 62)

Общедоступные методы

accelerateToObject(displayObject, destination, speed, xSpeedMax, ySpeedMax) → {number}

Устанавливает свойства acceleration.x/y для объекта отображения, чтобы он двигался к цели со заданной скоростью (в пикселях в секунду в квадрате).
Вы должны указать максимальное значение скорости, после которого объект отображения не будет ускоряться.
Примечание: Объект отображения не постоянно отслеживает цель. Если цель меняет своё положение во время перемещения, объект отображения не будет изменять свой курс.
Примечание: Объект отображения не останавливается, когда достигает координат назначения.

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект отображения, который нужно переместить.

destination any

Объект отображения, к которому нужно перемещаться. Может быть любым объектом, но должен иметь видимые свойства x/y.

speed number <optional>
60

Скорость ускорения в пикселях в секунду.

xSpeedMax number <optional>
500

Максимальная скорость по оси x для объекта отображения.

ySpeedMax number <optional>
500

Максимальная скорость по оси y для объекта отображения.

Возвращаемое значение
number -

Угол (в радианах), на который визуально должен быть установлен объект, чтобы соответствовать новой траектории.

Исходный код: physics/arcade/World.js (Строка 1829)

accelerateToPointer(displayObject, pointer, speed, xSpeedMax, ySpeedMax) → {number}

Устанавливает свойства acceleration.x/y для объекта отображения, чтобы он двигался к цели со заданной скоростью (в пикселях в секунду в квадрате).
Вы должны указать максимальное значение скорости, после которого объект отображения не будет ускоряться.
Примечание: Объект отображения не постоянно отслеживает цель. Если цель меняет своё положение во время перемещения, объект отображения не будет изменять свой курс.
Примечание: Объект отображения не останавливается, когда достигает координат назначения.

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект отображения, который нужно переместить.

pointer Phaser.Pointer <optional>

Указатель, к которому нужно перемещаться. По умолчанию Phaser.Input.activePointer.

speed number <optional>
60

Скорость ускорения в пикселях в секунду.

xSpeedMax number <optional>
500

Максимальная скорость по оси x для объекта отображения.

ySpeedMax number <optional>
500

Максимальная скорость по оси y для объекта отображения.

Возвращаемое значение
number -

Угол (в радианах), на который визуально должен быть установлен объект, чтобы соответствовать новой траектории.

Исходный код: physics/arcade/World.js (Строка 1858)

accelerateToXY(displayObject, x, y, speed, xSpeedMax, ySpeedMax) → {number}

Устанавливает свойства acceleration.x/y для объекта отображения, чтобы он двигался к координатам x/y со заданной скоростью (в пикселях в секунду в квадрате).
Вы должны указать максимальное значение скорости, после которого объект отображения не будет ускоряться.
Примечание: Объект отображения не постоянно отслеживает цель. Если цель меняет своё положение во время перемещения, объект отображения не будет изменять свой курс.
Примечание: Объект отображения не останавливается, когда достигает координат назначения.

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект отображения, который нужно переместить.

x number

Координата x, к которой нужно ускориться.

y number

Координата y, к которой нужно ускориться.

speed number <optional>
60

Скорость ускорения в пикселях в секунду.

xSpeedMax number <optional>
500

Максимальная скорость по оси x для объекта отображения.

ySpeedMax number <optional>
500

Максимальная скорость по оси y для объекта отображения.

Возвращаемое значение
number -

Угол (в радианах), на который визуально должен быть установлен объект, чтобы соответствовать новой траектории.

Исходный код: physics/arcade/World.js (Строка 1888)

accelerationFromRotation(rotation, speed, point) → {Phaser.Point}

Учитывая угол поворота (в радианах) и скорость, рассчитать ускорение и вернуть его как объект Point, или установить его в заданный объект Point.
Один из способов использования: accelerationFromRotation(rotation, 200, sprite.acceleration), который установит значения непосредственно в ускорение объекта sprite, а не создаст новый объект Point.

Параметры
Имя Тип Аргумент По умолчанию Описание
rotation number

Угол в радианах.

speed number <optional>
60

Скорость перемещения в пикселях в секунду в квадрате.

point Phaser.Point | object <optional>

Объект Point, в котором свойства x и y будут установлены в рассчитанное ускорение.

Возвращаемое значение
Phaser.Point -
  • Объект Point, где point.x содержит значение ускорения по оси x, а point.y — значение ускорения по оси y.
Исходный код: physics/arcade/World.js (Строка 1810)

angleBetween(source, target, world) → {number}

Находит угол в радианах между двумя объектами отображения (например, Sprites).

Необязательный аргумент world позволяет возвращать результат, основываясь на свойстве Game Objects world,
а не на значениях x и y. Это полезно, если объект вложен в группу со смещением
или родительский объект Game Object.

Parameters
Name Type Argument Default Description
source any

Объект отображения, от которого нужно измерить угол.

target any

Объект отображения, к которому нужно измерить угол.

world boolean <optional>
false

Вычислять угол, используя мировые координаты (true), или координаты объекта (false, по умолчанию)

Returns
number -

Угол в радианах между объектами отображения источника и цели.

Source code: physics/arcade/World.js (Line 1996)

angleBetweenCenters(source, target) → {number}

Находит угол в радианах между центрами двух объектов отображения (например, Sprites).

Parameters
Name Type Description
source any

Объект отображения, от которого нужно измерить угол.

target any

Объект отображения, к которому нужно измерить угол.

Returns
number -

Угол в радианах между объектами отображения источника и цели.

Source code: physics/arcade/World.js (Line 2024)

angleToPointer(displayObject, pointer, world) → {number}

Находит угол в радианах между объектом отображения (например, Sprite) и указателем, учитывая их координаты x/y и центры.

Необязательный аргумент world позволяет возвращать результат, основываясь на свойстве Game Objects world,
а не на значениях x и y. Это полезно, если объект вложен в группу со смещением
или родительский объект Game Object.

Parameters
Name Type Argument Default Description
displayObject any

Объект отображения, от которого нужно измерить угол.

pointer Phaser.Pointer <optional>

Указатель Phaser.Pointer. Если не указано, используется Input.activePointer.

world boolean <optional>
false

Вычислять угол, используя мировые координаты (true), или координаты объекта (false, по умолчанию)

Returns
number -

Угол в радианах между displayObject.x/y и Pointer.x/y

Source code: physics/arcade/World.js (Line 2070)

angleToXY(displayObject, x, y, world) → {number}

Находит угол в радианах между объектом отображения (например, Sprite) и заданной координатой x/y.

Необязательный аргумент world позволяет возвращать результат, основываясь на свойстве Game Objects world,
а не на значениях x и y. Это полезно, если объект вложен в группу со смещением
или родительский объект Game Object.

Parameters
Name Type Argument Default Description
displayObject any

Объект отображения, от которого нужно измерить угол.

x number

Координата x для определения угла.

y number

Координата y для определения угла.

world boolean <optional>
false

Вычислять угол, используя мировые координаты (true), или координаты объекта (false, по умолчанию)

Returns
number -

Угол в радианах между displayObject.x/y и заданными координатами x/y

Source code: physics/arcade/World.js (Line 2041)

circleBodyIntersects(circle, body) → {boolean}

Проверяет, пересекается ли круглый объект Body с прямоугольным объектом Body.

Parameters
Name Type Description
circle Phaser.Physics.Arcade.Body

Объект Body с установленным свойством isCircle.

body Phaser.Physics.Arcade.Body

Объект Body, у которого свойство isCircle не установлено (т.е. используется прямоугольная форма)

Returns
boolean -

Возвращает true, если объекты пересекаются, в противном случае - false.

Source code: physics/arcade/World.js (Line 1125)

collide(object1, object2, collideCallback, processCallback, callbackContext) → {boolean}

Проверяет столкновение между двумя игровыми объектами. Вы можете производить столкновения Sprite vs. Sprite, Sprite vs. Group, Group vs. Group, Sprite vs. Tilemap Layer или Group vs. Tilemap Layer.
Оба параметра могут быть массивами объектов разных типов.
Если передаются два массива, элементы первого массива будут проверяться на столкновение со всеми элементами второго массива.
Объекты также автоматически отделяются. Если разделение не нужно, используйте ArcadePhysics.overlap вместо этого.
Можно предоставить необязательный processCallback. Если он задан, эта функция будет вызвана, когда два спрайта столкнутся. Она вызывается до любого разделения,
позволяя выполнить дополнительные проверки. Если функция возвращает true, то столкновение и разделение выполняются. Если возвращает false, оно пропускается.
collideCallback — необязательная функция, которая вызывается только при столкновении двух спрайтов. Если установлен processCallback, он должен вернуть true, чтобы вызвался collideCallback.
ПРИМЕЧАНИЕ: Эта функция не рекурсивна и не будет проверять объекты-потомки, переданные (например, группы или карты плиток внутри других групп).

Parameters
Имя Тип Аргумент По умолчанию Описание
object1 Phaser.Sprite | Phaser.Group | Phaser.Particles.Emitter | Phaser.TilemapLayer | array

Первый объект или массив объектов для проверки. Может быть Phaser.Sprite, Phaser.Group, Phaser.Particles.Emitter или Phaser.TilemapLayer.

object2 Phaser.Sprite | Phaser.Group | Phaser.Particles.Emitter | Phaser.TilemapLayer | array

Второй объект или массив объектов для проверки. Может быть Phaser.Sprite, Phaser.Group, Phaser.Particles.Emitter или Phaser.TilemapLayer.

collideCallback function <optional>
null

Необязательная функция обратного вызова, которая вызывается при столкновении объектов. Два объекта будут переданы в эту функцию в том же порядке, в котором вы их указали, за исключением столкновения Group vs. Sprite, в котором случае Sprite всегда будет первым параметром.

processCallback function <optional>
null

Функция обратного вызова, которая позволяет выполнить дополнительные проверки для двух объектов, если они перекрываются. Если этот параметр задан, столкновение произойдёт только если processCallback вернёт true. Два объекта будут переданы в эту функцию в том же порядке, в котором вы их указали, за исключением столкновения Group vs. Sprite, в котором случае Sprite всегда будет первым параметром.

callbackContext object <optional>

Контекст выполнения функций обратного вызова.

Возвращаемое значение
boolean -

True, если столкновение произошло, в противном случае false.

Исходный код: physics/arcade/World.js (Строка 375)

computeVelocity(axis, body, velocity, acceleration, drag, max) → {number}

Функция, аналогичная tween, которая принимает начальную скорость и другие факторы и возвращает изменённую скорость.
Основана на функции из Flixel автором @ADAMATOMIC

Параметры
Имя Тип Аргумент По умолчанию Описание
axis number

0 — ничего, 1 — горизонтальное, 2 — вертикальное.

body Phaser.Physics.Arcade.Body

Объект Body, который должен быть обновлён.

velocity number

Любое значение компонента скорости (например, 20).

acceleration number

Скорость изменения скорости.

drag number

В основном замедление, это то, насколько скорость изменяется, если Acceleration не задано.

max number <optional>
10000

Абсолютное максимальное значение для скорости.

Возвращаемое значение
number -

Изменённое значение скорости.

Исходный код: physics/arcade/World.js (Строка 257)

distanceBetween(source, target, world) → {number}

Вычисляет расстояние между двумя объектами отображения (например, Sprite).

Необязательный параметр world позволяет вернуть результат, основанный на свойстве world объектов Game, а не на значениях x и y. Это полезно, если объект вложен в смещённую группу или родительский объект Game.

Параметры
Имя Тип Аргумент По умолчанию Описание
source any

Объект отображения, от которого измеряется расстояние.

target any

Объект отображения, до которого измеряется расстояние.

world boolean <optional>
false

Вычислить расстояние в координатах мира (true) или координатах объекта (false, по умолчанию).

Возвращаемое значение
number -

Расстояние между объектами source и target.

Исходный код: physics/arcade/World.js (Строка 1918)

distanceToPointer(displayObject, pointer, world) → {number}

Вычисляет расстояние между объектом отображения (например, Sprite) и указателем. Если указатель не задан, используется Input.activePointer.
Вычисление выполняется от координаты x/y объекта отображения. Это может быть верхний левый угол, если его якорь не изменён.
Если необходимо вычислить расстояние от центра объекта отображения, используйте метод distanceBetweenCenters()

Необязательный параметр world позволяет вернуть результат, основанный на свойстве world объектов Game, а не на значениях x и y. Это полезно, если объект вложен в смещённую группу или родительский объект Game.

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект отображения, от которого измеряется расстояние.

pointer Phaser.Pointer <optional>

Phaser.Pointer, до которого измеряется расстояние. Если не указан, используется Input.activePointer.

world boolean <optional>
false

Вычислить расстояние в координатах мира (true) или координатах объекта (false, по умолчанию).

Возвращаемое значение
number -

Расстояние между объектом и указателем.

Исходный код: physics/arcade/World.js (Строка 1969)

distanceToXY(displayObject, x, y, world) → {number}

Найдите расстояние между объектом отображения (например, Sprite) и заданными координатами x/y.
Расчёт выполняется от координат объекта отображения x/y. Это может быть верхний левый угол, если его якорь не был изменён.
Если вам нужно рассчитать расстояние от центра объекта отображения, используйте метод distanceBetweenCenters()

Необязательный аргумент world позволяет возвращать результат, основываясь на свойстве объекта игры world,
вместо его значений x и y. Это полезно, если объект вложен во вложенную группу со смещением
или родительский объект игры.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
displayObject any

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

x number

Координата x для перемещения.

y number

Координата y для перемещения.

world boolean <optional>
false

Вычислять расстояние в координатах мира (true) или координатах объекта (false, значение по умолчанию)

Возвращаемое значение
number -

Расстояние между объектом и координатами x/y.

Исходный код: physics/arcade/World.js (Строка 1942)

enable(object, children)

Создаст физическое тело Arcade Physics для данного объекта игры или массива объектов игры.
Объект игры может иметь только 1 активное физическое тело в любое время, и его нельзя изменить, пока объект не будет уничтожен.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
object object | array | Phaser.Group

Объект игры, для которого необходимо создать физическое тело. Также может быть массивом или группой объектов, тело будет создано для каждого дочернего элемента, у которого есть свойство body.

children boolean <optional>
true

Создать тело для всех дочерних элементов этого объекта? Если true, он будет рекурсивно проходить по списку отображения до тех пор, пока это возможно.

Исходный код: physics/arcade/World.js (Строка 160)

enableBody(object)

Создаёт физическое тело Arcade Physics для данного объекта игры.

Объект игры может иметь только 1 активное физическое тело в любое время, и его нельзя изменить, пока тело не будет сброшено.

При добавлении физического тела Arcade Physics к объекту, объект автоматически добавляется в массив хэша родительских групп.

Параметры
Имя Тип Описание
object object

Объект игры, для которого необходимо создать физическое тело. Тело будет создано только если у этого объекта есть свойство body со значением null.

Исходный код: physics/arcade/World.js (Строка 216)

getObjectsAtLocation(x, y, group, callback, callbackContext, callbackArg) → {Array.<PIXI.DisplayObject>}

Учитывая группу и расположение, это проверяет, какие дочерние элементы группы перекрывают координаты.
Каждый дочерний элемент отправляется в предоставленный обратный вызов для дальнейшей обработки.
Обратите внимание, что дочерние элементы не проверяются по порядку глубины, а только перекрывают ли они координаты или нет.

Параметры
Имя Тип Аргумент Описание
x number

Координата x для проверки.

y number

Координата y для проверки.

group Phaser.Group

Группа для проверки.

callback function <optional>

Функция обратного вызова, которая вызывается, если объект перекрывает координаты. Обратный вызов получит два параметра: callbackArg и объект, который перекрыл расположение.

callbackContext object <optional>

Контекст, в котором выполнить обратный вызов.

callbackArg object <optional>

Аргумент для передачи в обратный вызов.

Возвращаемое значение
Array.<PIXI.DisplayObject> -

Массив спрайтов из группы, которые перекрывают координаты.

Исходный код: physics/arcade/World.js (Строка 1622)

getObjectsUnderPointer(pointer, group, callback, callbackContext) → {Array.<PIXI.DisplayObject>}

Учитывая группу и указатель, это проверяет, какие дочерние элементы группы перекрывают координаты указателя.
Каждый дочерний элемент отправляется в предоставленный обратный вызов для дальнейшей обработки.
Обратите внимание, что дочерние элементы не проверяются по порядку глубины, а только перекрывают ли они указатель или нет.

Параметры
Имя Тип Аргумент Описание
pointer Phaser.Pointer

Указатель для проверки.

group Phaser.Group

Группа для проверки.

callback function <optional>

Функция обратного вызова, которая вызывается, если объект перекрывает указатель. Обратный вызов получит два параметра: указатель и объект, который перекрыл его.

callbackContext object <optional>

Контекст, в котором выполнить обратный вызов.

Возвращаемое значение
Array.<PIXI.DisplayObject> -

Массив спрайтов из группы, которые перекрывают координаты указателя.

Исходный код: physics/arcade/World.js (Строка 1599)

getOverlapX(body1, body2, overlapOnly) → {float}

Вычисляет горизонтальное перекрытие между двумя телами и соответствующим образом устанавливает их свойства, включая:
touching.left, touching.right и overlapX.

Параметры
Имя Тип Описание
body1 Phaser.Physics.Arcade.Body

Первый объект Body для разделения.

body2 Phaser.Physics.Arcade.Body

Второй объект Body для разделения.

overlapOnly boolean

Это проверка на перекрытие или часть разделения?

Возвращаемое значение
float -

Возвращает величину горизонтального перекрытия между двумя объектами.

Исходный код: physics/arcade/World.js (Строка 1331)

getOverlapY(body1, body2, overlapOnly) → {float}

Вычисляет вертикальное перекрытие между двумя объектами Body и устанавливает соответствующие свойства, включая:
touching.up, touching.down и overlapY.

Параметры
Имя Тип Описание
body1 Phaser.Physics.Arcade.Body

Первый объект Body для разделения.

body2 Phaser.Physics.Arcade.Body

Второй объект Body для разделения.

overlapOnly boolean

Это проверка на перекрытие или часть разделения?

Возвращаемое значение
float -

Возвращает величину вертикального перекрытия между двумя объектами.

Исходный код: physics/arcade/World.js (Строка 1395)

intersects(body1, body2) → {boolean}

Проверка пересечения между двумя объектами.

Параметры
Имя Тип Описание
body1 Phaser.Physics.Arcade.Body

Первый объект Body для проверки.

body2 Phaser.Physics.Arcade.Body

Второй объект Body для проверки.

Возвращаемое значение
boolean -

True, если объекты пересекаются, иначе false.

Исходный код: physics/arcade/World.js (Строка 1061)

moveToObject(displayObject, destination, speed, maxTime) → {number}

Перемещает заданный объект к целевому объекту с постоянной скоростью.
Если задано значение maxTime, скорость будет скорректирована (перезаписана), чтобы объект достиг цели за указанное количество секунд.
Время является приблизительным из-за работы таймеров браузера. Допустимо отклонение ±50 мс.
Примечание: Объект не отслеживает цель непрерывно. Если цель изменяет своё положение во время перемещения, объект не изменяет свой курс.
Примечание: Объект не останавливается, достигнув координат цели.
Примечание: Не учитывает ускорение, максимальную скорость или сопротивление (если сопротивление или ускорение слишком велики, объект может не двигаться)

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект для перемещения.

destination any

Целевой объект. Может быть любым объектом, но должен иметь свойства x/y.

speed number <дополнительно>
60

Скорость перемещения в пикселях в секунду (по умолчанию 60 пикселей/сек).

maxTime number <дополнительно>
0

Время в миллисекундах (1000 = 1 секунда). Если задано, скорость корректируется, чтобы объект достиг цели за указанное количество мс.

Возвращаемое значение
number -

Угол (в радианах), на который должен быть визуально установлен объект, чтобы соответствовать новой скорости.

Исходный код: physics/arcade/World.js (Строка 1666)

moveToPointer(displayObject, speed, pointer, maxTime) → {number}

Перемещает заданный объект к указателю с постоянной скоростью. Если указатель не задан, используется Phaser.Input.activePointer.
Если задано значение maxTime, скорость будет скорректирована (перезаписана), чтобы объект достиг цели за указанное количество секунд.
Время является приблизительным из-за работы таймеров браузера. Допустимо отклонение ±50 мс.
Примечание: Объект не отслеживает цель непрерывно. Если цель изменяет своё положение во время перемещения, объект не изменяет свой курс.
Примечание: Объект не останавливается, достигнув координат цели.

Параметры
Имя Тип Аргумент По умолчанию Описание
displayObject any

Объект для перемещения.

speed number <дополнительно>
60

Скорость перемещения в пикселях в секунду (по умолчанию 60 пикселей/сек).

pointer Phaser.Pointer <дополнительно>

Указатель для перемещения. По умолчанию используется Phaser.Input.activePointer.

maxTime number <дополнительно>
0

Время в миллисекундах (1000 = 1 секунда). Если задано, скорость корректируется, чтобы объект достиг цели за указанное количество мс.

Возвращаемое значение
number -

Угол (в радианах), на который должен быть визуально установлен объект, чтобы соответствовать новой скорости.

Исходный код: physics/arcade/World.js (Строка 1701)

moveToXY(displayObject, x, y, speed, maxTime) → {number}

Перемещает заданный объект к координатам x/y с постоянной скоростью.
Если задано значение maxTime, скорость будет скорректирована (перезаписана), чтобы объект достиг цели за указанное количество секунд.
Время является приблизительным из-за работы таймеров браузера. Допустимо отклонение ±50 мс.
Примечание: Объект не отслеживает цель непрерывно. Если цель изменяет своё положение во время перемещения, объект не изменяет свой курс.
Примечание: Объект не останавливается, достигнув координат цели.
Примечание: Не учитывает ускорение, максимальную скорость или сопротивление (если сопротивление или ускорение слишком велики, объект может не двигаться)

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
displayObject любое

Объект отображения, который нужно переместить.

x число

Координата x, к которой нужно переместиться.

y число

Координата y, к которой нужно переместиться.

speed число <необязательно>
60

Скорость перемещения в пикселях в секунду (по умолчанию 60 пикселей/сек).

maxTime число <необязательно>
0

Время в миллисекундах (1000 = 1 секунда). Если задано, скорость корректируется так, чтобы объект прибыл в пункт назначения за указанное количество мс.

Возвращаемое значение
число -

Угол (в радианах), на который объект должен быть визуально установлен для соответствия его новой скорости.

Исходный код: physics/arcade/World.js (Строка 1736)

overlap(object1, object2, overlapCallback, processCallback, callbackContext) → {boolean}

Проверяет перекрытие между двумя игровыми объектами. Объектами могут быть Sprites, группы или эмиттеры.
Вы можете выполнить проверку перекрытия Sprite vs. Sprite, Sprite vs. Group и Group vs. Group.
В отличие от collide, объекты НЕ автоматически разделяются или не имеют никаких физических эффектов, они просто проверяют результаты перекрытия.
Оба параметра могут быть массивами объектов разных типов.
Если переданы два массива, содержимое первого параметра будет проверено по отношению ко всему содержимому второго параметра.
ПРИМЕЧАНИЕ: эта функция не рекурсивна и не будет проверять потомков переданных объектов (т.е. группы внутри групп).

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
object1 Phaser.Sprite | Phaser.Group | Phaser.Particles.Emitter | массив

Первый объект или массив объектов для проверки. Может быть Phaser.Sprite, Phaser.Group или Phaser.Particles.Emitter.

object2 Phaser.Sprite | Phaser.Group | Phaser.Particles.Emitter | массив

Второй объект или массив объектов для проверки. Может быть Phaser.Sprite, Phaser.Group или Phaser.Particles.Emitter.

overlapCallback функция <необязательно>
null

Необязательная функция обратного вызова, которая вызывается, если объекты перекрываются. Два объекта будут переданы в эту функцию в том же порядке, в котором вы их указали, если вы не проверяете Group vs. Sprite, в этом случае Sprite всегда будет первым параметром.

processCallback функция <необязательно>
null

Функция обратного вызова, которая позволяет выполнить дополнительные проверки по отношению к двум объектам, если они перекрываются. Если это задано, overlapCallback будет вызван только в том случае, если этот обратный вызов вернет true.

callbackContext объект <необязательно>

Контекст выполнения обратных вызовов.

Возвращаемое значение
boolean -

True, если перекрытие произошло, иначе false.

Исходный код: physics/arcade/World.js (Строка 318)

setBounds(x, y, width, height)

Обновляет размер этого физического мира.

Параметры
Имя Тип Описание
x число

Верхний левый угол мира.

y число

Верхний левый угол мира.

width число

Новая ширина мира. Не может быть меньше Game.width.

height число

Новая высота мира. Не может быть меньше Game.height.

Исходный код: physics/arcade/World.js (Строка 134)

setBoundsToWorld()

Обновляет размер этого физического мира, чтобы он соответствовал размеру игрового мира.

Исходный код: physics/arcade/World.js (Строка 149)

sort(group, sortDirection)

Этот метод отсортирует массив хешей группы.

Если в группе задан physicsSortDirection, он будет использовать заданное направление сортировки.

В противном случае, если параметр sortDirection не определен или Group.physicsSortDirection равен null, будет использовано значение Phaser.Physics.Arcade.sortDirection.

Изменяя Group.physicsSortDirection, можно настроить каждую группу на сортировку в другом порядке.

Параметры
Имя Тип Аргумент Описание
group Phaser.Group

Группа для сортировки.

sortDirection целое число <необязательно>

Направление сортировки, используемое для сортировки этой группы.

Исходный код: physics/arcade/World.js (Строка 518)

sortBottomTop(a, b) → {integer}

Функция сортировки для сортировки двух объектов по направлению снизу вверх.

Вызывается автоматически методом World.sort

Параметры
Имя Тип Описание
a Phaser.Sprite

Первый Sprite для проверки. Sprite должен иметь физическое тело Arcade.

b Phaser.Sprite

Второй Sprite для проверки. Sprite должен иметь физическое тело Arcade.

Возвращаемое значение
целое число -

Отрицательное значение, если a > b, положительное значение, если a < b, или 0, если a === b, или объекты недопустимы.

Исходный код: physics/arcade/World.js (Строка 497)

sortLeftRight(a, b) → {integer}

Функция сортировки для сортировки двух объектов по направлению слева направо.

Вызывается автоматически методом World.sort

Параметры
Имя Тип Описание
a Phaser.Sprite

Первый спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

b Phaser.Sprite

Второй спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

Возвращает
целое число -

Отрицательное значение, если a > b, положительное значение, если a < b, или 0, если a === b, или тела невалидны.

Исходный код: physics/arcade/World.js (Строка 434)

sortRightLeft(a, b) → {целое число}

Функция сортировки для сортировки двух тел по направлению сортировки СПРАВА НАЛЕВО.

Вызывается автоматически методом World.sort

Параметры
Имя Тип Описание
a Phaser.Sprite

Первый спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

b Phaser.Sprite

Второй спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

Возвращает
целое число -

Отрицательное значение, если a > b, положительное значение, если a < b, или 0, если a === b, или тела невалидны.

Исходный код: physics/arcade/World.js (Строка 455)

sortTopBottom(a, b) → {целое число}

Функция сортировки для сортировки двух тел по направлению сортировки СВЕРХУ ВНИЗ.

Вызывается автоматически методом World.sort

Параметры
Имя Тип Описание
a Phaser.Sprite

Первый спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

b Phaser.Sprite

Второй спрайт для проверки. Спрайт должен иметь физическое тело Arcade Physics.

Возвращает
целое число -

Отрицательное значение, если a > b, положительное значение, если a < b, или 0, если a === b, или тела невалидны.

Исходный код: physics/arcade/World.js (Строка 476)

updateMotion(The)

Вызывается автоматически физическим телом, обновляет все значения, связанные с движением, в теле, если World.isPaused не true.

Параметры
Имя Тип Описание
The Phaser.Physics.Arcade.Body

Объект тела, который нужно обновить.

Исходный код: physics/arcade/World.js (Строка 240)

velocityFromAngle(angle, speed, point) → {Phaser.Point}

Вычисляет скорость по углу (в градусах) и возвращает её как объект Point, или устанавливает её в заданный объект Point.
Один из способов использования: velocityFromAngle(angle, 200, sprite.velocity), который установит значения напрямую в скорость спрайта, а не создаст новый объект Point.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
angle число

Угол в градусах, рассчитывается по часовой стрелке (вниз = 90 градусов положительно, вправо = 0 градусов положительно, вверх = 90 градусов отрицательно)

speed число <опционально>
60

Скорость перемещения в пикселях в секунду.

point Phaser.Point | объект <опционально>

Объект Point, в котором значения x и y будут установлены в вычисленную скорость.

Возвращает
Phaser.Point -
  • Объект Point, где point.x содержит значение скорости по оси x, а point.y - по оси y.
Исходный код: physics/arcade/World.js (Строка 1772)

velocityFromRotation(rotation, speed, point) → {Phaser.Point}

Вычисляет скорость по углу (в радианах) и возвращает её как объект Point, или устанавливает её в заданный объект Point.
Один из способов использования: velocityFromRotation(rotation, 200, sprite.velocity), который установит значения напрямую в скорость спрайта, а не создаст новый объект Point.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
rotation число

Угол в радианах.

speed число <опционально>
60

Скорость перемещения в пикселях в секунду.

point Phaser.Point | объект <опционально>

Объект Point, в котором значения x и y будут установлены в вычисленную скорость.

Возвращает
Phaser.Point -
  • Объект Point, где point.x содержит значение скорости по оси x, а point.y - по оси y.
Исходный код: physics/arcade/World.js (Строка 1791)

worldAngleToPointer(displayObject, pointer) → {число}

Находит угол в радианах между объектом отображения (например, спрайтом) и указателем,
учитывая их координаты x/y и центр относительно мира.

Параметры
Имя Тип Аргумент Описание
displayObject любой

Объект отображения для проверки.

pointer Phaser.Pointer <опционально>

Указатель Phaser.Pointer для проверки. Если не указан, используется Input.activePointer.

Возвращает
число -

Угол в радианах между displayObject.world.x/y и Pointer.worldX / worldY

Исходный код: physics/arcade/World.js (Строка 2099)

© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Physics.Arcade.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API