Skip to content

Commit 347cb8d

Browse files
committed
Add autoclicker level bonus multiplier
1 parent d15bcd7 commit 347cb8d

File tree

1 file changed

+34
-10
lines changed

1 file changed

+34
-10
lines changed

src/App.js

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ function App() {
88
const [pointsPerSecond, setPointsPerSecond] = useState(0); //set initial points per second to 0
99
const [autoClickers, setAutoClickers] = useState(0); //set initial auto clickers to 0
1010
const [autoClickersMultiplier, setAutoClickersMultiplier] = useState(1); //set initial auto clickers multiplier to 1
11+
const [autoClickersLevelBonus, setAutoClickersLevelBonus] = useState(0); //set initial auto clickers level bonus to 0
1112
const [clicks, setClicks] = useState(0); //set initial clicks pressed to 0
1213
const [clickMultiplier, setClickMultiplier] = useState(1); //set initial click multiplier to 1
1314
const [clickersMultiplier, setClickersMultiplier] = useState(1); //set initial clickers multiplier to 1
@@ -20,9 +21,12 @@ function App() {
2021
const updateAutoClickers = useCallback(() => {
2122
//update points per second for autoclickers
2223
setPointsPerSecond(
23-
(prevPointsPerSecond) => autoClickers * autoClickersMultiplier,
24+
(prevPointsPerSecond) =>
25+
autoClickers *
26+
autoClickersMultiplier *
27+
(1 + (autoClickersLevelBonus * autoClickers) / 100),
2428
); //set points per second
25-
}, [autoClickers, autoClickersMultiplier]);
29+
}, [autoClickers, autoClickersLevelBonus, autoClickersMultiplier]);
2630
useEffect(() => {
2731
const interval = setInterval(() => {
2832
//increase points every second
@@ -100,6 +104,20 @@ function App() {
100104
updateAutoClickers(); //update auto clickers value
101105
}
102106
}
107+
function upgradeAutoClickerLevelBonus() {
108+
//upgrade autoclicker level bonus
109+
if (
110+
checkPointsForUpgrade(points, 1e3 * Math.pow(2, autoClickersLevelBonus))
111+
) {
112+
setPoints(
113+
(prevPoints) => prevPoints - 1e3 * Math.pow(2, autoClickersLevelBonus),
114+
);
115+
setAutoClickersLevelBonus(
116+
(prevAutoClickersLevelBonus) => prevAutoClickersLevelBonus + 1,
117+
); //increase autoclickers level bonus by 1
118+
updateAutoClickers(); //update auto clickers value
119+
}
120+
}
103121
return (
104122
//dynamic app HTML output
105123
<div className="App">
@@ -143,27 +161,33 @@ function App() {
143161
Clicker Multiplier Level:{" "}
144162
<NumericDisplay value={clickersMultiplier} shortForm={false} />
145163
<br />
146-
{/*upgrade clicker (points per click)*/}
164+
{/*upgrade clicker multiplier*/}
147165
<button onClick={() => upgradeClickerMultiplier()}>
148-
Upgrade Clicker (Points Per Click)
166+
Upgrade Clicker Multiplier
149167
</button>
150168
<CostDisplay cost={100 * Math.pow(2, clickersMultiplier - 1)} />
151169
Autoclicker Level:{" "}
152170
<NumericDisplay value={autoClickers} shortForm={false} />
153171
<br />
154-
{/*upgrade points per second*/}
155-
<button onClick={() => upgradeAutoClicker()}>
156-
Upgrade Points Per Second
157-
</button>
172+
{/*upgrade autoclicker (points per second)*/}
173+
<button onClick={() => upgradeAutoClicker()}>Upgrade Autoclicker</button>
158174
<CostDisplay cost={10 * Math.pow(2, autoClickers)} />
159175
Autoclicker Multiplier Level:{" "}
160176
<NumericDisplay value={autoClickersMultiplier} shortForm={false} />
161177
<br />
162-
{/*upgrade points per second*/}
178+
{/*upgrade autoclicker multiplier*/}
163179
<button onClick={() => upgradeAutoClickerMultiplier()}>
164-
Upgrade Points Per Second
180+
Upgrade Autoclicker Multiplier
165181
</button>
166182
<CostDisplay cost={100 * Math.pow(2, autoClickersMultiplier - 1)} />
183+
Autoclicker Level Bonus:{" "}
184+
<NumericDisplay value={autoClickersLevelBonus} shortForm={false} />
185+
<br />
186+
{/*upgrade autoclicker level bonus*/}
187+
<button onClick={() => upgradeAutoClickerLevelBonus()}>
188+
Upgrade Autoclicker Level Bonus
189+
</button>
190+
<CostDisplay cost={1000 * Math.pow(2, autoClickersLevelBonus)} />
167191
</div>
168192
);
169193
}

0 commit comments

Comments
 (0)