summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2014-06-19 16:01:25 -0400
committerJules Laplace <jules@okfoc.us>2014-06-19 16:01:25 -0400
commit615e285aba96554d0e29063d7491645810cb08b8 (patch)
treeddc409898299dd90611c73a2ddf62a149c369734 /public/assets/javascripts/rectangles/engine/scenery/_scenery.js
parent9a4730ac59f0cf83b2fdca3672a9f622db6c8aa2 (diff)
serialize/deserialize scenery
Diffstat (limited to 'public/assets/javascripts/rectangles/engine/scenery/_scenery.js')
-rw-r--r--public/assets/javascripts/rectangles/engine/scenery/_scenery.js49
1 files changed, 13 insertions, 36 deletions
diff --git a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
index 0dd1a4d..0a3187c 100644
--- a/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
+++ b/public/assets/javascripts/rectangles/engine/scenery/_scenery.js
@@ -10,53 +10,25 @@ var Scenery = new function(){
base.init = function(){
base.resize.init()
-
- var urls = [
- "http://okfocus.s3.amazonaws.com/office/ducks/duck1.jpg",
- "http://okfocus.s3.amazonaws.com/office/ducks/duck2.jpg",
- "http://okfocus.s3.amazonaws.com/office/ducks/duck3.jpg",
- "http://okfocus.s3.amazonaws.com/office/ducks/duck4.jpg",
- "http://okfocus.s3.amazonaws.com/office/ducks/duck5.jpg",
- ]
- var loader = new Loader(function(){
- base.load(loader.images)
- })
- // loader.preloadImages(urls)
- }
-
- base.load = function(images){
- images.forEach(function(img){
- img.width = 300
- img.height = ~~(300 * img.naturalHeight/img.naturalWidth)
- })
-
- Rooms.forEach(function(room){
- room.walls.forEach(function(wall){
- var img = choice(images)
- if (wall.fits(img)) {
- var scene_img = new Scenery.image (wall, img)
- base.images.push(scene_img)
- scene_img.init()
- }
- })
- })
}
base.add = function(wall, media){
var scene_media
switch (media.type) {
case 'image':
- scene_media = new Scenery.image (wall, media)
+ scene_media = new Scenery.types.image ({ media: media, wall: wall })
break
case 'youtube':
case 'vimeo':
- scene_media = new Scenery.video (wall, media)
+ scene_media = new Scenery.types.video ({ media: media, wall: wall })
break
}
+
base.media.push(scene_media)
- scene_media.init()
+ return scene_media
}
+
base.addNextToWall = function(wall){
base.add(wall, base.nextMedia)
base.nextMedia = null
@@ -73,14 +45,19 @@ var Scenery = new function(){
var scenery = base.media.map(function(media){
return media.serialize()
})
+ console.log(scenery)
return scenery
}
- base.deserialize = function(scenery){
- scenery.forEach(function(function(media){
- // find the wall this is supposed to be on
+ base.deserialize = function(scenery_data){
+ scenery_data.forEach(function(data){
+ var wall = Rooms.walls[data.wall_id]
+ var scene_media = base.add(wall, data.media)
+ scene_media.deserialize(data)
})
}
return base
}
+
+Scenery.types = {}