Merge branch 'R74nCom:main' into main

This commit is contained in:
JustAGenericUsername 2024-05-16 17:03:34 -04:00 committed by GitHub
commit 8df0c21942
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 127 additions and 72 deletions

View File

@ -91,7 +91,7 @@ A fancier version of this changelog can be found here: https://sandboxels.R74n.c
~ Fixed: Gaps when drawing fast on mobile
~ Fixed: Middle clicking empty space causes freeze
~ Fixed: Bless and Rock Wall can't be drawn in a line
~ Fixed: Gapes when drawing Bless and Rock Wall fast
~ Fixed: Gaps when drawing Bless and Rock Wall fast
~ Fixed: Bless and Rock Wall don't display info
~ Fixed: Bless and Rock Wall can't use Replace Mode
~ Fixed: Brown Dwarf Suns can emit Light when eclipsed

View File

@ -13087,7 +13087,7 @@ behaviorRules = {
function circleCoords(x,y,radius) {
var coords = [];
for (let i = Math.max(0, x - radius); i <= Math.min(width, x + radius); i++) {
for (let j = Math.max(0, y - radius); j <= Math.min(width, y + radius); j++) {
for (let j = Math.max(0, y - radius); j <= Math.min(height, y + radius); j++) {
if (Math.pow(i - x, 2) + Math.pow(j - y, 2) <= Math.pow(radius, 2)) {
coords.push({x: i,y: j});
}
@ -15492,6 +15492,7 @@ window.onload = function() {
function autoGen(newname,element,autoType) {
var autoInfo = autoElements[autoType];
var newcolor = elements[element].colorObject;
if (!newcolor) { newcolor = {r:255,g:255,b:255} };
var colorList = [];
var colorObjectList = [];
// if newcolor is not an array, put it in an array

View File

@ -136,6 +136,7 @@
<tr><td>elementsManager.js</td><td>Create and edit custom elements</td><td>ggod</td></tr>
<tr><td>evenmoretemptools.js</td><td>Adds different temperature-modifying tools (±350/tick, NaN, and Infinity)</td><td>Alice</td></tr>
<tr><td>extra_element_info.js</td><td>Adds descriptions to various vanilla elements. Used to provide the functionality that desc now does before it was added to vanilla</td><td>Melecie</td></tr>
<tr><td>extrasaveslots.js</td><td>Adds extra saves slots !SAVE IMPORTANT SAVES AS FILES!</td><td>Jayd</td></tr>
<tr><td>find.js</td><td>Adds a find mode that highlights a chosen element as pulsating red and yellow <a href="https://github.com/R74nCom/sandboxels/commit/de0dc088ab4d928c77587b9d0e3a7d7663e3f94a">(read commit description)</a></td><td>Alice</td></tr>
<tr><td>jaydsfunctions.js</td><td>Adds extra tools</td><td>Jayd</td></tr>
<tr><td>insane_random_events.js</td><td>Massively buffs random events</td><td>Alice</td></tr>
@ -144,6 +145,7 @@
<tr><td>moretools.js</td><td>Adds more temperature-modifying tools (±10/tick, ±50/tick, and absolute zero tools)</td><td>Sightnado</td></tr>
<tr><td>move_tools.js</td><td>Adds tools that move pixels</td><td>Alice</td></tr>
<tr><td>noconfirm.js</td><td>Removes all confirmation pop ups</td><td>mollthecoder</td></tr>
<tr><td>nopixellimit.js</td><td>Removes the pixel limit</td><td>Jayd</td></tr>
<tr><td>page_color.js</td><td>Allows changing the background color outside of the canvas with the “pageColor” query parameter</td><td>Alice</td></tr>
<tr><td>pixelResizeTool.js</td><td>Adds a button to change pixel scale</td><td>feeshmaster</td></tr>
<tr><td>prompt.js</td><td>Adds a primitive command console</td><td>Alice</td></tr>
@ -388,4 +390,4 @@
</body>
</html>
</html>

View File

@ -127,7 +127,7 @@ elements.petrified_wood = {
elements.skull = {
color: "#d9d9d9",
hidden:true,
behavior: behaviors.SUPPORT,
behavior: behaviors.POWDER,
reactions: {
"water": { elem2:"broth", tempMin:70, color2:"#d7db69" },
"salt_water": { elem2:"broth", tempMin:70, color2:"#d7db69" },
@ -159,7 +159,31 @@ elements.skull = {
breakInto: ["quicklime","bone","bone","bone_marrow"]
},
elements.coal = {
color: "#2b2b2b",
behavior: behaviors.STURDYPOWDER,
reactions: {
"water": { elem2:"dirty_water", chance:0.02 },
"salt_water": { elem2:"dirty_water", chance:0.02 },
"sugar_water": { elem2:"dirty_water", chance:0.02 },
"seltzer": { elem2:"dirty_water", chance:0.02 },
"dead_plant": { elem2:["coal","charcoal"], tempMin:200, chance:0.005, oneway:true },
"charcoal": { elem2:"coal", tempMin:200, chance:0.005, oneway:true },
},
burn: 28,
burnTime: 1500,
burnInto: ["fire","fire","fire","fire","ash","carbon_dioxide"],
tempHigh: 6000,
stateHigh: "fire",
category: "powders",
state: "solid",
density: 250,
breakInto: ["ash","ash","carbon_dioxide"],
hardness: 0.5,
},
elements.bug_amber = {
color: "#ffc000",
temp: 20,
tempHigh: 345,
stateHigh: ["smoke","sap","sap","calcium","sugar"],
@ -167,12 +191,22 @@ elements.bug_amber = {
category: "solids"
},
elements.hive_amber = {
color: "#ffc000",
temp: 20,
tempHigh: 345,
stateHigh: ["smoke","honey","honey","calcium","sugar"],
breakInto: [null,"dna","dna","honey","honey","honey","honey","honey","sap","dead_bug",null,"dna","dna","honey","honey","honey","honey","honey","sap","dead_bug","bee"],
category: "solids"
},
elements.head.breakInto = ["blood","meat","skull"]
elements.dead_bug.breakInto = ["calcium","calcium","calcium","quicklime"]
if (!elements.sap.reactions) { elements.sap.reactions = {} }
elements.sap.reactions.dead_bug = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.hive = { elem1:null, elem2:"hive_amber", chance:0.01 };
elements.sap.reactions.ant = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.fly = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.flea = { elem1:"bug_amber", elem2:null, chance:0.1 };
@ -181,81 +215,99 @@ if (!elements.sap.reactions) { elements.sap.reactions = {} }
elements.sap.reactions.bee = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.firefly = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.stinkbug = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.slug = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.snail = { elem1:"bug_amber", elem2:null, chance:0.1 };
elements.sap.reactions.slug = { elem1:"bug_amber", elem2:null, chance:0.08 };
elements.sap.reactions.snail = { elem1:"bug_amber", elem2:null, chance:0.05 };
if (!elements.bone.reactions) { elements.bone.reactions = {} }
elements.bone.reactions.rock = { "elem1": "fossil", chance:0.00005 };
elements.bone.reactions.sand = { "elem1": "fossil", chance:0.000035 };
elements.bone.reactions.dirt = { "elem1": "fossil", chance:0.00003 };
elements.bone.reactions.tuff = { "elem1": "fossil", chance:0.00005 };
elements.bone.reactions.basalt = { "elem1": "fossil", chance:0.00004 };
elements.bone.reactions.mudstone = { "elem1": "fossil", chance:0.00004 };
elements.bone.reactions.packed_sand = { "elem1": "fossil", chance:0.00004 };
elements.bone.reactions.gravel = { "elem1": "fossil", chance:0.000035 };
elements.bone.reactions.clay = { "elem1": "fossil", chance:0.00003 };
elements.bone.reactions.clay_soil = { "elem1": "fossil", chance:0.00003 };
elements.bone.reactions.permafrost = { "elem1": "fossil", chance:0.000035 };
elements.bone.reactions.mulch = { "elem1": "fossil", chance:0.00003 };
elements.bone.reactions.ant_wall = { "elem1": "fossil", chance:0.00002 };
elements.bone.reactions.limestone = { "elem1": "fossil", chance:0.00005 };
elements.bone.reactions.quicklime = { "elem1": "fossil", chance:0.000045 };
elements.bone.reactions.slaked_lime = { "elem1": "fossil", chance:0.000035 };
elements.bone.reactions.rock = { "elem1": "fossil", tempMin:60, chance:0.00005 };
elements.bone.reactions.sand = { "elem1": "fossil", tempMin:60, chance:0.000035 };
elements.bone.reactions.dirt = { "elem1": "fossil", tempMin:60, chance:0.00003 };
elements.bone.reactions.tuff = { "elem1": "fossil", tempMin:60, chance:0.00005 };
elements.bone.reactions.basalt = { "elem1": "fossil", tempMin:60, chance:0.00004 };
elements.bone.reactions.mudstone = { "elem1": "fossil", tempMin:60, chance:0.00004 };
elements.bone.reactions.packed_sand = { "elem1": "fossil", tempMin:60, chance:0.00004 };
elements.bone.reactions.gravel = { "elem1": "fossil", tempMin:60, chance:0.000035 };
elements.bone.reactions.clay = { "elem1": "fossil", tempMin:60, chance:0.00003 };
elements.bone.reactions.clay_soil = { "elem1": "fossil", tempMin:60, chance:0.00003 };
elements.bone.reactions.mulch = { "elem1": "fossil", tempMin:60, chance:0.00003 };
elements.bone.reactions.ant_wall = { "elem1": "fossil", tempMin:60, chance:0.00002 };
elements.bone.reactions.limestone = { "elem1": "fossil", tempMin:60, chance:0.00005 };
elements.bone.reactions.quicklime = { "elem1": "fossil", tempMin:60, chance:0.000045 };
elements.bone.reactions.slaked_lime = { "elem1": "fossil", tempMin:60, chance:0.000035 };
if (!elements.bone_marrow.reactions) { elements.bone_marrow.reactions = {} }
elements.bone_marrow.reactions.rock = { "elem1": "marrow_fossil", chance:0.00005 };
elements.bone_marrow.reactions.sand = { "elem1": "marrow_fossil", chance:0.000035 };
elements.bone_marrow.reactions.dirt = { "elem1": "marrow_fossil", chance:0.00003 };
elements.bone_marrow.reactions.tuff = { "elem1": "marrow_fossil", chance:0.00005 };
elements.bone_marrow.reactions.basalt = { "elem1": "marrow_fossil", chance:0.00004 };
elements.bone_marrow.reactions.mudstone = { "elem1": "marrow_fossil", chance:0.00004 };
elements.bone_marrow.reactions.packed_sand = { "elem1": "marrow_fossil", chance:0.00004 };
elements.bone_marrow.reactions.gravel = { "elem1": "marrow_fossil", chance:0.000035 };
elements.bone_marrow.reactions.clay = { "elem1": "marrow_fossil", chance:0.00003 };
elements.bone_marrow.reactions.clay_soil = { "elem1": "marrow_fossil", chance:0.00003 };
elements.bone_marrow.reactions.permafrost = { "elem1": "marrow_fossil", chance:0.000035 };
elements.bone_marrow.reactions.mulch = { "elem1": "marrow_fossil", chance:0.00003 };
elements.bone_marrow.reactions.ant_wall = { "elem1": "marrow_fossil", chance:0.00002 };
elements.bone_marrow.reactions.limestone = { "elem1": "marrow_fossil", chance:0.00005 };
elements.bone_marrow.reactions.quicklime = { "elem1": "marrow_fossil", chance:0.000045 };
elements.bone_marrow.reactions.slaked_lime = { "elem1": "marrow_fossil", chance:0.000035 };
elements.bone_marrow.reactions.rock = { "elem1": "marrow_fossil", tempMin:70, chance:0.00005 };
elements.bone_marrow.reactions.sand = { "elem1": "marrow_fossil", tempMin:70, chance:0.000035 };
elements.bone_marrow.reactions.dirt = { "elem1": "marrow_fossil", tempMin:70, chance:0.0003 };
elements.bone_marrow.reactions.tuff = { "elem1": "marrow_fossil", tempMin:70, chance:0.00005 };
elements.bone_marrow.reactions.basalt = { "elem1": "marrow_fossil", tempMin:70, chance:0.00004 };
elements.bone_marrow.reactions.mudstone = { "elem1": "marrow_fossil", tempMin:70, chance:0.00004 };
elements.bone_marrow.reactions.packed_sand = { "elem1": "marrow_fossil", tempMin:70, chance:0.00004 };
elements.bone_marrow.reactions.gravel = { "elem1": "marrow_fossil", tempMin:70, chance:0.000035 };
elements.bone_marrow.reactions.clay = { "elem1": "marrow_fossil", tempMin:70, chance:0.00003 };
elements.bone_marrow.reactions.clay_soil = { "elem1": "marrow_fossil", tempMin:70, chance:0.00003 }
elements.bone_marrow.reactions.mulch = { "elem1": "marrow_fossil", tempMin:70, chance:0.00003 };
elements.bone_marrow.reactions.ant_wall = { "elem1": "marrow_fossil", tempMin:70, chance:0.00002 };
elements.bone_marrow.reactions.limestone = { "elem1": "marrow_fossil", tempMin:70, chance:0.00005 };
elements.bone_marrow.reactions.quicklime = { "elem1": "marrow_fossil", tempMin:70, chance:0.000045 };
elements.bone_marrow.reactions.slaked_lime = { "elem1": "marrow_fossil", tempMin:70, chance:0.000035 };
if (!elements.wood.reactions) { elements.wood.reactions = {} }
elements.wood.reactions.rock = { "elem1": "petrified_wood", chance:0.000045 };
elements.wood.reactions.sand = { "elem1": "petrified_wood", chance:0.00003 };
elements.wood.reactions.dirt = { "elem1": "petrified_wood", chance:0.000025 };
elements.wood.reactions.tuff = { "elem1": "petrified_wood", chance:0.000045 };
elements.wood.reactions.basalt = { "elem1": "petrified_wood", chance:0.000035 };
elements.wood.reactions.mudstone = { "elem1": "petrified_wood", chance:0.000035 };
elements.wood.reactions.packed_sand = { "elem1": "petrified_wood", chance:0.000035 };
elements.wood.reactions.gravel = { "elem1": "petrified_wood", chance:0.00003 };
elements.wood.reactions.clay = { "elem1": "petrified_wood", chance:0.000025 };
elements.wood.reactions.clay_soil = { "elem1": "petrified_wood", chance:0.000025 };
elements.wood.reactions.permafrost = { "elem1": "petrified_wood", chance:0.00003 };
elements.wood.reactions.mulch = { "elem1": "petrified_wood", chance:0.000025 };
elements.wood.reactions.ant_wall = { "elem1": "petrified_wood", chance:0.000015 };
elements.wood.reactions.limestone = { "elem1": "petrified_wood", chance:0.000045 };
elements.wood.reactions.quicklime = { "elem1": "petrified_wood", chance:0.00004 };
elements.wood.reactions.slaked_lime = { "elem1": "petrified_wood", chance:0.00003 };
elements.wood.reactions.rock = { "elem1": "petrified_wood", tempMin:50, tempMax:279, chance:0.000045 };
elements.wood.reactions.rock = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000045 };
elements.wood.reactions.sand = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000035 };
elements.wood.reactions.dirt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00003 };
elements.wood.reactions.tuff = { "elem1": "petrified_wood", tempMin:50, chance:0.000045 };
elements.wood.reactions.basalt = { "elem1": "petrified_wood", tempMin:50, tempMax:279, chance:0.000035 };
elements.wood.reactions.basalt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000035 };
elements.wood.reactions.mudstone = { "elem1": "petrified_wood", tempMin:50, chance:0.000035 };
elements.wood.reactions.packed_sand = { "elem1": "petrified_wood", tempMin:50, chance:0.000035 };
elements.wood.reactions.gravel = { "elem1": "petrified_wood", tempMin:50, chance:0.00003 };
elements.wood.reactions.clay = { "elem1": "petrified_wood", tempMin:50, chance:0.000025 };
elements.wood.reactions.clay_soil = { "elem1": "petrified_wood", tempMin:50, chance:0.000025 }
elements.wood.reactions.mulch = { "elem1": "petrified_wood", tempMin:50, chance:0.000025 };
elements.wood.reactions.ant_wall = { "elem1": "petrified_wood", tempMin:50, chance:0.000015 };
elements.wood.reactions.limestone = { "elem1": "petrified_wood", tempMin:50, chance:0.000045 };
elements.wood.reactions.quicklime = { "elem1": "petrified_wood", tempMin:50, chance:0.00004 };
elements.wood.reactions.slaked_lime = { "elem1": "petrified_wood", tempMin:50, chance:0.00003 };
if (!elements.tree_branch.reactions) { elements.tree_branch.reactions = {} }
elements.tree_branch.reactions.rock = { "elem1": "petrified_wood", chance:0.00005 };
elements.tree_branch.reactions.sand = { "elem1": "petrified_wood", chance:0.000035 };
elements.tree_branch.reactions.dirt = { "elem1": "petrified_wood", chance:0.00003 };
elements.tree_branch.reactions.tuff = { "elem1": "petrified_wood", chance:0.00005 };
elements.tree_branch.reactions.basalt = { "elem1": "petrified_wood", chance:0.00004 };
elements.tree_branch.reactions.mudstone = { "elem1": "petrified_wood", chance:0.00004 };
elements.tree_branch.reactions.packed_sand = { "elem1": "petrified_wood", chance:0.00004 };
elements.tree_branch.reactions.gravel = { "elem1": "petrified_wood", chance:0.000035 };
elements.tree_branch.reactions.clay = { "elem1": "petrified_wood", chance:0.00003 };
elements.tree_branch.reactions.clay_soil = { "elem1": "petrified_wood", chance:0.00003 };
elements.tree_branch.reactions.permafrost = { "elem1": "petrified_wood", chance:0.000035 };
elements.tree_branch.reactions.mulch = { "elem1": "petrified_wood", chance:0.00003 };
elements.tree_branch.reactions.ant_wall = { "elem1": "petrified_wood", chance:0.00002 };
elements.tree_branch.reactions.limestone = { "elem1": "petrified_wood", chance:0.00005 };
elements.tree_branch.reactions.quicklime = { "elem1": "petrified_wood", chance:0.000045 };
elements.tree_branch.reactions.slaked_lime = { "elem1": "petrified_wood", chance:0.000035 };
elements.tree_branch.reactions.rock = { "elem1": "petrified_wood", tempMin:50, tempMax:279, chance:0.00005 };
elements.tree_branch.reactions.rock = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00005 };
elements.tree_branch.reactions.sand = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00003 };
elements.tree_branch.reactions.dirt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.tree_branch.reactions.tuff = { "elem1": "petrified_wood", tempMin:50, chance:0.00005 };
elements.tree_branch.reactions.basalt = { "elem1": "petrified_wood", tempMin:50, tempMax:279, chance:0.00004 };
elements.tree_branch.reactions.basalt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00004 };
elements.tree_branch.reactions.mudstone = { "elem1": "petrified_wood", tempMin:50, chance:0.00004 };
elements.tree_branch.reactions.packed_sand = { "elem1": "petrified_wood", tempMin:50, chance:0.00004 };
elements.tree_branch.reactions.gravel = { "elem1": "petrified_wood", tempMin:50, chance:0.000035 };
elements.tree_branch.reactions.clay = { "elem1": "petrified_wood", tempMin:50, chance:0.00003 };
elements.tree_branch.reactions.clay_soil = { "elem1": "petrified_wood", tempMin:50, chance:0.00003 }
elements.tree_branch.reactions.mulch = { "elem1": "petrified_wood", tempMin:50, chance:0.00003 };
elements.tree_branch.reactions.ant_wall = { "elem1": "petrified_wood", tempMin:50, chance:0.00002 };
elements.tree_branch.reactions.limestone = { "elem1": "petrified_wood", tempMin:50, chance:0.00005 };
elements.tree_branch.reactions.quicklime = { "elem1": "petrified_wood", tempMin:50, chance:0.000045 };
elements.tree_branch.reactions.slaked_lime = { "elem1": "petrified_wood", tempMin:50, chance:0.000035 };
if (!elements.dead_plant.reactions) { elements.dead_plant.reactions = {} }
elements.dead_plant.reactions.rock = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00005 };
elements.dead_plant.reactions.sand = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.dirt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.tuff = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.basalt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00005 };
elements.dead_plant.reactions.basalt = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.mudstone = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.packed_sand = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.00003 };
elements.dead_plant.reactions.gravel = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.clay = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.clay_soil = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.mulch = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.ant_wall = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.limestone = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000035 };
elements.dead_plant.reactions.quicklime = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };
elements.dead_plant.reactions.slaked_lime = { "elem1": ["oil","oil","methane","coal","coal","coal","coal"], tempMin:280, chance:0.000025 };

View File

@ -1,2 +1,2 @@
maxPixelCount = settings.maxpixels || 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000;
if (settings.maxpixels === 0) { maxPixelCount = 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000; }
maxPixelCount = settings.maxpixels || Number.MAX_VALUE;
if (settings.maxpixels === 0) { maxPixelCount = Number.MAX_VALUE; }