diff --git a/package-lock.json b/package-lock.json index 948347a..4452fd4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "viber", "version": "0.0.0", "dependencies": { + "@chakra-ui/icons": "^2.2.4", "@chakra-ui/react": "^2.8.2", "@emotion/react": "^11.11.3", "@emotion/styled": "^11.11.0", @@ -651,6 +652,16 @@ "react": ">=18" } }, + "node_modules/@chakra-ui/icons": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@chakra-ui/icons/-/icons-2.2.4.tgz", + "integrity": "sha512-l5QdBgwrAg3Sc2BRqtNkJpfuLw/pWRDwwT58J6c4PqQT6wzXxyNa8Q0PForu1ltB5qEiFb1kxr/F/HO1EwNa6g==", + "license": "MIT", + "peerDependencies": { + "@chakra-ui/react": ">=2.0.0", + "react": ">=18" + } + }, "node_modules/@chakra-ui/image": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@chakra-ui/image/-/image-2.1.0.tgz", diff --git a/package.json b/package.json index b7ae5f8..7c2ad89 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "preview": "vite preview" }, "dependencies": { + "@chakra-ui/icons": "^2.2.4", "@chakra-ui/react": "^2.8.2", "@emotion/react": "^11.11.3", "@emotion/styled": "^11.11.0", diff --git a/src/App.tsx b/src/App.tsx index 346d34f..5e18d6e 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -41,16 +41,13 @@ function App() { playerLevel, getAvailableBuildings, tick, - clickPower, click, - getClickPowerUpgradeCost } = useGameStore() const [agreedToTerms, setAgreedToTerms] = useState(false) const [hasStarted, setHasStarted] = useState(false) const { isOpen, onClose } = useDisclosure({ defaultIsOpen: true }) const availableBuildings = getAvailableBuildings() - const clickPowerUpgradeCost = getClickPowerUpgradeCost() // Set up game tick interval useEffect(() => { @@ -125,32 +122,8 @@ function App() { Upgrades - - - - Click Power - Level {clickPower} - - - Each click generates {clickPower} points - - - - + {/* Click Power button has been moved to ResourceDisplay header */} + {/* Add other upgrades here in the future */} diff --git a/src/components/ResourceDisplay.tsx b/src/components/ResourceDisplay.tsx index 053a90a..37f8633 100644 --- a/src/components/ResourceDisplay.tsx +++ b/src/components/ResourceDisplay.tsx @@ -1,11 +1,12 @@ -import { Box, HStack, Text, Progress, Flex, Divider, Tooltip, Image } from '@chakra-ui/react' +import { Box, HStack, Text, Progress, Flex, Divider, Tooltip, Image, Button, Icon } from '@chakra-ui/react' import { useGameStore } from '../store/gameStore' import logoImg from '../assets/logo.png' import { ResetButton } from './ResetButton' import { SoundToggleButton } from './SoundToggleButton' +import { AddIcon } from '@chakra-ui/icons' export function ResourceDisplay() { - const { points, pointsPerSecond, clickPower, playerLevel } = useGameStore() + const { points, pointsPerSecond, clickPower, playerLevel, getClickPowerUpgradeCost, buyUpgrade } = useGameStore() // Calculate progress to next level const currentLevelPPS = Math.pow(10, playerLevel - 1) @@ -21,6 +22,9 @@ export function ResourceDisplay() { progress = Math.min(Math.max(((pointsPerSecond - currentLevelPPS) / (nextLevelPPS - currentLevelPPS)) * 100, 0), 100); } + const clickPowerUpgradeCost = getClickPowerUpgradeCost(); + const canAffordUpgrade = points >= clickPowerUpgradeCost; + return ( - {/* Click Power */} + {/* Click Power with Upgrade Button */} Click Power - {clickPower} + + {clickPower} + + + +