Implemented player login

This commit is contained in:
Quentin Roussel
2024-03-26 03:35:19 +01:00
parent b23d2a63e6
commit 7d75e91c80
16 changed files with 182 additions and 130 deletions

View File

@@ -1,13 +0,0 @@
"use client"
import LoginForm from "@/components/team/loginForm";
export default function Home() {
function login(teamId) {
console.log(teamId);
}
return (
<div>
<LoginForm title={"Team login"} placeholder={"team ID"} buttonText={"Login"} onSubmit={login}/>
</div>
);
}

View File

@@ -0,0 +1,12 @@
import { TeamConnexionProvider } from "@/context/teamConnexionContext";
import { TeamProvider } from "@/context/teamContext";
export default function AdminLayout({ children}) {
return (
<TeamConnexionProvider>
<TeamProvider>
{children}
</TeamProvider>
</TeamConnexionProvider>
)
}

View File

@@ -0,0 +1,19 @@
"use client"
import LoginForm from "@/components/team/loginForm";
import useGame from "@/hook/useGame";
import { redirect } from "next/navigation";
import { useEffect } from "react";
export default function Home() {
const { login, loggedIn } = useGame();
useEffect(() => {
if (loggedIn) {
redirect("/team/track");
}
}, [loggedIn]);
return (
<div>
<LoginForm title={"Team login"} placeholder={"team ID"} buttonText={"Login"} onSubmit={(value) => login(parseInt(value))}/>
</div>
);
}

View File

@@ -1,8 +1,9 @@
"use client";
import Button from '@/components/util/button';
import useGame from '@/hook/useGame';
import dynamic from 'next/dynamic';
import { redirect } from 'next/navigation';
import React, { useEffect } from 'react'
import useGame from '../../hook/useGame';
//Load the map without SSR
const LiveMap = dynamic(() => import('@/components/team/map'), {
@@ -10,7 +11,12 @@ const LiveMap = dynamic(() => import('@/components/team/map'), {
});
export default function Track() {
const { currentPosition, enemyPosition, updateCurrentPosition, sendCurrentPosition } = useGame();
const { currentPosition, enemyPosition, loggedIn, sendCurrentPosition } = useGame();
useEffect(() => {
if (!loggedIn) {
redirect("/team");
}
}, [loggedIn]);
return (