﻿Boundary.container = "";
Boundary.xMax = 0;
Boundary.xMin = 0;
Boundary.yMax = 0;
Boundary.yMin = 0;

function Boundary(){}

Boundary.setBounds = function(container)
{
    this.container = container;
    Boundary.reset();
}

Boundary.getXmax = function()
{
    var x = this.container.offsetWidth + Boundary.getXmin();
    return x;
}

Boundary.getXmin = function()
{
    var x = Math.max(0, this.container.offsetLeft - Boundary.getOffset());    
    return x;    
}

Boundary.getYmax = function()
{
    var y = this.container.offsetHeight + Boundary.getYmin();
    return y;
}

Boundary.getYmin = function()
{
    var y = 0;
    return y;
}

Boundary.reset = function()
{
    var dx = Boundary.xMin;
    var dy = Boundary.yMin;
    Boundary.xMax = Boundary.getXmax();
    Boundary.yMax = Boundary.getYmax();
    Boundary.xMin = Boundary.getXmin();
    Boundary.yMin = Boundary.getYmin();
    dx = Boundary.xMin - dx;
    dy = Boundary.yMin - dy;
    EventCenter.broadcast(Events.BOUNDARY_RESETS, {x:dx, y:dy});
}

Boundary.getOffset = function()
{
   return  Math.ceil((document.body.offsetWidth - Settings.GAME_WIDTH) / 2);
}
