diff --git a/mod-list.html b/mod-list.html
index 1878a711..683ca4f8 100644
--- a/mod-list.html
+++ b/mod-list.html
@@ -161,7 +161,6 @@
| moretools.js | Adds more temperature-modifying tools (±10/tick, ±50/tick, and absolute zero tools) | Sightnado |
| move_tools.js | Adds tools that move pixels | Alice |
| noconfirm.js | Removes all confirmation pop ups | mollthecoder |
-| nopixellimit.js | Removes the pixel limit | Jayd |
| page_color.js | Allows changing the background color outside of the canvas with the “pageColor” query parameter | Alice |
| pixelResizeTool.js | Adds a button to change pixel scale | feeshmaster |
| prompt.js | Adds a primitive command console | Alice |
@@ -334,13 +333,14 @@
| heatglow.js | Red glowing effect for hot metals | nousernamefound |
| invisible_dye.js | Adds elements like Dye and Spray Paint that take the color of the background | Alice |
| invisible_wall.js | Adds an element like Wall that takes the color of the background | Alice |
+| lightmap.js | Makes light sources glow | RedBirdly |
| moreViews.js | Many new rendering modes | ggod |
| onecolor.js | Makes all placed pixels single-colored | nousernamefound |
| paint_event.js | Adds a random event that randomly paints a circle | Alice |
| rainbow_tests.js | Adds variants of the rainbow element with different maths | Alice |
+| shader_by_jayd.js | Adds a glow around light elements | Jayd |
| Shroomboxels.js | A variant of acid_and_shapes.js that uses a different trigonometric function | Alice |
| singleColor.js | Makes all elements pick one color each time they're drawn | stefanblox |
-| lightmap.js | Makes light sources glow | RedBirdly |
| Compilations |
| a_mod_by_alice.js | A mod combining most of Alice’s mods, and some other things | Alice |
@@ -382,6 +382,7 @@
| humans.js | Adds humans. Now part of the base game | R74n |
| unhide.js | Unhides all elements except molten ones. (This functionality now exists as a vanilla setting) | R74n |
| wheel_fix.js | Attempts to fix the brush scaling too much with the mouse wheel for some people. Deprecated | Nubo318 |
+| nopixellimit.js | Removes the pixel limit. (now a setting) | Jayd |
diff --git a/mods/shader_by_jayd.js b/mods/shader_by_jayd.js
new file mode 100644
index 00000000..9826cb1c
--- /dev/null
+++ b/mods/shader_by_jayd.js
@@ -0,0 +1,154 @@
+elements.shader_test = {
+ color: "#FFFFFF",
+ category: "special",
+ renderer: function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,"#ffffff",x,y,1,0.25)
+ }
+ }
+}
+elements.fire.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.cold_fire.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.light.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 2);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.75)
+ }
+}
+elements.laser.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 2);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.75)
+ }
+}
+elements.plasma.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.5)
+ }
+}
+elements.electric.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 2);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.heat_ray.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.freeze_ray.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.flash.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.7)
+ }
+}
+elements.smoke.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 2);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.radiation.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 2);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ drawSquare(ctx,pixel.color,x,y,1,0.25)
+ }
+}
+elements.led_r.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ if (pixel.charge) {
+ drawSquare(ctx,pixel.color,x,y,1,0.5)
+ }
+ else {
+ drawSquare(ctx,pixel.color,pixel.x,pixel.y,1,1)
+ }
+ }
+}
+elements.led_g.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ if (pixel.charge) {
+ drawSquare(ctx,pixel.color,x,y,1,0.5)
+ }
+ else {
+ drawSquare(ctx,pixel.color,pixel.x,pixel.y,1,1)
+ }
+ }
+}
+elements.led_b.renderer = function(pixel,ctx) {
+ var circlec = circleCoords(pixel.x, pixel.y, 3);
+ for (var i = 0; i < circlec.length; i++){
+ var coord = circlec[i];
+ var x = coord.x;
+ var y = coord.y;
+ if (pixel.charge) {
+ drawSquare(ctx,pixel.color,x,y,1,0.5)
+ }
+ else {
+ drawSquare(ctx,pixel.color,pixel.x,pixel.y,1,1)
+ }
+ }
+}