Fix lightmap save loading, and rgbToArray function
This commit is contained in:
parent
3fcda9962e
commit
53622b58b1
|
|
@ -19,8 +19,40 @@ function getRandomElement(arr) {
|
|||
return arr[Math.floor(Math.random() * arr.length)];
|
||||
}
|
||||
|
||||
function rgbToArray(rgbString) {
|
||||
return rgbString.slice(4, -1).split(',').map(val => parseInt(val.trim()));
|
||||
if (!rgbToArray) {
|
||||
function rgbToArray(colorString) {
|
||||
if (typeof colorString !== 'string') {
|
||||
console.error('Invalid colorString:', colorString);
|
||||
return null;
|
||||
}
|
||||
|
||||
if (colorString.startsWith('rgb')) {
|
||||
// Handle RGB format
|
||||
return colorString.slice(4, -1).split(',').map(val => parseInt(val.trim()));
|
||||
} else if (colorString.startsWith('#')) {
|
||||
// Handle HEX format
|
||||
let hex = colorString.slice(1);
|
||||
|
||||
// Handle shorthand hex (e.g., #03F)
|
||||
if (hex.length === 3) {
|
||||
hex = hex.split('').map(char => char + char).join('');
|
||||
}
|
||||
|
||||
if (hex.length !== 6) {
|
||||
console.error('Invalid hex color:', colorString);
|
||||
return null;
|
||||
}
|
||||
|
||||
const r = parseInt(hex.slice(0, 2), 16);
|
||||
const g = parseInt(hex.slice(2, 4), 16);
|
||||
const b = parseInt(hex.slice(4, 6), 16);
|
||||
|
||||
return [r, g, b];
|
||||
} else {
|
||||
console.error('Invalid color format:', colorString);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function scaleList(numbers, scale) {
|
||||
|
|
@ -290,6 +322,12 @@ radioactiveElements.forEach(element => {
|
|||
|
||||
window.addEventListener('load', () => initializeLightmap(width, height));
|
||||
|
||||
var originalResizeCanvas = resizeCanvas;
|
||||
resizeCanvas = function(newHeight, newWidth, newPixelSize, clear) {
|
||||
originalResizeCanvas(newHeight, newWidth, newPixelSize, clear);
|
||||
initializeLightmap(newHeight, newWidth);
|
||||
};
|
||||
|
||||
var originalTick = tick;
|
||||
tick = function() {
|
||||
originalTick();
|
||||
|
|
|
|||
Loading…
Reference in New Issue