DisplayGameState.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import Image from "next/image"
  2. import { HStack, VStack, Text } from "@chakra-ui/react"
  3. import { useWallet } from "@solana/wallet-adapter-react"
  4. import { useGameState } from "@/contexts/GameStateProvider"
  5. import { TOTAL_WOOD_AVAILABLE } from "@/utils/anchor"
  6. const DisplayPlayerData = () => {
  7. const { publicKey } = useWallet()
  8. const { gameState, nextEnergyIn, totalWoodAvailable } = useGameState()
  9. return (
  10. <>
  11. {gameState && publicKey && (
  12. <HStack justifyContent="center" spacing={4}>
  13. <HStack>
  14. <Image src="/Wood.png" alt="Wood Icon" width={64} height={64} />
  15. <Text>Wood: {Number(gameState.wood)}</Text>
  16. </HStack>
  17. <HStack>
  18. <Image src="/energy.png" alt="Energy Icon" width={64} height={64} />
  19. <VStack>
  20. <Text>Energy: {Number(gameState.energy)}</Text>
  21. <Text>Next in: {nextEnergyIn}</Text>
  22. </VStack>
  23. </HStack>
  24. <Text>Total Wood available: {Number(TOTAL_WOOD_AVAILABLE) - Number(totalWoodAvailable)}</Text>
  25. </HStack>
  26. )}
  27. </>
  28. )
  29. }
  30. export default DisplayPlayerData