package clases
{
	import flash.display.MovieClip;
	import flash.events.MouseEvent;
	import clases.sonidoPrecargado

	public class arrastre extends MovieClip
	{

		public var clip:MovieClip;
		public var pariente:MovieClip;
		public var valorZ:int;
		public var xo:int;
		public var yo:int;
		public var topo:Boolean = false;
		public var tipo:String;
		public var zonaActual:MovieClip;
		public var son1:sonidoPrecargado
		
		public var sx:Number;
		public var sy:Number;
		
		public var valorC:int


		public function arrastre(clipPasado:MovieClip,ValorZpasado:int,tipoPasado:String,ValorCpasados:int)
		{

			clip = clipPasado;
			valorZ = ValorZpasado;
			pariente = MovieClip(clip.parent);
			
			valorC = ValorCpasados

			clip.buttonMode = true;
			clip.useHandCursor = true;
			tipo = tipoPasado;
			
			son1 = new sonidoPrecargado("sonidos/sonidosGenerales/bien.mp3")

			xo = clip.x;
			yo = clip.y;

			clip.xo = clip.x;
			clip.yo = clip.y;

			sx =  clip.scaleX
			sy = clip.scaleY
			
			clip.addEventListener(MouseEvent.MOUSE_DOWN,presionado);
			clip.addEventListener(MouseEvent.MOUSE_UP,suelto);

		}

		public function presionado(e)
		{	if(pariente.activo == true){
			for (var i:int = 1; i<valorZ+1; i++)
			{
				if (clip.hitTestObject(pariente["z" + i]))
				{
					pariente["z" + i].tipo = "";
				}
			}
			clip.startDrag();
			pariente.addChild(clip);
			clip.scaleX = sx +0.05
			clip.scaleY = sy +0.05
		}
		}
		public function suelto(e)
		{if(pariente.activo == true){
			clip.stopDrag();
			clip.scaleX = sx
			clip.scaleY = sy
			son1.reproducir()
			for (var i:int = 1; i<valorZ+1; i++)
			{	
				
				if (clip.hitTestObject(pariente["z" + i]))
				{
					clip.x = pariente["z" + i].x;
					clip.y = pariente["z" + i].y;
					topo = true;
					pariente["z" + i].tipo = tipo;

					zonaActual = pariente["z" + i];

					for (var j:int = 1; j<valorC+1; j++)
					{
						if (pariente["c" + j].name != clip.name)
						{

							if (clip.hitTestObject(pariente["c" + j]))
							{
								pariente["c" + j].x = pariente["c" + j].xo;
								pariente["c" + j].y = pariente["c" + j].yo;
							}
						}
					}

				}
			}
			if (topo == true)
			{
				topo = false;
			}
			else
			{
				clip.x = xo;
				clip.y = yo;

			}
			pariente.ver();

		}
		}
	}

}