feat: better reward handling

This commit is contained in:
TrèsAbhi committed 2023-11-14 20:12:34 -06:00
1 parent 02a03b4d68
commit 0d1eb9b12e
1 file changed
+38 -27
+38 -27
View File
@@ -906,7 +906,9 @@ export default function Page() {
<Table.Row> <Table.Row>
<Table.ColumnHeaderCell width="0">Position</Table.ColumnHeaderCell> <Table.ColumnHeaderCell width="0">Position</Table.ColumnHeaderCell>
<Table.ColumnHeaderCell>Player</Table.ColumnHeaderCell> <Table.ColumnHeaderCell>Player</Table.ColumnHeaderCell>
<Table.ColumnHeaderCell width="0">Reward</Table.ColumnHeaderCell> {season === 0 && (
<Table.ColumnHeaderCell width="0">Reward</Table.ColumnHeaderCell>
)}
<Table.ColumnHeaderCell width="0"> <Table.ColumnHeaderCell width="0">
Percentile Percentile
</Table.ColumnHeaderCell> </Table.ColumnHeaderCell>
@@ -946,46 +948,55 @@ export default function Page() {
: 'unset', : 'unset',
cursor: 'pointer', cursor: 'pointer',
}} }}
key={index} key={`${region}${season}${index}`}
onClick={() => { onClick={() => {
setHighlightedPlayer({ type: 'position', position: index }); setHighlightedPlayer({ type: 'position', position: index });
}} }}
> >
<Table.Cell key={index}>{position.toLocaleString()}.</Table.Cell> <Table.Cell>{position.toLocaleString()}.</Table.Cell>
<Table.Cell key={index}> <Table.Cell>
{names[region][id] === null {names[region][id] === null
? `Deleted player ${id}` ? `Deleted player ${id}`
: names[region][id]?.nickname ?? `Loading player...`} : names[region][id]?.nickname ?? `Loading player...`}
<Text color="gray">{clan ? ` [${clan}]` : ''}</Text> <Text color="gray">{clan ? ` [${clan}]` : ''}</Text>
</Table.Cell> </Table.Cell>
<Table.Cell key={index} align="center" justify="center"> {season === 0 && (
{reward ? ( <Table.Cell align="center" justify="center">
<Flex align="center" justify="center" gap="1"> {reward ? (
<img <Flex align="center" justify="center" gap="1">
style={{ <img
objectFit: 'contain', style={{
}} objectFit: 'contain',
width={32} }}
height={32} width={32}
src={ height={32}
reward.type === 'stuff' src={
? reward.stuff.image_url reward.type === 'stuff'
: reward.vehicle.image_url ? reward.stuff.image_url
} : reward.vehicle.image_url
/> }
{reward.count === 1 ? '' : `x${reward.count}`} alt={
</Flex> reward.type === 'stuff'
) : ( ? reward.stuff.title
'--' : reward.vehicle.user_string
)} }
</Table.Cell> />
<Table.Cell key={index} align="right" justify="center"> <Text style={{ whiteSpace: 'nowrap' }} color="gray">
{reward.count === 1 ? '' : `x ${reward.count}`}
</Text>
</Flex>
) : (
'--'
)}
</Table.Cell>
)}
<Table.Cell align="right" justify="center">
{totalPlayers {totalPlayers
? Math.ceil(((index + 1) / totalPlayers) * 100) ? Math.ceil(((index + 1) / totalPlayers) * 100)
: '--'} : '--'}
% %
</Table.Cell> </Table.Cell>
<Table.Cell key={index} align="right"> <Table.Cell align="right">
{players[region][season]?.[index]?.score.toLocaleString()} {players[region][season]?.[index]?.score.toLocaleString()}
</Table.Cell> </Table.Cell>
</Table.Row> </Table.Row>