diff options
Diffstat (limited to 'public/assets/javascripts/rectangles/models/wall.js')
| -rw-r--r-- | public/assets/javascripts/rectangles/models/wall.js | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/public/assets/javascripts/rectangles/models/wall.js b/public/assets/javascripts/rectangles/models/wall.js index 176bd7c..9e37785 100644 --- a/public/assets/javascripts/rectangles/models/wall.js +++ b/public/assets/javascripts/rectangles/models/wall.js @@ -116,14 +116,27 @@ window.Wall = (function(){ } Wall.prototype.wallpaper = function(){ - this.$walls.css("background-image", Scenery.nextWallpaper) + var useZ = this.side & FRONT_BACK + var shouldFlip = this.side & (LEFT | BACK) + this.siblings().forEach(function(w){ + w.mx.forEach(function(mx){ + + var partitionOffset = useZ ? mx.x : mx.z + if (shouldFlip) partitionOffset *= -1 + partitionOffset += mx.width/2 + var floorOffset = mx.y + mx.height/2 + + mx.el.style.backgroundImage = Scenery.nextWallpaper + mx.el.style.backgroundPosition = (~~partitionOffset) + "px " + (~~floorOffset) + "px" + }) + }) } Wall.prototype.siblings = function(){ var base = this var match = base.side | base.half_side var walls = Rooms.list[this.room].walls.filter(function(w){ - return (w.side | w.half_side) & match + return (w.side | w.half_side) & match && w.$walls }) return walls } |
