function initHUD()

in libs/game/info.ts [41:94]


    function initHUD() {
        if (_hud) return;
        _hud = true;

        _heartImage = _heartImage || defaultHeartImage();

        _multiplierImage = _multiplierImage || img`
        1 . . . 1
        . 1 . 1 .
        . . 1 . .
        . 1 . 1 .
        1 . . . 1
        `;

        _bgColor = isMonoColorInfo ? 0 : 1;
        _borderColor = isMonoColorInfo ? 1 : 3;
        _fontColor = isMonoColorInfo ? 1 : 3;
        game.eventContext().registerFrameHandler(95, () => {
            // show score
            if (_score !== null && _visibilityFlag & Visibility.Score) {
                drawScore();
            }
            // show life
            if (_life !== null && _visibilityFlag & Visibility.Life) {
                drawLives();
                if (_life <= 0) {
                    _life = null;
                    if (_lifeOverHandler) {
                        _lifeOverHandler();
                    }
                    else {
                        game.over();
                    }
                }
            }
            // show countdown
            if (_gameEnd !== undefined && _visibilityFlag & Visibility.Countdown) {
                drawTimer(_gameEnd - control.millis())
                let t = Math.max(0, _gameEnd - control.millis()) / 1000;
                if (t <= 0) {
                    t = 0;
                    if (!_countdownExpired) {
                        _countdownExpired = true;
                        if (_countdownEndHandler) {
                            _countdownEndHandler();
                        }
                        else {
                            game.over();
                        }
                    }
                }
            }
        })
    }