summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2015-08-21 16:59:48 -0400
committerJules Laplace <jules@okfoc.us>2015-08-21 16:59:48 -0400
commit73fdf8d46f10793d210f4369adb8c31afa536d20 (patch)
tree6453908c271929af3c192f6937b6d4eb57291f92
parent3e87dcb3de9ad29f7c021792cbafc32d4c758d3f (diff)
thinking
-rw-r--r--public/assets/javascripts/rectangles/engine/shapes/regionlist.js33
-rw-r--r--public/assets/javascripts/rectangles/models/vec2.js3
2 files changed, 22 insertions, 14 deletions
diff --git a/public/assets/javascripts/rectangles/engine/shapes/regionlist.js b/public/assets/javascripts/rectangles/engine/shapes/regionlist.js
index fb2c8e5..b2672ad 100644
--- a/public/assets/javascripts/rectangles/engine/shapes/regionlist.js
+++ b/public/assets/javascripts/rectangles/engine/shapes/regionlist.js
@@ -106,22 +106,27 @@ var RegionList = (function(){
}
}
/*
- else if ((segment.y.a == room.y.a || segment.y.a == room.y.b) && room.x.containsVec(segment.x)) {
- splits = room.x.split(segment.x, LEFT, RIGHT)
- for (var k = 0; k < splits.length; k++) {
- splitter = splits[k]
- var new_room = new Rect( splitter[0], room.y )
- new_room.sides |= splitter[1]
- if (segment.x.containsVec(splitter[0])) {
- if (segment.y.a == room.y.a) {
- room.sides |= FRONT
- }
- if (segment.y.a == room.y.b) {
- room.sides |= BACK
+ else if (segment.y.a == room.y.a || segment.y.a == room.y.b) {
+ if (room.x.overlaps(segment.x)) {
+ splits = room.x.split(segment.x, LEFT, RIGHT)
+ rooms.splice(r--, 1)
+ console.log(splits)
+ for (var k = 0; k < splits.length; k++) {
+ splitter = splits[k]
+ var new_room = new Rect( splitter[0], room.y )
+ new_room.sides = 0
+ new_room.sides |= splitter[1]
+ if (segment.x.containsVec( splitter[0] )) {
+ if (segment.y.a == new_room.y.a) {
+ new_room.sides |= FRONT
+ }
+ if (segment.y.a == new_room.y.b) {
+ new_room.sides |= BACK
+ }
}
+ rooms.unshift(new_room)
+ r++
}
- rooms.unshift(new_room)
- r++
}
}
*/
diff --git a/public/assets/javascripts/rectangles/models/vec2.js b/public/assets/javascripts/rectangles/models/vec2.js
index d37bc12..226e56f 100644
--- a/public/assets/javascripts/rectangles/models/vec2.js
+++ b/public/assets/javascripts/rectangles/models/vec2.js
@@ -114,6 +114,9 @@
vec2.prototype.containsVec = function(v){
return this.a <= v.a && v.b <= this.b
}
+ vec2.prototype.containsCenterVec = function(v){
+ return this.a < v.a && v.b < this.b
+ }
vec2.prototype.clamp = function(n){
return clamp(n, this.a, this.b)
}