New command: countall

* Takes no arguments
* Logs to console a list of elements present and their amounts (pixels)

Example output:
> emerald: 675
> diamond: 2031
> gold_coin: 2026
> amethyst: 461
> sapphire: 426
> ruby: 457
> pearl: 268
> onyx: 348
> cumin: 418
This commit is contained in:
O-01-67 2022-09-01 13:05:53 -04:00 committed by GitHub
parent 9a1f8c2010
commit 5f7fe007b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 29 additions and 1 deletions

View File

@ -281,8 +281,36 @@ function funniPrompt() {
};
alert(`There are ${count} pixels of ${inputElement}`);
break;
case "countall":
var listObject = {};
//Listing code;
for (var i = 1; i < width; i++) {
for (var j = 1; j < height; j++) {
if (!isEmpty(i,j)) {
var pixel = pixelMap[i][j];
var element = pixel.element;
if(!listObject[pixel.element]) {
listObject[pixel.element] = 1;
} else {
listObject[pixel.element]++;
}
};
};
};
var formattedList = "";
var elements = Object.keys(listObject);
for(k = 0; k < elements.length; k++) {
var elementName = elements[k];
var elementCount = listObject[elementName];
formattedList += `${elementName}: ${elementCount}\n`;
};
alert("Elements counts logged to console");
console.log(formattedList);
break;
default:
alert(`Command ${firstItem} not found!`);
};
};