<?phpnamespace App\Scene;use JumPHP\Ui\MenuScene;/** Pause menu, pushed over the game: isOverlay() keeps the frozen view under it. */final class PauseScene extends MenuScene{ protected string $title = 'PAUSE'; protected float $titleScale = 2.0; protected float $menuTop = 0.4; public function isOverlay(): bool { return true; } protected function items(): array { return [ ['RESUME', null, fn () => $this->scenes()->pop()], ['OPTIONS', null, fn () => $this->scenes()->push(OptionsScene::class)], ['HOW TO PLAY', null, fn () => $this->scenes()->push(HelpScene::class)], ['QUIT TO TITLE', null, fn () => $this->scenes()->switchTo(TitleScene::class)], ]; } protected function back(): void { $this->scenes()->pop(); } public function update(float $dt): void { if ($this->actions()->isPressed('pause') && !$this->actions()->isPressed('back')) { $this->scenes()->pop(); return; } parent::update($dt); }}