// ActionScript Document



function AnimeSprite(path)
{
	
	var sprt = new Array();
	var img;
	var currentAnime;
	this.ancX = 50;
	this.ancY = 75;
	
	var frameRate = 30;
	var wid;
	var heg;
	this.x = 0;
	this.y = 0;
	this.rotation = 0;
	this.init = function(fnc)
	{
		img = new Image();
		img.src = path;
		img.onload = fnc;
		/*ctx.drawImage(im, 0, 0,wid, heg, x, y, wid, heg);
		im.wid = wid;
		im.heg = heg;
		im.x 	= x;
		im.y   = y;
		sprt[name] = im;*/
	}
	
	
	this.addFrame = function( animeName, frameWid, frameHeg,frameXStart, frameYStart, frameXEnd, frameYEnd)
	{
		currentAnime = animeName;
		
		var ob;
		sprt[animeName] =  {fw:frameWid, fh:frameHeg, anime:[], cfrm:0};
		for(var i = frameYStart; i <= frameYEnd; i++ )
		{
			 for(var j = frameXStart; j <= frameXEnd; j++ )
			 {
				ob     				= new Object();
				ob.fx  				= j * frameWid;
				ob.fy  				= i * frameHeg; 
				sprt[animeName].anime.push(ob);
			 }
		}
		
		wid = frameWid;
		heg = frameHeg;
	}
	
	
	this.setCurrentAnime = function (animeName)
	{
		currentAnime = animeName;
		wid = sprt[currentAnime].fw;
		heg = sprt[currentAnime].fh;
	}
	
	
	this.render = function ()
	{
		var f  = Math.round(sprt[currentAnime].cfrm);
		if(f  >= sprt[currentAnime].anime.length)
		{
			sprt[currentAnime].cfrm = (frameRate / 30);
			f = Math.round(sprt[currentAnime].cfrm); 
		}
		
		var fx = sprt[currentAnime].anime[f].fx;
		var fy = sprt[currentAnime].anime[f].fy;
		var fw = sprt[currentAnime].fw;
		var fh = sprt[currentAnime].fh;
		//rotatio
		
		
		
		ctx.drawImage(img,fx, fy, fw, fh, this.x,this.y, this.wid,this.heg);//, 0,0,wid,heg)//, 0,0, fw, fh);
		ctx.restore();
		sprt[currentAnime].cfrm += (frameRate / 30);
	}
	
	
	this.setSize = function (wid, heg)
	{
		this.wid =  wid;
		this.heg = heg;
	}
	
	
	this.setLoc = function(xLoc, yLoc)
	{
		this.x = xLoc;
		this.y = yLoc;
	}
	
	
	this.setRotation = function(rota)
	{
		var ancX = this.x + (this.wid / 2);
		var ancY = this.y + (this.heg / 2);
		ctx.save();
		ctx.translate(ancX, ancY);
		this.rotation = rota;
		ctx.rotate(this.rotation);
		ctx.translate(-ancX, -ancY);
	}
	
	
	this.setFrame = function (cf)
	{
		frameRate = cf;
	}
	
	
	this.setAnch = function(eks, yay)
	{
		this.ancX = eks;
		this.ancY = yay;
	}
	
	
	

	
	
}
