RESUMEN:
-->¿Como eliminar un MovieClip insertado por AttachMovie y que ha sido cargado a un array de MovieClips?
EXPLICACIÓN:
Nuevamente me dirijo a la sabia comunidad de Cristalab
Estoy realizando un pequeño proyecto para una asignatura en la Universidad. Yo insisto en que sale en Flash asi que llevo días trabajando en él (bueno, en mi tiempo libre).
Lo que tiene que hacer:
- -->Colocar puntos en pantalla (vértices). //Listo
-->Borrar los puntos. //Aquí voy
-->Unir los puntos mediante lineas (aristas). //Pendiente
-->(Y algunas otras funciones que espero salgan mucho más fácil de salir estas.)
Y lo que llevo es lo siguiente (es un .swf):
(No se fijen en la parte gráfica, es provisional. Por el momento me interesa más la funcionalidad.)
Lo que no logro es eliminar bien los vértices!
Lo que tengo es lo siguiente:
- -->Un array global que contiene los MovieClips "Vertices" agregados a la pelicula con AttachMovie.
He aquí el código:
Código :
/*ESTE CÓDIGO ES PARTE DE UNA FUNCIÓN Y SI FUNCIONA*/
//Sumamos 1 al contador de vertices, el cual se inició en 0.
NombreVertices++;
//Asignamos el nuevo MC a la variable "NuevoMC".
NuevoMC = attachMovie("Vertice", "v"+NombreVertices,
NombreVertices,
{_x:_xmouse, _y:_ymouse})
//Insertamos el vértice en el vector de vertices.
Vertices_array.splice(NombreVertices-1, 0, NuevoMC);
//Cambiamos el nombre del vértice que aparece en pantalla.
Vertices_array[NombreVertices-1].Nombre_txt.text = NombreVertices;
//Salimos de la función dibujar asignando falso a la variable "dibujar".
dibujar = false;Ahora, lo que necesito es eliminar el MC y he programado esta función:
Código :
function Eliminar(PosEliminar) {
/*Intercambiamos el último vértice con el que vamos a eliminar para
cambiar únicamente el último vértice y no todos los que estan
despues de este.*/
AEliminar = _global.Vertices_array[PosEliminar-1];
_global.Vertices_array[PosEliminar-1] = _global.Vertices_array[_root.NombreVertices-1];
_global.Vertices_array[_root.NombreVertices-1] = AEliminar;
//Intercambiamos profundidades:
AEliminar.swapDepths(_global.Vertices_array[PosEliminar-1]);
//Eliminamos el último vértice del vector de vértices.
_global.Vertices_array.pop();
/*Eliminamos el vértice de pantalla. (Tomen nota que le
asigné a la variable "AEliminar el MC por lo que sigue allí.)*/
removeMovieClip(AEliminar);
/*Re-nombramos el vértice que hemos cambiado.
(Es decir al que cambiamos de la última posición a la posición
del MC que se eliminó.)*/
_global.Vertices_array[PosEliminar-1].Nombre_txt.text = PosEliminar;
_global.Vertices_array[PosEliminar-1]._name = "v"+PosEliminar;
//Re-asignamos la cantidad de vértices existentes.
_root.NombreVertices--;
}Esta función la jalo desde el botón "Aceptar" y envio como parámetro el texto que ingresa el usuario (con sus validaciones correspondientes
¿Alguna idea de que rayos estoy haciendo mal? 
Mil gracias por sus aportes
Mil gracias por sus aportes
