summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulie Lala <jules@okfoc.us>2014-04-27 03:32:06 -0400
committerJulie Lala <jules@okfoc.us>2014-04-27 03:32:19 -0400
commit64cc8f43ee3b69a4ca8d6080c00dae69f72f0f9f (patch)
treedf77a7ec395a8f2ec3cd7195d4b796c3f05226ba
parent02dd0344889f45701021e86efef8d04b56175047 (diff)
color all wall-sets
-rw-r--r--assets/javascripts/rectangles/engine/builder.js5
-rw-r--r--assets/javascripts/rectangles/models/room.js19
-rw-r--r--assets/javascripts/rectangles/models/wall.js9
3 files changed, 21 insertions, 12 deletions
diff --git a/assets/javascripts/rectangles/engine/builder.js b/assets/javascripts/rectangles/engine/builder.js
index 748e8c5..b6728f1 100644
--- a/assets/javascripts/rectangles/engine/builder.js
+++ b/assets/javascripts/rectangles/engine/builder.js
@@ -43,7 +43,10 @@ var builder = new function(){
function bind (){
clipper.rooms.forEach(function(room){
var walls = room.group_walls()
- walls.forEach(function(wall){ wall.bind() })
+ walls.forEach(function(wall){
+ wall.bind()
+ wall.randomize_colors()
+ })
})
}
diff --git a/assets/javascripts/rectangles/models/room.js b/assets/javascripts/rectangles/models/room.js
index f7c52d4..3c41a1b 100644
--- a/assets/javascripts/rectangles/models/room.js
+++ b/assets/javascripts/rectangles/models/room.js
@@ -29,19 +29,21 @@ window.Room = (function(){
this.constructed = false
this.walls = []
- this.floor = []
- this.ceiling = []
+
+ this.mx_walls = []
+ this.mx_floor = []
+ this.mx_ceiling = []
}
Room.prototype.bind = function(){
var base = this
- base.walls.forEach(function(wall){
+ base.mx_walls.forEach(function(wall){
$(wall.el).bind({
mouseover: function(){
},
mousemove: function(e){
var color = choice(window.palettes.colors)
- base.walls.forEach(function(wall){
+ base.mx_walls.forEach(function(wall){
$(wall.el).css("background-color", color)
})
},
@@ -51,11 +53,12 @@ window.Room = (function(){
})
}
- Room.prototype.group_walls = function(){
+ Room.prototype.group_mx_walls = function(){
var base = this
var side_groups = {}, walls = []
- base.walls.forEach(function(wall){
+ // group the walls by side
+ base.mx_walls.forEach(function(wall){
// ignore half-walls for now
if (! wall.side) return;
@@ -68,10 +71,10 @@ window.Room = (function(){
}
})
+ // sort the subgroups, and then combine mx objects under wall objects
pairs(side_groups).forEach(function(pair){
var side = pair[0], els = pair[1]
- console.log(sidesToString(side))
if (side & LEFT_RIGHT) {
els.sort(compare_x)
console.log(els.map(function(r){ return r.rect+"" }).join("\n"))
@@ -84,7 +87,6 @@ window.Room = (function(){
walls.push(wall)
els.forEach(function(el){
- console.log(wall.rect.x.b, el.rect.x.a, el.rect.sides & LEFT_RIGHT)
if (side & FRONT_BACK && wall.rect.x.b == el.rect.x.a) {
wall.rect.x.b = el.rect.x.b
wall.mx.push(el)
@@ -98,7 +100,6 @@ window.Room = (function(){
walls.push(wall)
}
})
- console.log(walls.length)
})
function new_wall (el) {
diff --git a/assets/javascripts/rectangles/models/wall.js b/assets/javascripts/rectangles/models/wall.js
index 50ae0e8..41d0e97 100644
--- a/assets/javascripts/rectangles/models/wall.js
+++ b/assets/javascripts/rectangles/models/wall.js
@@ -35,11 +35,16 @@ window.Wall = (function(){
mousemove: function(e){
},
mousedown: function(){
- base.$walls.css("background-color", choice(window.palettes.colors))
- console.log("zz")
+ base.randomize_colors()
}
})
}
+
+
+ var bzz = 0
+ Wall.prototype.randomize_colors = function(){
+ this.$walls.css("background-color", window.colors[bzz=(bzz+1)%window.colors.length])
+ }
return Wall