summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/rectangles/engine
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/javascripts/rectangles/engine')
-rw-r--r--public/assets/javascripts/rectangles/engine/rooms/_walls.js15
-rw-r--r--public/assets/javascripts/rectangles/engine/rooms/mover.js5
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/undo.js28
3 files changed, 38 insertions, 10 deletions
diff --git a/public/assets/javascripts/rectangles/engine/rooms/_walls.js b/public/assets/javascripts/rectangles/engine/rooms/_walls.js
index 25b1c58..04d0594 100644
--- a/public/assets/javascripts/rectangles/engine/rooms/_walls.js
+++ b/public/assets/javascripts/rectangles/engine/rooms/_walls.js
@@ -40,12 +40,17 @@
base.colors = {}
base.init = function(){
- base.colors = {
- wall: app.defaults.colors.wall.slice(),
- outline: app.defaults.colors.outline.slice(),
- floor: app.defaults.colors.floor.slice(),
- ceiling: app.defaults.colors.ceiling.slice(),
+ base.colors = base.copyColors( app.defaults.colors )
+ }
+
+ base.copyColors = function(colors){
+ var copy = {
+ wall: colors.wall.slice(),
+ outline: colors.outline.slice(),
+ floor: colors.floor.slice(),
+ ceiling: colors.ceiling.slice(),
}
+ return copy
}
base.first = function(){
diff --git a/public/assets/javascripts/rectangles/engine/rooms/mover.js b/public/assets/javascripts/rectangles/engine/rooms/mover.js
index 5682be8..ac27aba 100644
--- a/public/assets/javascripts/rectangles/engine/rooms/mover.js
+++ b/public/assets/javascripts/rectangles/engine/rooms/mover.js
@@ -117,7 +117,6 @@ Rooms.mover = new function(){
wall.get_points(wall_vec)
-
t = perp(origins, wall_vec) / ( perp(cursor_copy, wall_vec) || 0.0000001 )
if ( min_t < t || t < 0 || 1 < t ) return
@@ -240,13 +239,13 @@ Rooms.mover = new function(){
wall_vec.normalize = function(){
var carry
if (this.x.a > this.y.a) {
- console.log("SWAP X")
+// console.log("SWAP X")
carry = this.x.a
this.x.a = this.y.a
this.y.a = carry
}
if (this.x.b > this.y.b) {
- console.log("SWAP Y")
+// console.log("SWAP Y")
carry = this.x.b
this.x.b = this.y.b
this.y.b = carry
diff --git a/public/assets/javascripts/rectangles/engine/scenery/undo.js b/public/assets/javascripts/rectangles/engine/scenery/undo.js
index ff4f911..52a57d9 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/undo.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/undo.js
@@ -114,7 +114,32 @@
undo: function(state){
var wall = Walls.lookup[state.id]
wall.deserialize(state)
-
+ Minotaur.watch( app.router.editorView.settings )
+ },
+ },
+ {
+ type: "update-all-wallpaper",
+ undo: function(state){
+ Walls.deserialize(state)
+ Minotaur.watch( app.router.editorView.settings )
+ },
+ },
+ {
+ type: "choose-preset",
+ undo: function(state){
+ app.controller.colorControl.load(state.colors)
+ Walls.deserialize(state.walls)
+ Minotaur.watch( app.router.editorView.settings )
+ },
+ redo: function(state){
+ app.controller.presets.loadByName(state)
+ Minotaur.watch( app.router.editorView.settings )
+ },
+ },
+ {
+ type: "choose-another-preset",
+ undo: function(state){
+ app.controller.presets.loadByName(state)
Minotaur.watch( app.router.editorView.settings )
},
},
@@ -123,7 +148,6 @@
undo: function(state){
Walls.setColor[ state.mode ]( state.rgb )
app.router.editorView.colorControl.setSwatchColor( state.mode, state.rgb )
-
Minotaur.watch( app.router.editorView.settings )
},
},