* @category Class * @license https://www.gnu.org/licenses/lgpl-3.0.en.html GNU Lesser General Public License * @link www.splendidbear.org * @since 2026. 04. 09. */ class GameController extends AbstractController { public function __construct( #[Autowire(env: 'APP_ENV')] private readonly string $env, #[Autowire(env: 'MERCURE_PUBLIC_URL')] private readonly string $mercurePublicUrl, #[Autowire(env: 'MERCURE_SUBSCRIBER_JWT')] private readonly string $mercureSubscriberJwt, ) { } #[Route('/', name: 'MineSeekerBundle_homepage')] public function index(): Response { return $this->render('Game/index.html.twig'); } #[Route('/play', name: 'MineSeekerBundle_gamePlay')] #[Route('/play/{gameAssoc}', name: 'MineSeekerBundle_gamePlayWId')] public function play(): Response { return $this->render('Game/play.html.twig', [ 'env' => $this->env, 'mercure_hub_url' => $this->mercurePublicUrl, 'mercure_subscriber_jwt' => $this->mercureSubscriberJwt, ]); } #[Route('/privacy-policy', name: 'MineSeekerBundle_privacy')] public function privacy(): Response { return $this->render('Official/privacy.html.twig'); } #[Route('/terms-of-service', name: 'MineSeekerBundle_terms')] public function terms(): Response { return $this->render('Official/terms.html.twig'); } #[Route('/contact', name: 'MineSeekerBundle_contact')] public function contact(): Response { return $this->render('Official/contact.html.twig'); } #[Route('/landing-page', name: 'MineSeekerBundle_landing')] public function landing(): Response { return $this->render('Official/landing.html.twig'); } }