mirror of
https://github.com/tiennm99/WPlace-AutoBOT.git
synced 2026-10-13 04:14:49 +00:00
4 files changed
+68
-20
No files matched your search
+24
-20
@@ -487,6 +487,18 @@
|
||||
pixels: 'Pixels',
|
||||
charges: 'Charges',
|
||||
batchSize: 'Batch Size',
|
||||
cooldownSettings: 'Cooldown Settings',
|
||||
waitCharges: 'Wait for Charges',
|
||||
settings: 'Settings',
|
||||
showStats: 'Show Statistics',
|
||||
compactMode: 'Compact Mode',
|
||||
minimize: 'Minimize',
|
||||
tokenCapturedSuccess: 'Token captured successfully',
|
||||
turnstileInstructions: 'Complete the verification',
|
||||
hideTurnstileBtn: 'Hide',
|
||||
notificationsNotSupported: 'Notifications not supported',
|
||||
chargesReadyMessage: 'Charges are ready',
|
||||
chargesReadyNotification: 'WPlace AutoBot',
|
||||
initMessage: "Click 'Upload Image' to begin",
|
||||
},
|
||||
};
|
||||
@@ -3471,13 +3483,12 @@
|
||||
<div class="wplace-dual-control-compact">
|
||||
<div class="wplace-slider-container-compact">
|
||||
<input type="range" id="cooldownSlider" class="wplace-slider" min="1" max="1" value="${state.cooldownChargeThreshold}">
|
||||
<span id="cooldownSliderValue" class="wplace-cooldown-value">${state.cooldownChargeThreshold}</span>
|
||||
</div>
|
||||
<div class="wplace-input-group-compact">
|
||||
<button id="cooldownDecrease" class="wplace-input-btn-compact" type="button">-</button>
|
||||
<input type="number" id="cooldownInput" class="wplace-number-input-compact" min="1" max="999" value="${state.cooldownChargeThreshold}">
|
||||
<button id="cooldownIncrease" class="wplace-input-btn-compact" type="button">+</button>
|
||||
<span class="wplace-input-label-compact">${Utils.t('charges')}</span>
|
||||
<span id="cooldownValue" class="wplace-input-label-compact">${Utils.t('charges')}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -3780,14 +3791,13 @@
|
||||
<div class="wplace-dual-control-compact">
|
||||
<div class="wplace-speed-slider-container-compact">
|
||||
<input type="range" id="speedSlider" min="${CONFIG.PAINTING_SPEED.MIN}" max="${CONFIG.PAINTING_SPEED.MAX}" value="${CONFIG.PAINTING_SPEED.DEFAULT}" class="wplace-speed-slider">
|
||||
<span id="speedSliderValue" class="wplace-speed-value">${CONFIG.PAINTING_SPEED.DEFAULT}</span>
|
||||
</div>
|
||||
<div class="wplace-speed-input-container-compact">
|
||||
<div class="wplace-input-group-compact">
|
||||
<button id="speedDecrease" class="wplace-input-btn-compact" type="button">-</button>
|
||||
<input type="number" id="speedInput" class="wplace-number-input-compact" min="${CONFIG.PAINTING_SPEED.MIN}" max="${CONFIG.PAINTING_SPEED.MAX}" value="${CONFIG.PAINTING_SPEED.DEFAULT}">
|
||||
<button id="speedIncrease" class="wplace-input-btn-compact" type="button">+</button>
|
||||
<span class="wplace-input-label-compact">pixels</span>
|
||||
<span id="speedValue" class="wplace-input-label-compact">pixels</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -4362,7 +4372,6 @@
|
||||
const closeStatsBtn = statsContainer.querySelector('#closeStatsBtn');
|
||||
const refreshChargesBtn = statsContainer.querySelector('#refreshChargesBtn');
|
||||
const cooldownSlider = container.querySelector('#cooldownSlider');
|
||||
const cooldownSliderValue = container.querySelector('#cooldownSliderValue');
|
||||
const cooldownInput = container.querySelector('#cooldownInput');
|
||||
const cooldownDecrease = container.querySelector('#cooldownDecrease');
|
||||
const cooldownIncrease = container.querySelector('#cooldownIncrease');
|
||||
@@ -4737,21 +4746,20 @@
|
||||
|
||||
// Speed controls - both slider and input
|
||||
const speedSlider = settingsContainer.querySelector('#speedSlider');
|
||||
const speedSliderValue = settingsContainer.querySelector('#speedSliderValue');
|
||||
const speedInput = settingsContainer.querySelector('#speedInput');
|
||||
const speedDecrease = settingsContainer.querySelector('#speedDecrease');
|
||||
const speedIncrease = settingsContainer.querySelector('#speedIncrease');
|
||||
const speedValue = settingsContainer.querySelector('#speedValue');
|
||||
|
||||
if (speedSlider && speedSliderValue && speedInput && speedValue && speedDecrease && speedIncrease) {
|
||||
if (speedSlider && speedInput && speedValue && speedDecrease && speedIncrease) {
|
||||
const updateSpeed = (newValue) => {
|
||||
const speed = Math.max(CONFIG.PAINTING_SPEED.MIN, Math.min(CONFIG.PAINTING_SPEED.MAX, parseInt(newValue)));
|
||||
state.paintingSpeed = speed;
|
||||
|
||||
// Update both controls without duplication
|
||||
// Update both controls (value shows in input, label shows unit only)
|
||||
speedSlider.value = speed;
|
||||
speedInput.value = speed;
|
||||
speedSliderValue.textContent = `${speed}`;
|
||||
speedValue.textContent = `pixels`;
|
||||
|
||||
saveBotSettings();
|
||||
};
|
||||
@@ -6709,15 +6717,15 @@
|
||||
|
||||
setTimeout(checkSavedProgress, 1000);
|
||||
|
||||
if (cooldownSlider && cooldownSliderValue && cooldownInput && cooldownValue && cooldownDecrease && cooldownIncrease) {
|
||||
if (cooldownSlider && cooldownInput && cooldownValue && cooldownDecrease && cooldownIncrease) {
|
||||
const updateCooldown = (newValue) => {
|
||||
const threshold = Math.max(1, Math.min(state.maxCharges || 999, parseInt(newValue)));
|
||||
state.cooldownChargeThreshold = threshold;
|
||||
|
||||
// Update both controls
|
||||
// Update both controls (value shows in input, label shows unit only)
|
||||
cooldownSlider.value = threshold;
|
||||
cooldownInput.value = threshold;
|
||||
cooldownSliderValue.textContent = threshold;
|
||||
cooldownValue.textContent = `${Utils.t('charges')}`;
|
||||
|
||||
saveBotSettings();
|
||||
NotificationManager.resetEdgeTracking(); // prevent spurious notify after threshold change
|
||||
@@ -7629,12 +7637,10 @@
|
||||
|
||||
const speedSlider = document.getElementById('speedSlider');
|
||||
const speedInput = document.getElementById('speedInput');
|
||||
const speedSliderValue = document.getElementById('speedSliderValue');
|
||||
const speedValue = document.getElementById('speedValue');
|
||||
if (speedSlider) speedSlider.value = state.paintingSpeed;
|
||||
if (speedInput) speedInput.value = state.paintingSpeed;
|
||||
if (speedSliderValue) speedSliderValue.textContent = `${state.paintingSpeed} (batch size)`;
|
||||
const speedValue = document.getElementById('speedValue');
|
||||
if (speedValue) speedValue.textContent = Utils.t('batchSize');
|
||||
if (speedValue) speedValue.textContent = `pixels`;
|
||||
|
||||
const enableSpeedToggle = document.getElementById('enableSpeedToggle');
|
||||
if (enableSpeedToggle) enableSpeedToggle.checked = CONFIG.PAINTING_SPEED_ENABLED;
|
||||
@@ -7667,12 +7673,10 @@
|
||||
|
||||
const cooldownSlider = document.getElementById('cooldownSlider');
|
||||
const cooldownInput = document.getElementById('cooldownInput');
|
||||
const cooldownSliderValue = document.getElementById('cooldownSliderValue');
|
||||
const cooldownValue = document.getElementById('cooldownValue');
|
||||
if (cooldownSlider) cooldownSlider.value = state.cooldownChargeThreshold;
|
||||
if (cooldownInput) cooldownInput.value = state.cooldownChargeThreshold;
|
||||
if (cooldownSliderValue) cooldownSliderValue.textContent = state.cooldownChargeThreshold;
|
||||
const cooldownValue = document.getElementById('cooldownValue');
|
||||
if (cooldownValue) cooldownValue.textContent = Utils.t('charges');
|
||||
if (cooldownValue) cooldownValue.textContent = `${Utils.t('charges')}`;
|
||||
|
||||
const overlayOpacitySlider = document.getElementById('overlayOpacitySlider');
|
||||
if (overlayOpacitySlider) overlayOpacitySlider.value = state.overlayOpacity;
|
||||
|
||||
@@ -566,6 +566,19 @@
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* Cooldown control styling for classic light theme */
|
||||
.wplace-theme-classic-light .wplace-cooldown-control {
|
||||
margin: 12px 0;
|
||||
}
|
||||
|
||||
.wplace-theme-classic-light .wplace-cooldown-control label {
|
||||
color: var(--wplace-highlight);
|
||||
font-weight: 500;
|
||||
font-size: 13px;
|
||||
margin-bottom: 8px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Color swatches with light styling */
|
||||
.wplace-theme-classic-light .wplace-color-swatch {
|
||||
border: 1px solid rgb(0 0 0 / 20%) !important;
|
||||
|
||||
@@ -700,6 +700,21 @@
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* Cooldown control styling for classic theme */
|
||||
:root .wplace-cooldown-control,
|
||||
.wplace-theme-classic .wplace-cooldown-control {
|
||||
margin: 12px 0;
|
||||
}
|
||||
|
||||
:root .wplace-cooldown-control label,
|
||||
.wplace-theme-classic .wplace-cooldown-control label {
|
||||
color: var(--wplace-highlight);
|
||||
font-weight: 500;
|
||||
font-size: 13px;
|
||||
margin-bottom: 8px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Resize dialog styling for classic theme */
|
||||
:root .resize-container,
|
||||
.wplace-theme-classic .resize-container {
|
||||
|
||||
@@ -492,6 +492,22 @@
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/* Cooldown control styling for neon theme */
|
||||
.wplace-theme-neon .wplace-cooldown-control {
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.wplace-theme-neon .wplace-cooldown-control label {
|
||||
color: var(--wplace-text) !important;
|
||||
font-weight: 500;
|
||||
font-size: 11px;
|
||||
text-shadow: 0 0 8px var(--wplace-text) !important;
|
||||
font-family: var(--wplace-font) !important;
|
||||
text-transform: uppercase;
|
||||
margin-bottom: 6px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Resize dialog styling for neon theme */
|
||||
.wplace-theme-neon .resize-container {
|
||||
background: #1a1a2e !important;
|
||||
|
||||
Reference in new issue
Block a user