! keybind, stars command
This commit is contained in:
parent
5b5b25b731
commit
4154c61bd6
|
|
@ -5,12 +5,16 @@ if(enabledMods.includes(variablesMod)) {
|
||||||
commandHelpObject = {
|
commandHelpObject = {
|
||||||
"set": "Sets properties for every pixel of a given type.\nUsage: set [property] [element] [value] <type>\nDon't include framing characters []<>.\nThe element can be \"all\" to set the property for every pixel.\nNote: Strings can't have spaces because spaces are the separator used in the parsing split().\nArguments in [brackets] are required and ones in <angle brackets> are optional.",
|
"set": "Sets properties for every pixel of a given type.\nUsage: set [property] [element] [value] <type>\nDon't include framing characters []<>.\nThe element can be \"all\" to set the property for every pixel.\nNote: Strings can't have spaces because spaces are the separator used in the parsing split().\nArguments in [brackets] are required and ones in <angle brackets> are optional.",
|
||||||
"test": "Test.",
|
"test": "Test.",
|
||||||
"fill": "Fills the screen with the given pixel(s). Usage: fill [Overwrite pixels? (should be a bool)] [element] <additional elements>.\nDon't include framing characters []<>.\nArguments in [brackets] are required and ones in <angle brackets> are optional.\nAdditional elements are separated by spaces.",
|
"fill": "Fills the screen with the given pixel(s). Usage: fill [Overwrite pixels? (bool)] [element] <additional elements>.\nDon't include framing characters []<>.\nArguments in [brackets] are required and ones in <angle brackets> are optional.\nAdditional elements are separated by spaces.",
|
||||||
"randomfill": "Fills the screen with pixels from randomChoices. Usage: randomfill <overwrite pixels? (should be a bool) (default: true)>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional.",
|
"randomfill": "Fills the screen with pixels from randomChoices. Usage: randomfill <overwrite pixels? (bool, default: true)>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional.",
|
||||||
"count": "Tells you the amount of a specified pixel on the screen. Usage: count [element]\nDon't include framing characters []<>.\nArguments in [brackets] are required.",
|
"count": "Tells you the amount of a specified pixel on the screen. Usage: count [element]\nDon't include framing characters []<>.\nArguments in [brackets] are required.",
|
||||||
"countall": "Logs to console a list of all elements on screen and their amounts. Usage: countall.",
|
"countall": "Logs to console a list of all elements on screen and their amounts. Usage: countall.",
|
||||||
"help": "Usage: help <command>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional."
|
"help": "Usage: help <command>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional."
|
||||||
}
|
};
|
||||||
|
|
||||||
|
if(enabledMods.includes("mods/code_library.js")) {
|
||||||
|
commandHelpObject.stars = "Clears the screen and replaces it with random stars. Usage: stars <density (float, default: 0.001)>\nDon't include framing characters <>.\nArguments in <angle brackets> are optional."
|
||||||
|
};
|
||||||
|
|
||||||
function rgbStringToUnvalidatedObject(string) {
|
function rgbStringToUnvalidatedObject(string) {
|
||||||
string = string.split(",");
|
string = string.split(",");
|
||||||
|
|
@ -227,6 +231,7 @@ if(enabledMods.includes(variablesMod)) {
|
||||||
if(pixelMap[i][j].element === inputElement || inputElement === "all") {
|
if(pixelMap[i][j].element === inputElement || inputElement === "all") {
|
||||||
//console.log("Element is a match: " + inputElement + ", " + pixelMap[i][j].element)
|
//console.log("Element is a match: " + inputElement + ", " + pixelMap[i][j].element)
|
||||||
pixelMap[i][j][property] = value;
|
pixelMap[i][j][property] = value;
|
||||||
|
if(property == "temp") { pixelTempCheck(pixelMap[i][j]) };
|
||||||
setCount++;
|
setCount++;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -388,13 +393,73 @@ if(enabledMods.includes(variablesMod)) {
|
||||||
alertIfOutput(alertOutput,"Elements counts logged to console");
|
alertIfOutput(alertOutput,"Elements counts logged to console");
|
||||||
console.log(formattedList);
|
console.log(formattedList);
|
||||||
return listObject;
|
return listObject;
|
||||||
|
case "stars":
|
||||||
|
var starDensity = inputAsArray[1];
|
||||||
|
if(starDensity == undefined) {
|
||||||
|
starDensity = 0.001
|
||||||
|
} else {
|
||||||
|
starDensity = parseFloat(starDensity);
|
||||||
|
if(isNaN(starDensity)) {
|
||||||
|
alert("starDensity was NaN, defaulting to 0.001");
|
||||||
|
starDensity = 0.001;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
if(!enabledMods.includes("mods/code_library.js")) {
|
||||||
|
alert("'stars' command requires 'code_library.js' mod!");
|
||||||
|
} else {
|
||||||
|
clearAll();
|
||||||
|
for(j = 1; j < height; j++) {
|
||||||
|
for(i = 1; i < width; i++) {
|
||||||
|
if(Math.random() < starDensity) {
|
||||||
|
if(isEmpty(i,j,false)) {
|
||||||
|
var value = Math.random() ** 4;
|
||||||
|
|
||||||
|
if(value < 0.3) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(1800,3300);
|
||||||
|
} else if(value < 0.55) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(3300,5500);
|
||||||
|
} else if(value < 0.70) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(5500,8000);
|
||||||
|
} else if(value < 0.8) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(8000,13000);
|
||||||
|
} else if(value < 0.85) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(13000,35000);
|
||||||
|
} else if(value < 0.88) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(35000,90000);
|
||||||
|
} else { //other stuff
|
||||||
|
var value2 = Math.random();
|
||||||
|
if(value2 < 0.15) {
|
||||||
|
var sunPixels = fillCircleReturn("sun",i,j,randomIntegerBetweenTwoValues(2,3));
|
||||||
|
var randTemp = randomIntegerBetweenTwoValues(20000,80000)
|
||||||
|
for(pixel in sunPixels) {
|
||||||
|
sunPixels[pixel].temp = randTemp;
|
||||||
|
};
|
||||||
|
} else if(value2 < 0.45) {
|
||||||
|
var sunPixels = fillCircleReturn("sun",i,j,randomIntegerBetweenTwoValues(3,4));
|
||||||
|
var randTemp = randomIntegerBetweenTwoValues(1800,3300)
|
||||||
|
for(pixel in sunPixels) {
|
||||||
|
sunPixels[pixel].temp = randTemp;
|
||||||
|
};
|
||||||
|
} else if(value2 < 0.75) {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(100000,300000);
|
||||||
|
} else {
|
||||||
|
createPixelReturn("sun",i,j).temp = randomIntegerBetweenTwoValues(100,800);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
break;
|
||||||
case "help":
|
case "help":
|
||||||
if(inputAsArray.length < 1) { //somehow
|
if(inputAsArray.length < 1) { //somehow
|
||||||
alertIfError(alertError,"Usage: help <command>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional.");
|
alertIfError(alertError,"Usage: help <command>\nDon't include framing characters []<>.\nArguments in <angle brackets> are optional.");
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
if(inputAsArray.length < 2) {
|
if(inputAsArray.length < 2) {
|
||||||
alertOutput ? alertIfOutput(alertOutput,"Commands: \nset\ntest\nfill\nrandomfill\ncount\ncountall\nhelp") : console.log("Commands: set, test, fill, randomfill, count, countall, help");
|
alertOutput ? alertIfOutput(alertOutput,"Commands: " + Object.keys(commandHelpObject).join("\n")) : console.log("Commands: " + Object.keys(commandHelpObject).join(", "));
|
||||||
} else {
|
} else {
|
||||||
var command = inputAsArray[1];
|
var command = inputAsArray[1];
|
||||||
|
|
||||||
|
|
@ -412,6 +477,13 @@ if(enabledMods.includes(variablesMod)) {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
document.addEventListener("keydown", function(e) { //prop prompt listener
|
||||||
|
// , = propPrompt()
|
||||||
|
if (e.keyCode == 49) { //!
|
||||||
|
if(shiftDown) { funniPrompt() };
|
||||||
|
};
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
alert(`The ${variablesMod} mod is required and has been automatically inserted (reload for this to take effect).`)
|
alert(`The ${variablesMod} mod is required and has been automatically inserted (reload for this to take effect).`)
|
||||||
enabledMods.splice(enabledMods.indexOf(modName),0,variablesMod)
|
enabledMods.splice(enabledMods.indexOf(modName),0,variablesMod)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue