new Field(options, style)
Конструктор полей карт (Card).
Производит размещение карт на экране. Контролирует позицию карт при наведении курсора.
Отвечает за подсветку пространства под картами и самих карт.
Основные компоненты: Field#area, Field#cards.
Карты добавляются в поле двумя методами:
Field#queueCards -> Field#placeQueuedCards
Field#addCards
Использование второго метода до финализации первого добавляет карты в очередь и запускает очередь
.queueCards(c1) -> .addCards(c2) => .queueCards(c1) -> .queueCards(c2) -> .placeQueuedCards()
- Source:
Parameters:
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| options | object | Настройки поля. Field#options.
Будут пересохранены в  
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| style | object | Внешний вид поля. Field#style 
 | 
Extends
Classes
Members
_angles
            
                 
_bitmapArea
            
                 
_cardSpacing
            
                 
_debugActiveSpace
            
                 
_delays
            
                 
_entranceTween
            
                 
_expectedDelay
            
                 
_queuedCards
            
                 
_uninteractibleTimer
            
                 
alpha
            
                 
angle
            
                 
area
            
                 
cards
            
                 
cardsToRemove
            
                 
children
            
                 
delayTime
            
                 
focusedCard
            
                 
highlighted
            
                 
id
            
                 
inDebugMode
            
                 
interactible
            
                 
length
            
                 
linkedField
            
                 
moveTime
            
                 
name
            
                 
options
            
                 
playable
            
                 
poppedOut
            
                 
rotation
            
                 
savedPosition
            
                 
specialId
            
                 
style
            
                 
type
            
                 
validCards
            
                 
visible
            
                 
x
            
                 
y
            
        (private) _bitmapArea :Phaser.BitmapData
BitmapData поверхности поля.
- Source:
(private) _debugActiveSpace :Phaser.Rectangle
Размер активного места поля для дебага.
- Source:
(private) _expectedDelay :Number
Ожидаемая задержка для установки Field#_uninteractibleTimer
- Source:
(private) _uninteractibleTimer
- Source:
angle :number
Поворот в градусах.
- Inherited From:
- Source:
(readonly) length :number
Кол-во элементов, входящих в группу.
- Inherited From:
- Source:
options :object
Настройки поля.
Изменения не повлияют на само поле, т.к. все свойства сохранены в this.
- Source:
playable :string|boolean
Можно ли играть карты на это поле и тип действия.
- Default Value:
- false
 
- Source:
rotation :number
Поворот в радианах.
- Inherited From:
- Source:
specialId :number
Специальное id поля для полей, пренадлежащих одной группе.
- Source:
validCards :Array.<Card>
Карты, которые могут быть сыграны на это поле.
- Source:
- See:
- 
        - highlightPossibleActions
 
visible :boolean
Отрисовывается ли элемент игрой.
- Inherited From:
- Source:
Methods
_appendCards
            
                
_applyOptions
            
                
_calculateCardSpacing
            
                
_calculateCircleCenter
            
                
_calculateMargin
            
                
_compareCards
            
                
_createArea
            
                
_createDelayArray
            
                
_fixCardDraggability
            
                
_getLastAngle
            
                
_moveCard
            
                
_rotateCard
            
                
_setDebugActiveSpace
            
                
_setUninteractibleTimer
            
                
_startCardMovers
            
                
add
            
                
addCards
            
                
animateAppearance
            
                
bringToTop
            
                
cardIsInside
            
                
destroy
            
                
endAnimation
            
                
focusOffCard
            
                
focusOnCard
            
                
forEach
            
                
getByName
            
                
getDefaultOptions
            
                
placeCards
            
                
placeQueuedCards
            
                
queueCards
            
                
remove
            
                
removeAll
            
                
removeAllCards
            
                
removeCards
            
                
removeMarkedCards
            
                
reset
            
                
resetQueue
            
                
rotateCards
            
                
setBase
            
                
setCardsHighlight
            
                
setCardsPlayability
            
                
setChildIndex
            
                
setOwnHighlight
            
                
setOwnPlayability
            
                
setPopOut
            
                
setSize
            
                
setupAnimatedAppearance
            
                
setVisibility
            
                
sortCards
            
                
toggleDebugMode
            
                
update
            
                
updateDebug
            
                
zAlignCards
            
        (private) _appendCards(cards)
Добавляет карты в Field#cards. Вычисляет и сохраняет угол карты в Field#_angles, если указан Field#randomAngle.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| cards | Array.<Card> | карты для добавления | 
(private) _applyOptions(optionsopt, styleopt)
Совмещает переданные опции со стандартными и сохраняет их, как свойства объекта.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| options | object | <optional> | Настройки поля. | 
| style | object | <optional> | Внешний вид поля. | 
(private) _calculateCardSpacing(activeWidth) → {number}
Считает отступ между картами.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| activeWidth | number | Активная ширина поля. | 
Returns:
- Type:
- 
        
