diff options
| author | Jules Laplace <jules@okfoc.us> | 2014-08-20 18:55:11 -0400 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2014-08-20 18:55:11 -0400 |
| commit | a48beac4e7e93f78ef7229b0b1e4776dc04cac92 (patch) | |
| tree | 8c4db36a6da79ce87506642443c5e58edf12de8c /public/assets/javascripts/rectangles/engine | |
| parent | 4f1d9a04ee6e598e93de298bd9c5081c68b9db92 (diff) | |
converting between position and mx coordinates
Diffstat (limited to 'public/assets/javascripts/rectangles/engine')
| -rw-r--r-- | public/assets/javascripts/rectangles/engine/scenery/_scenery.js | 4 | ||||
| -rw-r--r-- | public/assets/javascripts/rectangles/engine/scenery/types/_object.js | 16 |
2 files changed, 14 insertions, 6 deletions
diff --git a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js index b4a38f8..5d36b4f 100644 --- a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js +++ b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js @@ -29,11 +29,11 @@ var Scenery = new function(){ return scene_media } - base.addNextToWall = function(wall, mx){ + base.addNextToWall = function(wall, index){ base.add({ wall: wall, media: base.nextMedia, - mx: mx + index: index || 0, }) base.nextMedia = null return media diff --git a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js index 6bd5863..70d1d26 100644 --- a/public/assets/javascripts/rectangles/engine/scenery/types/_object.js +++ b/public/assets/javascripts/rectangles/engine/scenery/types/_object.js @@ -10,9 +10,17 @@ Scenery.types.base = Fiber.extend(function(base){ this.media = opt.media this.dimensions = new vec2(this.media.width, this.media.height) this.scale = this.media.scale + + this.scaleDimensions = this.dimensions.clone().mul(this.media.scale) + this.position = new vec2(0,0) + if (opt.data && opt.data.position) { + // position is the coordinate of one of the corners with respect to a + // wall surface + // subtract x/z offset of wall + } if (opt.wall) { - this.set_wall(opt.wall, opt.mx) + this.set_wall(opt.wall, index) } }, @@ -60,7 +68,7 @@ Scenery.types.base = Fiber.extend(function(base){ } }, - set_wall: function(wall, mx){ + set_wall: function(wall, index){ this.wall = wall || this.wall // this.bounds = this.wall.bounds_for(this.media, this.scale) // this.center = this.wall.center() @@ -83,8 +91,8 @@ Scenery.types.base = Fiber.extend(function(base){ serialize: function(){ var data = { id: this.id, - wall_id: this.wall.id, - side: this.wall.side, + wall_id: this.wall && this.wall.id, + side: this.wall && this.wall.side, dimensions: this.dimensions.serialize(), position: app.position(this.mx), media: this.media, |
