Swift - не может скрыть или показать элементы GameScene от ввода touchNode - PullRequest
0 голосов
/ 09 апреля 2020

Я делаю свою первую игру и столкнулся с проблемой. В моей игре есть кнопка паузы, и когда она нажата, я хочу, чтобы мое "pauseMenu" показывало, но оно не работает. Вот код из моей GameScene:

if touchNode == pauseButton {
                pauseGame()
}



func pauseGame() {
        self.view?.isPaused = true
        print("Before isHidden is set to false:  \(pauseMenu?.isHidden)")
        pauseMenu?.isHidden = false
        print("After isHidden is set to false:  \(pauseMenu?.isHidden)")
}

Вот что печатает:

Before isHidden is set to false:  Optional(true)
After isHidden is set to false:  Optional(false)

Как вы можете видеть, функция pauseGame () вызывается успешно, и представление останавливается, но pauseMenu остается скрытым Это странно, потому что он успешно показывает, когда я вызываю pauseMenu? .IsHidden = false в другом месте, как в моей функции, которая вызывается, когда игра заканчивается:

func gameOver() {
    ...
    toggleViews()
}



func toggleViews() {
        ...
        print("Before isHidden is set to false:  \(pauseMenu?.isHidden)")
        pauseMenu?.isHidden = false
        print("After isHidden is set to false:  \(pauseMenu?.isHidden)")
}

Это успешно отображает pauseMenu и печатает тот же код:

Before isHidden is set to false:  Optional(true)
After isHidden is set to false:  Optional(false)

Я думаю, что проблема связана с невозможностью скрыть или показать что-то из touchNode, если я вызываю toggleViews (), как это, с gameScene ничего не происходит.

if touchNode == pauseButton {
                toggleViews()
}

Я в растерянности, я пытался это исправить несколько часов. Любая помощь с благодарностью

1 Ответ

0 голосов
/ 09 апреля 2020

Вы приостановили просмотр, поэтому я думаю, что вы должны запустить pauseMenu?.isHidden = false , прежде чем приостановить просмотр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...