number
Возвращает отступ между картами.
(private) _calculateCircleCenter(a, b, c) → {Phaser.Point}
Считает центр круга по трем точкам. Взято со stackoverflow.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| a | object | точка a  | 
| b | object | точка b  | 
| c | object | точка c  | 
Returns:
- Type:
- 
        
Phaser.Point
Возвращает центр круга.
(private) _calculateMargin(requiredActiveWidth, areaActiveWidth, areaWidth, areaHeight, cardWidth, cardHeight) → {object}
Считает отступы сверху и слева
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| requiredActiveWidth | number | необходимая ширина для размещения карт | 
| areaActiveWidth | number | реальная ширина для размещения карт | 
| areaWidth | number | ширина поля | 
| areaHeight | number | высота поля | 
| cardWidth | number | ширина карты | 
| cardHeight | number | высота карты | 
Returns:
- Type:
- 
        
object
Возвращает отступы {top, left}
(private) _compareCards()
Компаратор для сортировки.
- Source:
- See:
(private) _createArea(width, height)
Запоминает размеры поля и рисует прямоугольник с закругленными углами.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| width | number | ширина поля | 
| height | number | высота поля | 
(private) _createDelayArray(noDelay) → {array}
Создает массив задержек.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| noDelay | boolean | все задержки равны нулю | 
Returns:
- Type:
- 
        
array
Возращает массив задержек.
(private) _fixCardDraggability(card)
Выставляет перетаскиваемость карты для тех случаев, когда карта была перемещена без использования presetField метода.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | 
(private) _getLastAngle() → {number|null}
Возвращает угол последней карты в поле.
- Source:
Returns:
- Type:
- 
        
number|null
Угол последней карты или null.
(private) _moveCard(card, index, topMargin, leftMargin, cardSpacing, angle, shift, focusedIndex, delayArray, delayIndex, bringToTopOn)
Рассчитывает позицию для карты в соотвествии с индексом и перемещает карту в эту позицию.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | карта | 
| index | number | индекс карты в поле | 
| topMargin | number | отступ сверху | 
| leftMargin | number | отступ слева | 
| cardSpacing | number | отступ от предыдущей карты | 
| angle | number | угол поворота | 
| shift | number | сдвиг от выделенной карты | 
| focusedIndex | number | индекс выделенной карты в поле | 
| delayArray | Array.<number> | массив задержек карт | 
| delayIndex | number | индекс задержки карты | 
| bringToTopOn | BRING_TO_TOP_ON | когда поднимать карту на передний план | 
(private) _rotateCard(card, angle, x, y, delay) → {number}
Поворачивает карту и считает корректированную позицию по оси y.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | карта | 
| angle | number | угол | 
| x | number | позиция по x | 
| y | number | позиция по y | 
| delay | number | время задержки | 
Returns:
- Type:
- 
        
number
Возвращает откорректированную позицию по оси y.
(private) _setDebugActiveSpace(activeWidth, cardHeight, leftMargin, topMargin, shift)
Сохраняет размеры активного места для отображения.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| activeWidth | number | ширина активного места | 
| cardHeight | number | высота карт | 
| leftMargin | number | отступ слева | 
| topMargin | number | отступ сверху | 
| shift | number | отступ от выделенной карты | 
(private) _setUninteractibleTimer(time)
Запускает таймер, во время которого карты не реагируют на курсор.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| time | number | время таймера | 
(private) _startCardMovers(card, angle, x, y, margin, delay, bringToTopOn)
Запускает твины карты.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | |
| angle | number | |
| x | number | |
| y | number | |
| margin | number | |
| delay | number | |
| bringToTopOn | BRING_TO_TOP_ON | 
add()
Добавляет элемент в группу.
- Inherited From:
- Source:
addCards(newCards, bringToTopOnopt, noDelayopt) → {number}
Добавляет карты в поле.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| newCards | Array.<Card> | добавляемые карты | ||
| bringToTopOn | BRING_TO_TOP_ON | <optional> | BRING_TO_TOP_ON.START | когда поднимать карты на передний план | 
| noDelay | boolean | <optional> | false | убирает время ожидания перед добавлением карт | 
Returns:
- Type:
- 
        
number
Время добавления
animateAppearance(delay)
Запускает твин появления поля.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| delay | number | задержка до запуска твина | 
bringToTop()
Поднимает элемент группы наверх.
- Inherited From:
- Source:
cardIsInside(card, includeSpacingopt, includeWholeCardopt) → {boolean}
Проверяет нахождение карты внутри поля (по координатам).
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| card | Card | проверяемая карта | ||
| includeSpacing | boolean | <optional> | true | нужно ли учитывать сдвиг карт друг от друга | 
| includeWholeCard | boolean | <optional> | false | любая часть карты | 
Returns:
- Type:
- 
        
