1
0

Clicker: Fix Upgrade "Schnelle Auto-Clicker"

This commit is contained in:
Akamaru
2025-10-31 21:21:34 +01:00
parent 0e0110ba31
commit 71abb4add1

View File

@@ -105,18 +105,20 @@ function updateUI() {
document.getElementById('idleCost').textContent = formatNumber(idleCost); document.getElementById('idleCost').textContent = formatNumber(idleCost);
document.getElementById('autoClickerCost').textContent = formatNumber(autoClickerCost); document.getElementById('autoClickerCost').textContent = formatNumber(autoClickerCost);
document.getElementById('autoClickerCount').textContent = autoClickers; document.getElementById('autoClickerCount').textContent = autoClickers;
document.getElementById('autoClickerDesc').textContent = `Klickt ${(autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)).toFixed(1)} Mal alle 5s`; const autoClickerInterval = fastAutoClicker ? 3 : 5;
document.getElementById('autoClickerDesc').textContent = `Klickt ${(autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)).toFixed(1)} Mal alle ${autoClickerInterval}s`;
// Update stats tab // Update stats tab
document.getElementById('totalClicks').textContent = formatNumber(totalClicks); document.getElementById('totalClicks').textContent = formatNumber(totalClicks);
document.getElementById('clickPowerStat').textContent = formatNumber(clickPower * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)); document.getElementById('clickPowerStat').textContent = formatNumber(clickPower * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1));
document.getElementById('idleStat').textContent = formatNumber(idlePower * (idleMultiplier ? 2 : 1) * (1 + prestigeLevel * 0.5)) + '/s'; document.getElementById('idleStat').textContent = formatNumber(idlePower * (idleMultiplier ? 2 : 1) * (1 + prestigeLevel * 0.5)) + '/s';
document.getElementById('autoClickerStat').textContent = autoClickers + ' (' + ((autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)) / 5).toFixed(1) + '/s)'; const autoClickerIntervalSec = fastAutoClicker ? 3 : 5;
document.getElementById('autoClickerStat').textContent = autoClickers + ' (' + ((autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)) / autoClickerIntervalSec).toFixed(1) + '/s)';
document.getElementById('prestigeLevel').textContent = prestigeLevel; document.getElementById('prestigeLevel').textContent = prestigeLevel;
document.getElementById('prestigeBonusStat').textContent = (1 + prestigeLevel * 0.5).toFixed(1) + 'x'; document.getElementById('prestigeBonusStat').textContent = (1 + prestigeLevel * 0.5).toFixed(1) + 'x';
document.getElementById('timePlayed').textContent = formatTime(secondsPlayed); document.getElementById('timePlayed').textContent = formatTime(secondsPlayed);
document.getElementById('totalScore').textContent = formatNumber(totalScore); document.getElementById('totalScore').textContent = formatNumber(totalScore);
document.getElementById('scoreRate').textContent = formatNumber((idlePower * (idleMultiplier ? 2 : 1) * (1 + prestigeLevel * 0.5)) + ((autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)) / 5)) + '/s'; document.getElementById('scoreRate').textContent = formatNumber((idlePower * (idleMultiplier ? 2 : 1) * (1 + prestigeLevel * 0.5)) + ((autoClickers * (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1)) / autoClickerIntervalSec)) + '/s';
// Update upgrades tab // Update upgrades tab
document.getElementById('doubleClickCost').textContent = formatNumber(doubleClickCost); document.getElementById('doubleClickCost').textContent = formatNumber(doubleClickCost);
@@ -408,6 +410,9 @@ function buyFastAutoClicker() {
score -= fastAutoClickerCost; score -= fastAutoClickerCost;
fastAutoClicker = true; fastAutoClicker = true;
// Starte Auto-Clicker mit neuer Geschwindigkeit neu
startAutoClicker();
if (notificationsOn) { if (notificationsOn) {
showNotification('Schnelle Auto-Clicker freigeschaltet! Auto-Clicker klicken jetzt alle 3s.'); showNotification('Schnelle Auto-Clicker freigeschaltet! Auto-Clicker klicken jetzt alle 3s.');
} }
@@ -569,6 +574,9 @@ function confirmPrestige() {
showNotification(`Prestige auf Level ${prestigeLevel}! ${(0.5 + (prestigeLevel-1)*0.1).toFixed(1)}x Multiplikator erhalten.`); showNotification(`Prestige auf Level ${prestigeLevel}! ${(0.5 + (prestigeLevel-1)*0.1).toFixed(1)}x Multiplikator erhalten.`);
} }
// Starte Auto-Clicker neu (behält fastAutoClicker Geschwindigkeit)
startAutoClicker();
updateUI(); updateUI();
} }
@@ -662,6 +670,9 @@ function confirmReset() {
achievement.earned = false; achievement.earned = false;
}); });
// Starte Auto-Clicker neu (jetzt wieder mit 5s)
startAutoClicker();
// UI aktualisieren // UI aktualisieren
updateUI(); updateUI();
renderAchievements(); renderAchievements();
@@ -840,6 +851,9 @@ function loadSaveData(data) {
}); });
} }
// Starte Auto-Clicker mit korrekter Geschwindigkeit neu
startAutoClicker();
updateUI(); updateUI();
renderAchievements(); renderAchievements();
} }
@@ -894,38 +908,52 @@ function gameLoop() {
requestAnimationFrame(gameLoop); requestAnimationFrame(gameLoop);
} }
// Auto clicker interval - Geschwindigkeit abhängig von fastAutoClicker // Auto clicker interval - wird dynamisch neu gestartet
setInterval(() => { let autoClickerInterval;
if (autoClickers > 0) {
// Berechne Multiplikatoren
let clickMultipliers = (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1);
if (megaClick) clickMultipliers *= 3;
if (autoClickerBoost) clickMultipliers *= 2;
if (superMultiplier) clickMultipliers *= 1.5;
if (ultraPower) clickMultipliers *= 1.5;
// Prestige-Bonus function startAutoClicker() {
let prestigeBonus = 1 + prestigeLevel * 0.5; // Stoppe altes Interval falls vorhanden
if (prestigeBoost) prestigeBonus *= 2; if (autoClickerInterval) {
clearInterval(autoClickerInterval);
// Zeit-Bonus
let timeMult = 1;
if (timeBonus) {
const hoursPlayed = secondsPlayed / 3600;
timeMult = 1 + (hoursPlayed * 0.05);
}
if (ultraPower) timeMult *= 1.5;
const clicks = autoClickers * clickMultipliers * prestigeBonus * timeMult;
score += clicks;
totalScore += clicks;
// Visual feedback - zeige Auto-Clicker-Anzeige
showScoreChange(clicks, false, true);
updateUI();
} }
}, fastAutoClicker ? 3000 : 5000);
// Starte neues Interval mit aktueller Geschwindigkeit
const interval = fastAutoClicker ? 3000 : 5000;
autoClickerInterval = setInterval(() => {
if (autoClickers > 0) {
// Berechne Multiplikatoren
let clickMultipliers = (doubleClick ? 2 : 1) * (clickMultiplier ? 1.5 : 1);
if (megaClick) clickMultipliers *= 3;
if (autoClickerBoost) clickMultipliers *= 2;
if (superMultiplier) clickMultipliers *= 1.5;
if (ultraPower) clickMultipliers *= 1.5;
// Prestige-Bonus
let prestigeBonus = 1 + prestigeLevel * 0.5;
if (prestigeBoost) prestigeBonus *= 2;
// Zeit-Bonus
let timeMult = 1;
if (timeBonus) {
const hoursPlayed = secondsPlayed / 3600;
timeMult = 1 + (hoursPlayed * 0.05);
}
if (ultraPower) timeMult *= 1.5;
const clicks = autoClickers * clickMultipliers * prestigeBonus * timeMult;
score += clicks;
totalScore += clicks;
// Visual feedback - zeige Auto-Clicker-Anzeige
showScoreChange(clicks, false, true);
updateUI();
}
}, interval);
}
// Starte Auto-Clicker beim Laden
startAutoClicker();
// Time played counter // Time played counter
setInterval(() => { setInterval(() => {