diff --git a/index.html b/index.html
index 7dbe6e2..fe93ed0 100644
--- a/index.html
+++ b/index.html
@@ -32,12 +32,14 @@
-
+
+
diff --git a/scripts/core/commander.js b/scripts/core/commander.js
index bfb4b05..c517738 100644
--- a/scripts/core/commander.js
+++ b/scripts/core/commander.js
@@ -23,6 +23,7 @@ function Commander(element,element_input)
function run()
{
+ console.log("~ "+queue[0].trim());
active(queue[0].trim());
queue.shift();
@@ -34,7 +35,7 @@ function Commander(element,element_input)
function active(content)
{
var key = content[0];
- var cmd = new Command(content.substring(1).split(" "));
+ var cmd = new Command(content.substring(1).trim().split(" "));
if(ronin.modules[key]){
ronin.modules[key].active(cmd);
diff --git a/scripts/filters/balance.js b/scripts/filters/_balance.js
similarity index 100%
rename from scripts/filters/balance.js
rename to scripts/filters/_balance.js
diff --git a/scripts/filters/chromatic.js b/scripts/filters/_chromatic.js
similarity index 100%
rename from scripts/filters/chromatic.js
rename to scripts/filters/_chromatic.js
diff --git a/scripts/filters/eval.js b/scripts/filters/_eval.js
similarity index 100%
rename from scripts/filters/eval.js
rename to scripts/filters/_eval.js
diff --git a/scripts/filters/offset.js b/scripts/filters/_offset.js
similarity index 100%
rename from scripts/filters/offset.js
rename to scripts/filters/_offset.js
diff --git a/scripts/filters/saturation.js b/scripts/filters/_saturation.js
similarity index 100%
rename from scripts/filters/saturation.js
rename to scripts/filters/_saturation.js
diff --git a/scripts/filters/filter.js b/scripts/filters/filter.js
index 15a4781..df5ab5a 100644
--- a/scripts/filters/filter.js
+++ b/scripts/filters/filter.js
@@ -55,6 +55,6 @@ function Filter()
this.pixels = function()
{
- return this.context().getImageData(0,0,ronin.surface.size.width,ronin.surface.size.height);
+ return ronin.surface.active_layer.context().getImageData(0,0,ronin.surface.size.width * 2,ronin.surface.size.height * 2);
}
}
\ No newline at end of file
diff --git a/scripts/filters/invert.js b/scripts/filters/invert.js
new file mode 100644
index 0000000..2286ab8
--- /dev/null
+++ b/scripts/filters/invert.js
@@ -0,0 +1,26 @@
+function Filter_Invert()
+{
+ Filter.call(this);
+ this.parameters = [Angle];
+
+ this.render = function(cmd)
+ {
+ var imageObj = new Image();
+ imageObj.src = ronin.surface.active_layer.element.toDataURL('image/png');
+
+ var context = ronin.surface.active_layer.context();
+
+ var imageData = context.getImageData(0, 0, imageObj.width * 2, imageObj.height* 2);
+ var data = imageData.data;
+
+ for(var i = 0; i < data.length; i += 4) {
+ data[i] = 255 - data[i];
+ data[i + 1] = 255 - data[i + 1];
+ data[i + 2] = 255 - data[i + 2];
+ }
+
+ ronin.surface.active_layer.clear();
+ context.putImageData(imageData, 0, 0);
+ }
+
+}
\ No newline at end of file
diff --git a/scripts/modules/render.js b/scripts/modules/render.js
index b0b1af9..2826da7 100644
--- a/scripts/modules/render.js
+++ b/scripts/modules/render.js
@@ -7,6 +7,7 @@ function Render(rune)
this.collection["stencil"] = new Filter_Stencil();
this.collection["rotate"] = new Filter_Rotate();
+ this.collection["invert"] = new Filter_Invert();
this.active = function(cmd)
{
diff --git a/scripts/modules/surface.js b/scripts/modules/surface.js
index bcd80ab..953074b 100644
--- a/scripts/modules/surface.js
+++ b/scripts/modules/surface.js
@@ -18,12 +18,14 @@ function Surface(rune)
this.resize(cmd.rect(),cmd.position());
ronin.overlay.resize(cmd.rect());
}
+
if(cmd.color()){
this.context().beginPath();
this.context().rect(0, 0, this.active_layer.element.width, this.active_layer.element.height);
this.context().fillStyle = cmd.color().hex;
this.context().fill();
}
+
if(cmd.bang() && Object.keys(ronin.surface.layers).length > 1){
delete this.layers[this.active_layer.name];
this.select_any_layer();