boolean
Находится ли карта в поле.
destroy()
Полностью уничтожает поле, убирает все карты предварительно.
- Overrides:
- Source:
focusOffCard(card, forcedopt)
Убирает выделение карты.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| card | Card | выделенная карта | |
| forced | boolean | <optional> | заставляет поле убрать выделение карты, даже если поле не стало бы этого делать | 
focusOnCard(card, pointer, forcedopt)
Выделяет карту, над которой находится курсор.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| card | Card | выделенная карта | |
| pointer | Phaser.Pointer | курсор | |
| forced | boolean | <optional> | заставляет поле выделить карту, даже если она не находится в пределах поля или поле не выделяет карты при наведении | 
forEach()
Выполняет callback для каждого элемента группы.
- Inherited From:
- Source:
getByName()
Возвращает элемент группы с указанным именем.
- Inherited From:
- Source:
placeCards(newCardsopt, bringToTopOnopt, noDelayopt) → {number}
Размещает карты в поле.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| newCards | Array.<Card> | <optional> | null | только что добавленные карты, они будут перемещены в поле по очереди | 
| bringToTopOn | BRING_TO_TOP_ON | <optional> | когда поднимать карту на передний план | |
| noDelay | boolean | <optional> | false | все карты будут перемещены без задержки | 
Returns:
- Type:
- 
        
number
Возвращает задержку следующей карты.
placeQueuedCards(bringToTopOnopt, noDelayopt)
Размещает карты из очереди.
- Source:
- See:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| bringToTopOn | BRING_TO_TOP_ON | <optional> | BRING_TO_TOP_ON.START | когда поднимать карты на передний план | 
| noDelay | boolean | <optional> | false | убирает время ожидания перед добавлением карт | 
queueCards(newCards, delay) → {number}
Добавляет карты в очередь на добавление.
- Source:
- See:
Parameters:
| Name | Type | Description | 
|---|---|---|
| newCards | Array.<Card> | добавляемые карты | 
| delay | number | задержка, добавляемая к первой карте в очереди | 
Returns:
- Type:
- 
        
number
Планируемое время добавления
remove()
Убирает элемент из группы.
- Inherited From:
- Source:
removeAll()
Удаляет все элементы из группы, опционально уничтожая их.
- Inherited From:
- Source:
removeAllCards()
Удаляет все карты из поля.
- Source:
- See:
removeCards(cardsToRemove)
Удаляет карты из поля.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| cardsToRemove | Array.<Card> | карты для удаления | 
resetQueue()
Очищает очередь на добавление.
- Source:
- See:
setBase(xopt, yopt, shouldPlaceopt)
Устанавливает позицию поля.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| x | number | <optional> | this.style.x | по горизонтали | 
| y | number | <optional> | this.style.y | по вертикали | 
| shouldPlace | boolean | <optional> | false | нужно ли размещать карты после установки | 
setCardsHighlight(highlight)
Устанавливает подсветку всех карт в поле.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| highlight | boolean | подсветка карт | 
setCardsPlayability(playable)
Устанавливает играбильность всех карт в поле.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| playable | boolean | играбильность карт | 
setChildIndex()
Устанавливает индекс элемента группы по вертикали.
- Inherited From:
- Source:
setOwnHighlight(onopt, tintopt)
Устанавливает подсветку поля. По умолчанию зависит от того, включен ли дебаг поля.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| on | boolean | <optional> | Field#inDebugMode | подствечивать ли поле | 
| tint | number | <optional> | ui.colors.lightBlue | цвет подсветки | 
setOwnPlayability(playable, linkedFieldIdopt)
Устанавливает возможность играть карты на поле и подсветку.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| playable | string|boolean | играбильность и тип применимого действия | ||
| linkedFieldId | string | <optional> | null | связанное поле, используется  | 
setPopOut(popped)
Увеличивает или восстанавливает масштаб последней карты в поле.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| popped | boolean | нужно ли увеличить или восстановить масштаб | 
setSize(widthopt, heightopt, shouldPlaceopt)
Устанавливает размер поля.
- Source:
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| width | number | <optional> | this.style.width | ширина | 
| height | number | <optional> | this.style.height | высота | 
| shouldPlace | boolean | <optional> | false | нужно ли размещать карты после установки | 
setupAnimatedAppearance()
Создает твин анимации появления поля.
- Source:
setVisibility(visible)
Устанавливает видимость подсветки поля.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| visible | boolean | видимость | 
update()
Обновляет все элементы, входящие в группу.
- Inherited From:
- Source:
zAlignCards(checkDelayopt, forcedCardopt)
Устанавливает z-index карт.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| checkDelay | boolean | <optional> | если  | 
| forcedCard | Card | <optional> | Карта, которая поднимается, даже если  |