changement de l'affichage des joueurs en endagame et bouton de reset 🎨

pull/78/head
Pierre Ferreira 1 year ago
parent d86879b95d
commit f7ccdcd1e1

@ -33,10 +33,31 @@
align-items: center;
}
.playerContainer {
.playersContainer {
display: flex;
flex-direction: column;
align-items: center;
padding-left: "5px";
}
/* padding-left: "5px"; */
width: 100px;
background-color: red;
}
.playerContainer{
/* display: flex;
align-items: center; */
/* flex-direction: column; */
width: 300px;
border: solid 1px whitesmoke;
border-radius: 15px;
background-color: white;
}
.losingPlayer{
display: flex;
background-color: yellow;
}

@ -28,7 +28,40 @@ function EndGame() {
const {winner, person, players, indices} =useGame()
console.log(winner)
let losingPlayers;
if (winner != null) {
losingPlayers = players.filter(player => player.id !== winner.id);
} else {
losingPlayers = players;
}
const theme = useTheme();
const playersRows = [];
for (let i = 0; i < losingPlayers.length; i += 3) {
const rowPlayers = losingPlayers.slice(i, i + 3);
playersRows.push(
<div className="playerRow" key={i}>
{rowPlayers.map((player, index) => (
<div className="playerContainer" key={index}>
{player.id !== winner?.id && (
<div>
<PersonStatus img={Person} state={Person} key={index} name={player.name} playerTouched={1} setPlayerTouched={() => {}} index={index} showCircle={false}/>
<h6>
{indices[players.findIndex((p) => p.id == player?.id)].ToString("fr")}
</h6>
</div>
)}
</div>
))}
</div>
);
}
return (
<div>
<div className="head">
@ -45,21 +78,25 @@ function EndGame() {
<div className='centerDivH'>
<BigButtonNav dest="/play" img={Leave}/>
</div>
<ul className='centerDivH'>
{
players.map((player, index) => (
<div className="playerContainer">
{player.id!=winner?.id &&
<>
<PersonStatus img={Person} state={Person} key={index} name={player.name} playerTouched={1} setPlayerTouched={() => {}} index={index} showCircle={false}/>
<h5 style={{width: 50}}>{indices[players.findIndex((p) => p.id == player?.id)].ToString("fr")}</h5>
</>
}
</div>
))
}
{/* <div className='losingPlayer'> */}
{/* {
losingPlayers.map((player, index) => (
<div className="playersContainer">
{player.id!=winner?.id &&
<>
<div className='playerContainer'>
<PersonStatus img={Person} state={Person} key={index} name={player.name} playerTouched={1} setPlayerTouched={() => {}} index={index} showCircle={false}/>
<h5 style={{width: 50}}>{indices[players.findIndex((p) => p.id == player?.id)].ToString("fr")}</h5>
</div>
</>
}
</div>
))
} */}
{playersRows}
</ul>
{/* </div> */}
<div className='centerDivH'>
<BigButtonNav dest="/lobby" img={Replay}/>
</div>

@ -40,10 +40,12 @@
}
.resetDiv{
z-index: 1;
position: absolute;
top: 190px;
right: 10px;
display: flex;
justify-content: center;
align-items: center;
}
#graphDiv{

@ -20,6 +20,7 @@ import Info from "../res/icon/infoGreen.png";
import Check from "../res/icon/checkboxGreen.png";
import Alpha from "../res/GreekLetters/alphaW.png";
import MGlass from "../res/icon/magnifying-glass.png";
import Reset from "../res/icon/reset.png";
import Oeye from "../res/icon/eye.png";
import Ceye from "../res/icon/hidden.png";
@ -33,7 +34,7 @@ import Offcanvas from 'react-bootstrap/Offcanvas';
/* Model */
import Stub from '../model/Stub';
import { HiLanguage } from 'react-icons/hi2';
import { Nav, NavDropdown } from 'react-bootstrap';
import { Nav, NavDropdown, Spinner } from 'react-bootstrap';
import { FormattedMessage } from 'react-intl';
import Color from '../model/Color';
import { useGame } from '../Contexts/GameContext';
@ -67,12 +68,8 @@ const InGame = ({locale, changeLocale}) => {
};
const setShowLastData = () =>{
if (showLast){
setShowLast(false)
}
else{
setShowLast(true)
}
setLastVisible(!showLast);
setShowLast(!showLast);
}
useEffect(() => {
@ -105,7 +102,11 @@ const InGame = ({locale, changeLocale}) => {
}
const resetGraph = () => {
setisLoading(true);
socket.emit("reset graph", socket.id)
setTimeout(() => {
setisLoading(false);
}, 2000);
}
/* offcanvas */
@ -126,6 +127,8 @@ const InGame = ({locale, changeLocale}) => {
const [cptTour, setcptTour] = useState(0);
const [LastVisible, setLastVisible] = useState(false);
const [isLoading, setisLoading] = useState(false);
//@ts-ignore
@ -220,18 +223,32 @@ const InGame = ({locale, changeLocale}) => {
</div>
<div className='resetDiv'>
<button className='button'
style={{
backgroundColor: theme.colors.tertiary,
borderColor: theme.colors.secondary
}}
onClick={resetGraph}>
<img src={Param} alt="paramètres" height='40'/>
</button>
</div>
<div className='menuGame'>
<div className='resetDiv'>
<button className='button'
style={{
backgroundColor: theme.colors.tertiary,
borderColor: theme.colors.secondary
}}
onClick={resetGraph}>
{
isLoading ? (
<Spinner animation="grow" />
)
: (
<img src={Reset} alt="paramètres" height='40'/>
)
}
</button>
</div>
{/* <Link to='/info#indice-possible' target='_blank'>
//? redirection impossible apparament (securité des navigateur
*/}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Loading…
Cancel
Save