	var Mariposas;
	var Butterflies;
function initLevel () {

	levelWidth =30000; //Igual o mayor a 960;
	levelHeight =4000; //Igual o mayor a 540;
	imgData = ["tariacuri.png","dirtpath.png","Cielo.jpg","casita.png", "pasto.png", "pasto2.png",
	"Tree.png", "rama.png","bloquecito.png", 
	"bloquemini.png","sueloInvisible.png","mariposa.png", "viejita.png", "viejito.png"]; 
	audioData=["Angangueo"];

	var arboles1=3400;
	var arboles2=415;
	var contador=0;
	
	var dialogoParakata = ["Parakata: ¡Vaya vaya, tenemos visitantes!|Soy Parakata que significa mariposa en Purépecha. "];
	dialogoParakata=dialogoParakata.concat("Parakata: Están en Angangueo, un pequeño pueblo rico en bosques y |paisajes hermosos, su nombre posee varios significados 'pueblo entre |montañas', 'cosa muy alta' o 'dentro del bosque'.");
	dialogoParakata=dialogoParakata.concat("Parakata: ¿Han venido al Santuario de la Mariposa Monarca a |ayudarnos?");
	dialogoParakata=dialogoParakata.concat("Parakata: Ah ya veo que no están enterados.|Mi hermano y yo venimos a ayudar a las mariposas monarcas heridas. ");
	dialogoParakata=dialogoParakata.concat("Parakata: ¿Con qué quieres ayudarnos? Bueno la verdad la ayuda |siempre es bienvenida,sigue caminando y encontrarás a mi hermana| Tarhiata, ella te explicará lo que debes hacer.");
	
	var dialogoTarhiata = ["Tarhiata: ¡Qué bien!, Parakata ha enviado ayuda. |Mi nombre es Tarhiata que significa viento."];
	dialogoTarhiata=dialogoTarhiata.concat("Tarhiata: Estamos en el Santuario de la Mariposa Monarca. |Las mariposas se encuentran en la cima de la montaña, por lo |cual tendrás que seguir escalando.");
	dialogoTarhiata=dialogoTarhiata.concat("Tarhiata: El objetivo es encontrar a las mariposas heridas para |después llevarlas con mi padre.");
	dialogoTarhiata=dialogoTarhiata.concat("Tarhiata: Él se encarga de curarlas y después las liberamos, |así contribuimos para la preservación de este santuario y las mariposas.");
	dialogoTarhiata=dialogoTarhiata.concat("Tarhiata: Así que si estas listo, adelante. |Mi padre te recompensará con algo especial. Buena suerte.");
	
	
	var cielo=[[0,false],[2,0,0]];  
	var suelo=[[1,true], [-100,100, 100,4000], [7, 2400, 3800], [7, 2900, 3600], [7, 2400, 3380], [7, 3000, 3200],[7, 3400, 3000],[8, 4000, 2900],[7, 4400, 2800],
	[8, 4900, 2800],[8, 5200, 2600],[8, 5600, 2400],[8, 6000, 2200],[9, 6400, 2000],[9, 6700, 1800],[9, 6400, 1600],
	[9, 6200, 1400],[9, 6400, 1200],[9, 6600, 1000],[8, 19700, 3500],[8, 19800, 3600],[8, 19900, 3700],
	[8, 20000, 3800],[8, 20100, 3900],[8, 20200, 3900],[8, 20300, 3900]]; 
 	var pastoDelante=[[1,false], [6, 400, arboles1],[6, 800, arboles1], [6, 1200, arboles1], [6,1600,arboles1],[6, 1800, arboles1],[6, 7000, arboles2],
 	[6, 7400, arboles2],[6, 7800, arboles2],[6, 8200, arboles2],
 	[6, 8600, arboles2],[6, 9000, arboles2],[6, 9400, arboles2]];
 	var pastoDetras=[[1,false], [6, 200, arboles1], [6, 600, arboles1],[6, 1000, arboles1],[6, 1400,arboles1],
 	[6,1600,arboles1],[6, 6800, arboles2],[6, 7200, arboles2],[6, 7600, arboles2],[6, 8000, arboles2],
 	[6, 8400, arboles2],[6, 8800, arboles2],[6, 9200, arboles2],
 	[6, 13300, 1000],[6, 13500, 1000],[6, 13700, 1000],[6, 13900, 1000],[6, 14100, 1000],
 	[6, 14650, 1100],[6, 14650, 1100],[6, 15250, 1400],[6, 15850, 1700],
 	[6, 17150, 2200],[6, 17850, 2400],[6,18250,2600]];
 	var Butterflies=[new Butterfly(11,7000,400),new Butterfly(11,7800,400),new Butterfly(11,8600,400),
 	new Butterfly(11,9400,400),new Butterfly(11,15500,2585),new Butterfly(11,15700,2985)];
	var objetos=[[1,false],[6,20500,3300],new Parakata(12,1100,3700, dialogoParakata),new Parakata(12,2200,3700, dialogoTarhiata),[3,21000,3180],new Terminar(21333,3600),
	Butterflies[0],Butterflies[1],Butterflies[2],Butterflies[3],Butterflies[4],Butterflies[5],[6,22000,3300]]; 
	var nubes=[[0.5,false],new Clouds(0,0,20000,4000)];
	var casa=[[1,false]];
	var bloqueMariposas=[[1,true], [9, 7400,800], 
	[9, 8200,800], [9,9000,800],
	[9,10100,900],[8,10500,930],[8,10600,970],[8,10700,1010],[8,10800,1050],[8,10900,1090],
	[8,11300,1100],[8,11400,1140],[8,11500,1180],[8,11600,1220],[8,11700,1260],
	[8,12200,1300],[8,12300,1340],[8,12400,1380],[8,12500,1420],[8,12600,1460],
	[8,13000,1500], [7,14700,1680], [7,15300,1980], [7,15900,2280],[8,15500,2685],
	[7,16650,2300],[7,17200,2800],[7, 17900, 3000], [7, 18300, 3200],[7, 19050, 3500]] ;

	levelData = [cielo,nubes,casa,suelo,pastoDetras,objetos,pastoDelante, bloqueMariposas]; //Poner las capas en el orden 
	respawn = [[0,500],[1899,3500],[4500,2000],[9600,500],[14200,500],[16900,2000],[18500,3000],[20900,3700]]; //Puntos de respawn.

	levelData.init = function () {

		Mariposas= new Counter(780, 0, 11);
		Mariposas.counter=0;
		

		//suelo colision
		levelData[3]=levelData[3].concat(insertTiles(1,0,4000,11,1,0,0)); //1=La imagen //0,700 X,Y
																   //10 RepX 1 RepY  //0,0 X,Y Space
																   //Deben ser minimo 1.
		
        levelData[4]=levelData[4].concat(insertTiles(4,20,3830,2,1,0,0));

        //lo ultimo 13500, 500
		player=new Player(0,[1, 1, 10, 10, 1, 1, 1, 1],111,160,0,3800);
		ivan =new Ivan(200,3500);
		camera= new Camera([[3000,1/2],[6700,3/4], [9600,1/2],[13300,3/4],[14200,1/4]]);
		levelData[5]=levelData[5].concat(player,ivan);
		levelData[6]=levelData[6].concat(insertTiles(5,-70,3830,2,1,0,0));

		levelData[3]=levelData[3].concat(insertTiles(10,6800,1000,3,1,0,0));
		levelData[4]=levelData[4].concat(insertTiles(4,6700,790,3,1,-300,0));
		levelData[6]=levelData[6].concat(insertTiles(5,6770,825,3,1,-300,0));

		levelData[3]=levelData[3].concat(insertTiles(10,13400,1600,1,1,0,0));
		levelData[4]=levelData[4].concat(insertTiles(4,13300,1375,1,1,-1100,0));
		levelData[6]=levelData[6].concat(insertTiles(5,13350,1415,1,1,-1100,0));

		levelData[3]=levelData[3].concat(insertTiles(10,20400,3900,2,1,0,0));
		levelData[4]=levelData[4].concat(insertTiles(4,20300,3700,2,1,-300,0));
		levelData[6]=levelData[6].concat(insertTiles(5,20350,3750,2,1,-300,0));
	
	}

	levelData.logic = function () {
		//audioData[0].pause();
		 if(cutscene==undefined&&fade.state=='idle'){ 
		 	cutscene = new Cutscene([[0, 3500]], [["Tariácuri hemos llegado a un nuevo pueblo,|parece ser un lugar muy boscoso, vayamos a investigar.."]]); }
		
	// if((player.x_pos>=15600&&player.x_pos<=15795) && (player.y_pos>=2985&&player.y_pos<=3080)){
	// 	if(fade.state != 'fadeout'){
	// 					fade.out();
						
	// 					console.log("sii");
	// 					}
					
	// 					if(fade.state=='idle'){

	// 						console.log("aki");
	// 						player.x_pos = 23000;
	// 						player.y_pos = 3600; //3500
	// 						camera.move();
							
	// 						fade.in();
	// 						console.log("in");
	// 					}
	// 	}
		if((player.x_pos>=15600&&player.x_pos<=15795) && (player.y_pos>=2985&&player.y_pos<=3080)){
			
			fade.out();
			if(fade.state=='idle'){
				player.x_pos=22000;
				player.y_pos=3100;
				fade.in();
			}
		}

	}

	levelData.draw = function (i, displacementRatio) {
		// context.fillText("X="+player.x_pos.toFixed(2)+" Y="+player.y_pos.toFixed(2) , 0, 50);
		// context.fillText("xMouse="+mousex+", yMouse="+mousey+" LP="+lastPress, 0, 100);
		// context.fillText("xFigura="+x1+", yFigura="+y1+" #clicks="+numClicks, 0, 200);
		//  context.fillText("reaparecer="+reaparecer, 0, 300);
		// context.fillText("xClick="+clickX+", yClick="+clickY+" #clicks="+numClicks, 0, 400);
		Mariposas.draw();
	}

}var contador = 0;




