1
0

Updated the Join.jsx

This commit is contained in:
Mathias Wagner 2023-11-23 07:52:30 +01:00
parent 80cc61170a
commit d0a05ceaf7
Signed by: Mathias
GPG Key ID: B8DC354B0A1F5B44

View File

@ -16,14 +16,19 @@ const localeOptions = {
export const Join = () => { export const Join = () => {
const [state, setState] = useState("join"); const [state, setState] = useState("join");
const [capital, setCapital] = useState(25000); const [capital, setCapital] = useState(0);
const [maxWin, setMaxWin] = useState(0); const [maxWin, setMaxWin] = useState(0);
const [cost, setCost] = useState(0); const [cost, setCost] = useState(0);
const [settings, setSettings] = useState({});
const handleEnd = () => { const handleEnd = () => {
setState("end"); setState("end");
} }
const handleSettings = (data) => {
setSettings(data);
}
const onCapitalChange = (data) => { const onCapitalChange = (data) => {
setCapital(data.capital); setCapital(data.capital);
} }
@ -36,11 +41,13 @@ export const Join = () => {
socket.on("GAME_OVER", handleEnd); socket.on("GAME_OVER", handleEnd);
socket.on("SUBMISSION_READY", onSubmissionReady); socket.on("SUBMISSION_READY", onSubmissionReady);
socket.on("CAPITAL", onCapitalChange); socket.on("CAPITAL", onCapitalChange);
socket.on("SETTINGS", handleSettings);
return () => { return () => {
socket.off("GAME_OVER", handleEnd); socket.off("GAME_OVER", handleEnd);
socket.off("SUBMISSION_READY", onSubmissionReady); socket.off("SUBMISSION_READY", onSubmissionReady);
socket.off("CAPITAL", onCapitalChange); socket.off("CAPITAL", onCapitalChange);
socket.off("SETTINGS", handleSettings);
} }
}, []); }, []);
@ -55,7 +62,7 @@ export const Join = () => {
</div>} </div>}
{state === "join" && <Code setState={setState}/>} {state === "join" && <Code setState={setState}/>}
{state === "waiting" && <FontAwesomeIcon icon={faHourglassHalf} bounce className="waiting-icon" style={{marginTop: "1rem"}} /> } {state === "waiting" && <FontAwesomeIcon icon={faHourglassHalf} bounce className="waiting-icon" style={{marginTop: "1rem"}} /> }
{state === "input" && <Input setState={setState} capital={capital} setWin={setMaxWin} setCost={setCost}/>} {state === "input" && <Input setState={setState} capital={capital} setWin={setMaxWin} setCost={setCost} settings={settings}/>}
{state === "end" && <div className="game-end"> {state === "end" && <div className="game-end">
<h1>Ende</h1> <h1>Ende</h1>
<p>Das Spiel ist vorbei!</p> <p>Das Spiel ist vorbei!</p>