diff --git a/Auto-Image.js b/Auto-Image.js index d4968e5..e40f849 100644 --- a/Auto-Image.js +++ b/Auto-Image.js @@ -192,6 +192,12 @@ }, }, currentTheme: 'Classic Autobot', + PAINT_UNAVAILABLE: true, + COORDINATE_MODE: 'rows', + COORDINATE_DIRECTION: 'bottom-left', + COORDINATE_SNAKE: true, + COORDINATE_BLOCK_WIDTH: 6, + COORDINATE_BLOCK_HEIGHT: 2, }; const getCurrentTheme = () => CONFIG.THEMES[CONFIG.currentTheme]; @@ -557,14 +563,13 @@ resizeSettings: null, originalImage: null, resizeIgnoreMask: null, + paintUnavailablePixels: CONFIG.PAINT_UNAVAILABLE, // Coordinate generation settings - strictSkipUnavailable: false, - coordinateMode: 'rows', - coordinateDirection: 'bottom-left', - coordinateSnake: true, - blockWidth: 6, - blockHeight: 2, - // Notification prefs and runtime bookkeeping + coordinateMode: CONFIG.COORDINATE_MODE, + coordinateDirection: CONFIG.COORDINATE_DIRECTION, + coordinateSnake: CONFIG.COORDINATE_SNAKE, + blockWidth: CONFIG.COORDINATE_BLOCK_WIDTH, + blockHeight: CONFIG.COORDINATE_BLOCK_HEIGHT, notificationsEnabled: CONFIG.NOTIFICATIONS.ENABLED, notifyOnChargesReached: CONFIG.NOTIFICATIONS.ON_CHARGES_REACHED, notifyOnlyWhenUnfocused: CONFIG.NOTIFICATIONS.ONLY_WHEN_UNFOCUSED, @@ -2398,19 +2403,19 @@ // Add new fields with default values if (!migrated.state.coordinateMode) { - migrated.state.coordinateMode = 'rows'; + migrated.state.coordinateMode = CONFIG.COORDINATE_MODE; } if (!migrated.state.coordinateDirection) { - migrated.state.coordinateDirection = 'bottom-left'; + migrated.state.coordinateDirection = CONFIG.COORDINATE_DIRECTION; } if (!migrated.state.coordinateSnake) { - migrated.state.coordinateSnake = true; + migrated.state.coordinateSnake = CONFIG.COORDINATE_SNAKE; } if (!migrated.state.blockWidth) { - migrated.state.blockWidth = 6; + migrated.state.blockWidth = CONFIG.COORDINATE_BLOCK_WIDTH; } if (!migrated.state.blockHeight) { - migrated.state.blockHeight = 2; + migrated.state.blockHeight = CONFIG.COORDINATE_BLOCK_HEIGHT; } return migrated; @@ -2533,11 +2538,11 @@ state._lastSavePixelCount = 0; state._lastSaveTime = 0; // Reset coordinate generation settings to their default values - state.coordinateMode = 'rows'; - state.coordinateDirection = 'bottom-left'; - state.coordinateSnake = true; - state.blockWidth = 6; - state.blockHeight = 2; + state.coordinateMode = CONFIG.COORDINATE_MODE; + state.coordinateDirection = CONFIG.COORDINATE_DIRECTION; + state.coordinateSnake = CONFIG.COORDINATE_SNAKE; + state.blockWidth = CONFIG.COORDINATE_BLOCK_WIDTH; + state.blockHeight = CONFIG.COORDINATE_BLOCK_HEIGHT; console.log('📋 Progress and painted map cleared'); return true; } catch (error) { @@ -2678,6 +2683,15 @@ return false; } }, + + updateCoordinateUI({ mode, directionControls, snakeControls, blockControls }) { + const isLinear = mode === 'rows' || mode === 'columns'; + const isBlock = mode === 'blocks' || mode === 'shuffle-blocks'; + + if (directionControls) directionControls.style.display = isLinear ? 'block' : 'none'; + if (snakeControls) snakeControls.style.display = isLinear ? 'block' : 'none'; + if (blockControls) blockControls.style.display = isBlock ? 'block' : 'none'; + }, }; // IMAGE PROCESSOR CLASS @@ -3612,7 +3626,7 @@ @@ -3702,7 +3716,6 @@ -
@@ -3783,6 +3796,25 @@ + +
+ +
+