function Butterfly (imageCode, x_pos, y_pos) {
	this.imageCode = imageCode;
	this.x_pos = x_pos;
	this.y_pos = y_pos;
	var exists = true;
	/*var particles = new Array();
	for(var i=0;i<20;i++)
		particles[i] = new levelData.particle('tacambaro/tomato_particle.png');*/
	var player_collided = false;
	this.draw = function (displacementRatio) {
		/*if(!onScreen(x_pos, y_pos, image.width, image.height))
			return;*/
		/*for(var i=0;i<particles.length;i++)
			particles[i].move(x_pos+image.width/2,y_pos+image.height/2, exists);*/
		if(!exists)
			return;
		drawOnCanvas(imgData[this.imageCode], x_pos-camera.x_pos*displacementRatio, y_pos-camera.y_pos*displacementRatio);
		if(player.isColliding(this.x_pos, this.y_pos, imgData[this.imageCode].width, imgData[this.imageCode].height)||player_collided){
			if(!player_collided)
				{	if(Mariposas.counter==0){
					cutscene = new Cutscene([[this.x_pos-canvas.width/2+imgData[imageCode].width/2, this.y_pos-canvas.height/2+imgData[imageCode].height/2]], [["¡Has encontrado una mariposa!"]]);
					}
					Mariposas.add();
					
				}
			player_collided = true;
			if(cutscene.finished){
				exists = false;

						
						
					
			}
					
				
				
			//cutscene.textBox.draw();
		}
	}
}

