2024-09-07 00:58:35 -04:00
|
|
|
function shade(ctx, color, x1, y1, radius=3, opacity) {
|
|
|
|
|
var offsetCorrection = 0;
|
|
|
|
|
if (pixelSize === 8){
|
|
|
|
|
offsetCorrection = 4;
|
|
|
|
|
}
|
|
|
|
|
else if (pixelSize === 6){
|
|
|
|
|
offsetCorrection = 3;
|
|
|
|
|
}
|
|
|
|
|
else if (pixelSize === 4){
|
|
|
|
|
offsetCorrection = 2;
|
|
|
|
|
}
|
|
|
|
|
ctx.beginPath();
|
|
|
|
|
ctx.arc(x1*pixelSize+offsetCorrection, y1*pixelSize+offsetCorrection, radius*pixelSize, 0, 2 * Math.PI, false);
|
|
|
|
|
ctx.fillStyle = color;
|
|
|
|
|
ctx.globalAlpha = opacity;
|
|
|
|
|
ctx.fill();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
elements.shader_test = {
|
|
|
|
|
color: "#FFFFFF",
|
|
|
|
|
category: "special",
|
|
|
|
|
renderer: function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
elements.fire.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.cold_fire.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.light.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 2, 0.75)
|
|
|
|
|
}
|
|
|
|
|
elements.laser.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 2, 0.75)
|
|
|
|
|
}
|
|
|
|
|
elements.plasma.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
}
|
|
|
|
|
elements.electric.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 2, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.heat_ray.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.freeze_ray.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.flash.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.7)
|
|
|
|
|
}
|
|
|
|
|
elements.smoke.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 2, 0.25)
|
|
|
|
|
}
|
|
|
|
|
elements.radiation.renderer = function(pixel,ctx) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 2, 0.25)
|
|
|
|
|
}
|
2025-12-18 16:22:56 -05:00
|
|
|
elements.led.renderer = function(pixel,ctx) {
|
2024-09-07 00:58:35 -04:00
|
|
|
if (pixel.charge) {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
shade(ctx, pixel.color, pixel.x, pixel.y, 0, 1)
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-12-18 16:22:56 -05:00
|
|
|
// elements.led_r.renderer = function(pixel,ctx) {
|
|
|
|
|
// if (pixel.charge) {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
// }
|
|
|
|
|
// else {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 0, 1)
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// elements.led_g.renderer = function(pixel,ctx) {
|
|
|
|
|
// if (pixel.charge) {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
// }
|
|
|
|
|
// else {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 0, 1)
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// elements.led_b.renderer = function(pixel,ctx) {
|
|
|
|
|
// if (pixel.charge) {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 3, 0.5)
|
|
|
|
|
// }
|
|
|
|
|
// else {
|
|
|
|
|
// shade(ctx, pixel.color, pixel.x, pixel.y, 0, 1)
|
|
|
|
|
// }
|
|
|
|
|
// }
|