new GameInfo()
Менеджер информации об игроках, игре и игровых действиях.
Производит подсветку возможных действий и активирует кнопку действий,
перенаправляет сыгранные карты на правильные поля и выводит сообщения о состоянии хода.
- Source:
Members
attacker
            
                 
buttonActions
            
                 
defender
            
                 
gameId
            
                 
gameIndex
            
                 
message
            
                 
pi
            
                 
pid
            
                 
player
            
                 
players
            
                 
playersById
            
                 
rules
            
                 
simulating
            
                 
trumpSuit
            
                 
turnIndex
            
                 
turnStage
            
        buttonActions :Array.<string>
Действия, которые будут перенаправлены на ActionHandler#actionButton.
- Source:
playersById :Object.<Object>
Информация об игроках по id игроков.
- Source:
simulating :Boolean
Находится игра в режиме быстрой симуляции.
Если true, все запланированные действия будут завершены перед добавлением новых
- Source:
Methods
_cardShouldBePlayable
            
                
_fixActionField
            
                
_getNewMessage
            
                
_logPlayerRoles
            
                
_makeInteractible
            
                
_removeMessage
            
                
_resetButton
            
                
_roleIsAttacker
            
                
_setButtonAction
            
                
_shouldResetTurnInfo
            
                
_updateMessage
            
                
_updatePlayerRoles
            
                
applyInteractivity
            
                
findAppropriateField
            
                
getFieldStatuses
            
                
getPlayer
            
                
playerIsActive
            
                
reset
            
                
resetTurnInfo
            
                
saveGameInfo
            
                
savePlayers
            
                
shouldDeleteAction
            
                
tryHighlightDummy
            
                
updateTurnInfo
            
        (private) _cardShouldBePlayable(card, actions, cardHolding) → {boolean}
Возвращает нужно ли сделать карту играбильной.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | |
| actions | ActionInfo | |
| cardHolding | Card | карта, которую держит игрок | 
Returns:
- Type:
- 
        
boolean
(private) _fixActionField(action, emptyTable) → {boolean}
Заменяет поле действия на первое свободное поле если оно есть.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| action | ActionInfo | |
| emptyTable | Field | 
Returns:
- Type:
- 
        
boolean
Нужно ли удалить действие.
(private) _getNewMessage() → {object}
Возвращает сообщение о состоянии хода.
- Source:
Returns:
- Type:
- 
        
object
{text, style}
(private) _logPlayerRoles(statuses)
Выводит статусы игроков в консоль.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| statuses | object | 
(private) _makeInteractible(card, field, action, defenseFields, emptyTable)
Делает поле и карту интерактивной в соответствии с действием.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| card | Card | |
| field | Field | |
| action | ActionInfo | |
| defenseFields | Array.<Field> | поля, которые игрок должен отбивать | 
| emptyTable | Field | первое свободное поле на столе | 
(private) _removeMessage(message, seqopt)
Удаляет сообщение о состоянии хода.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| message | Phaser.Text | ||
| seq | object | <optional> | последовательность, в которую будет добавлено удалени | 
(private) _resetButton(button)
Ресетит кнопку действия.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| button | UI.Button | 
(private) _roleIsAttacker(status) → {boolean}
Определяет, является ли игрок атакуюшим по статусу.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| status | object | 
Returns:
- Type:
- 
        
boolean
(private) _setButtonAction(button, type)
Устанавливает текст и действие кнопки действия.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| button | UI.Button | кнопка действия | 
| type | string | тип действия | 
(private) _shouldResetTurnInfo(turnStage, hasActions) → {boolean}
Возвращает нужно ли ресетить информацию о ходе.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| turnStage | string | текущая стадия хода | 
| hasActions | boolean | может ли игрок ходить | 
Returns:
- Type:
- 
        
boolean
(private) _updateMessage(seqopt)
Обновляет сообщение о состоянии хода, удаляет предыдущее сообщение.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| seq | object | <optional> | последовательность, в которую будет добавлено удаление старого сообщения | 
(private) _updatePlayerRoles(statuses)
Обновляет роли игроков.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| statuses | object | текущие статусы игроков | 
applyInteractivity(actions, button)
Делает элементы игры интерактивными в соответствии с переданными действиям.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| actions | Array.<ActionInfo> | |
| button | UI.Button | кнопка, на которую будет навешено действие из buttonActions. | 
findAppropriateField(field) → {Field}
Находит поле, на которое можно положиь карту.
Меняет местами field с field.linkedField и возвращает linkedField если оно есть.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| field | Field | поле, над которым находится карта | 
getPlayer(pid) → {object}
Возвращает информацию об игрока по id.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| pid | string | 
Returns:
- Type:
- 
        
object
playerIsActive(pid, wasActive) → {boolean}
Возвращается является ли игрок активным в данный момент.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| pid | string | id игрока | 
| wasActive | boolean | был ли игрок активным в предыдущую фазу | 
Returns:
- Type:
- 
        
boolean
активен ли игрок теперь
reset()
Убирает всю информацию об игре (игроков, роли, информацию о ходе, свойства игры).
- Source:
resetTurnInfo(seqopt)
Обнуляет роли игроков и стадию хода, удаляет сообщение о статусе хода.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| seq | object | <optional> | последовательность в которую будет добавлено удаление сообщения о состоянии хода | 
saveGameInfo(gameId, gameIndex, rules, simulating)
Сохраняет информацию об игре.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| gameId | string | id игры | 
| gameIndex | number | индекс игры | 
| rules | object | правила игры | 
| simulating | boolean | находится ли игра в режиме ускоренной симуляции | 
savePlayers(players)
Сохраняет информацию об игроках.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| players | array | 
shouldDeleteAction(action, card, field, doneAction) → {boolean}
Возвращает нужно ли удалить действие в соответствии с типом действия, правилами игры и turnStage.
В некоторых случаях модифицирует действие.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| action | ActionInfo | проверяемое действий | 
| card | Card | использованная в  | 
| field | Field | использованное в  | 
| doneAction | ActionInfo | исполненное действие | 
Returns:
- Type:
- 
        
boolean
tryHighlightDummy(emptyTable)
Подсвечивает dummy поле, если все поля стола играбильны.
- Source:
Parameters:
| Name | Type | Description | 
|---|---|---|
| emptyTable | TableField | первое пустое поле ввода | 
updateTurnInfo(statuses, turnIndex, turnStage, hasActions, seqopt)
Обновляет статусы и роли игроков, запоминает текущую стадию хода, и выводит сообщение о состоянии хода.
- Source:
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| statuses | object | статусы игроков | |
| turnIndex | number | номер хода | |
| turnStage | string | стадия хода | |
| hasActions | boolean | игрок может ходить | |
| seq | object | <optional> | последовательность действий, в которую будет добавлено удаление старого сообщения о состоянии хода |