function Parakata (imageCode,x_pos, y_pos,string) {
	this.imageCode = imageCode;
	this.x_pos = x_pos;
	this.y_pos = y_pos;
	var talked = false;
	this.draw = function (){
		//console.log("asdf " + on_cutscene + " " + talked + " " + cutscene + " " + fade.state);
		//on_cutscene = false;
		drawOnCanvas(imgData[imageCode], this.x_pos-camera.x_pos, this.y_pos-camera.y_pos);
		if(player.isColliding(this.x_pos, this.y_pos, 1010, 788)&&pressed_control&&!on_cutscene){
			
			
				cutscene = new Cutscene([[this.x_pos-canvas.width/2, this.y_pos-canvas.height/2+200]], [string]);
				talked=true;
			}
			

		}
		


	}



function Terminar (x_pos, y_pos) {
	this.imageCode = 13;
	this.x_pos = x_pos;
	this.y_pos = y_pos;
	var talked = false;
	this.draw = function (){
		//console.log("asdf " + on_cutscene + " " + talked + " " + cutscene + " " + fade.state);
		//on_cutscene = false;
		drawOnCanvas(imgData[13], this.x_pos-camera.x_pos, this.y_pos-camera.y_pos);
		if(player.isColliding(this.x_pos, this.y_pos, 1010, 788)&&pressed_control&&!on_cutscene){
			var string = ["Jurhiata:  Muchas gracias por tu ayuda, joven aventurero. |Soy Jurhiata y significa sol. |Yo soy quien ayuda a las mariposas heridas."];
			string=string.concat("Jurhiata: Has encontrado "+Mariposas.counter+" mariposas.");
		  			    		      
			
			if(Mariposas.counter==6){
					string=string.concat("Jurhiata: Muy bien, gracias a ti ayudaremos a "+Mariposas.counter+" mariposas.");
					string=string.concat("Ahora como recompensa te daré el emblema de la mariposa|"+
		 		 	"te dará suerte en tus viajes.");
					cutscene = new Cutscene([[this.x_pos-canvas.width/2+100, this.y_pos-canvas.height/2+100]], [string]);

				}
				else{
					string=string.concat("Jurhiata: Por desgracia hay más mariposas heridas que |necesitan ayuda. Tendrás que regresar a la montaña |y encontrarlas. En total hay 6.");
			  		cutscene = new Cutscene([[this.x_pos-canvas.width/2+100, this.y_pos-canvas.height/2+100]], [string]);
			  		
				}
			talked=true;
			

		}
		if(talked) {

			if(cutscene.finished){
				if(Mariposas.counter==6)
					
					ending.init("Angangueo");
				
				else{
				if(fade.state != 'fadeout')
						fade.out();
					
					if(fade.state=='idle'){

						
						player.x_pos = 0;
						player.y_pos = 3800; //3500
						

						camera.move();
						
						talked = false;
						fade.in();
					}
				}
								
		}


	}
	 }

}

function enableInputs(){
        document.addEventListener('mousemove',function(evt){
            mousex=evt.pageX-canvas.offsetLeft;
            mousey=evt.pageY-canvas.offsetTop;
        },false);
        canvas.addEventListener('mousedown',function(evt){
            lastPress=evt.which;
            
        },false);
    }
