Es decir.. recuadros (movieclips) individuales, que ocupan el escenario (y un poco mas para que no se vea cuando saltan al otro lado) Dragables, es decir "Arrastrables" con el mouse.
Código :
//=====Variables principales=====//
var cuadW:Number = 200;
var cuadH:Number = 200;
var mapa:MovieClip = _root.createEmptyMovieClip("mapa",1);
var centro:MovieClip = _root.mapa.createEmptyMovieClip("centro",2);
//===============================//
//=====Medicion del escenario=====//
//Stage.showMenu=false << DESCOMENTAR
//Stage.align="TL"; << DESCOMENTAR
//Stage.scaleMode="noScale"; << DESCOMENTAR
var escW:Number = Stage.width;
var escH:Number = Stage.height;
var listener:Object = new Object();
listener.onResize = function(){
//escW = Stage.width;
//escH = Stage.height;
}
Stage.addListener(listener);
//===============================//
//=====Creo los cuadraditos=====//
crearCuadraditos = function(sW:Number,sH:Number,cW:Number,cH:Number){
if (int(sW / cW) == (sW/cW)){
cantX = int(sW / cW) + 2;
}else{
cantX = int(sW / cW) + 3;
}
if (int(sH / cH) == (sH /cH)){
cantY = int(sH / cH) + 2;
}else{
cantY = int(sH / cH) + 3;
}
cantTotal = cantX*cantY;
var fila:Number = 0;
var columna:Number = 0;
for (var nro:Number = 1;nro<=cantTotal;nro++){
var partevar:MovieClip = _root.mapa.attachMovie("cuad","parte"+nro,nro+2);
partevar._x = (-cW) + cW*columna;
partevar._y = (-cH) + cH*fila;
if (nro/cantX == int(nro/cantX)){
fila++;
columna=0;
}else{
columna++;
}
partevar.onMouseMove = movParte;
}
}
//===============================//
//=====Scroll del mapa=====//
var clikeado:Boolean = false;
movParte = function(){
if (clikeado){
if(!this.bandera){
this.bandera = true;
this.antX = this._x;
}
this.disX = _root.mapa.centro._xmouse;
this._x = this.antX + this.disX;
if (this._x < -2*cuadW){
this.newX = escW;
this._x = this.newX;
this.antX = this.newX-this.disX;
}
}else{
this.bandera = false;
}
}
_root.onMouseDown = function(){
_root.mapa.centro._x = _root.mapa._xmouse;
_root.mapa.centro._y = _root.mapa._ymouse;
clikeado = true;
}
_root.onMouseUp = function(){
clikeado = false;
}
//===============================//
crearCuadraditos(escW,escH,cuadW,cuadH);Ese es el codigo que hice hasta ahora.
Automaticamente el script mide el escenario y crea la cantidad de recuadros necesarios para ocupar el escenario (ordenarlos) y bordear con uno mas para tener espacio de hacer saltarlos hacia el otro lado a medida ke lo movemos.
Ahi solo funciona el movimiento horizontal (para facilitarme el debug) y solo hace saltar los cuadros cuando arrastramos el mapa hacia la izquierda.
El problema: Funciona cuando nos movemos lentamente. PERO cuando dezplasamos rapido la distancia entre _root.mapa.centro._xmouse aumento mientras el recuadro saltaba. por lo que los demas cuadros se siguieron dezplasando, por lo que se me corren.
Para probar mi codigo solo copien y peguen ese script en el fotograma 1 y cree un movieclip con un cuadrado de 200x200 pixels linkeado a actionscript como: "cuad"
Saludos, gracias y espero ke me ayuden
