blob: f5ef6bee235647de23c9e85aded5c8a8ecc559a8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
(function(){
var vec2, Rect, Room, sort, UidGenerator, _
if ('window' in this) {
vec2 = window.vec2
Rect = window.Rect
Room = window.Room
sort = window.sort
UidGenerator = window.UidGenerator
_ = window._
}
else {
vec2 = require('../../models/vec2')
Rect = require('../../models/rect')
Room = require('../../models/room')
UidGenerator = require('../../util/uid')
sort = require('../../util/sort')
_ = require('lodash')
FRONT = 0x1, BACK = 0x2, LEFT = 0x4, RIGHT = 0x8, FLOOR = 0x10, CEILING = 0x20
TOP = CEILING, BOTTOM = FLOOR
function sidesToString(sides){
var s = ""
if (sides & FRONT) s += "front "
if (sides & BACK) s += "back "
if (sides & LEFT) s += "left "
if (sides & RIGHT) s += "right "
if (sides & TOP) s += "top "
if (sides & BOTTOM) s += "bottom "
return s
}
}
var Walls = new function(){
var base = this
base.list = []
base.lookup = {}
base.colors = {}
base.first = function(){
for (var i in base.list) {
if (base.list.hasOwnProperty(i)) {
return base.list[i]
}
}
}
base.assign = function(list){
base.list = list
base.lookup = {}
list.forEach(function(wall){
base.lookup[wall.id] = wall
})
}
base.bind = function(){
base.list.forEach(function(wall){
wall.bind()
})
}
base.count = function(){
return this.list.length
}
base.forEach = function(f){
return base.list.forEach(f)
}
base.map = function(f){
return base.list.map(f)
}
base.serialize = function(){
return []
}
base.deserialize = function(walls_data){
return []
}
}
if ('window' in this) {
window.Walls = Walls
}
else {
module.exports = Walls
}
})()
|