Llamar a escenas desde menú elástico
Publicado por Armanda Sorel (1 intervención) el 04/11/2009 22:03:56
Hola a todos,
En primer lugar debo decir que soy verdaderamente principiante en AS2. Encontré un bonito menú elástico pero necesito que cada botón llame a una escena o identificador diferente. El código está hecho con Array y me imagino que por allí está la respuesta, pero como no sé qué colocar ni en donde no puedo hacerlo.
El código es el siguientes:
Lnombre = new Array("Home", "La Asociación", "Patrocinadores", "Premiaciones Anteriores", "Galería de Fotos", "Difusión en Medios", "Ganadores 2008", "Contáctenos");
Lfotogramas = new Array(10, 20, 30, 40);
posx = 870;
posy = 80;
distancia = 30;
prepara();
function prepara() {
vel = new Array();
long = Lnombre.length;
for (n=0; n<Lnombre.length; n++) {
vel[n] = 0;
_root.attachMovie("boton", "b"+n, n);
_root["b"+n].titulo = Lnombre[n];
_root["b"+n]._x = posx;
_root["b"+n]._y = posy+(n*distancia);
_root["b"+n].onRelease = function() {
_root.gotoAndStop(Lfotogramas[n]);
};
_root["b"+n].onRollOver = function() {
sel = this;
};
_root["b"+n].onRollOut = function() {
sel = 0;
};
}
sel = 0;
idmove = setInterval(mover, 20);
}
// Movimiento
function mover() {
for (n=0; n<Lnombre.length; n++) {
if (sel == _root["b"+n]) {
dest = 30;
destino =150;
} else {
dest = 1;
destino =100;
}
if (_root["b"+n]._currentframe<dest) {
_root["b"+n].gotoAndStop(_root["b"+n]._currentframe+1);
}
if (_root["b"+n]._currentframe>dest) {
_root["b"+n].gotoAndStop(_root["b"+n]._currentframe-1);
}
dif = destino-_root["b"+n]._xscale;
elast = 0.03;
fric = 0.9;
// trace(vel[n]);
vel[n] = (vel[n]*fric)+((dif)*elast);
_root["b"+n]._xscale += vel[n];
_root["b"+n]._yscale += vel[n];
}
}
Gracias por la ayuda, de antemano.
En primer lugar debo decir que soy verdaderamente principiante en AS2. Encontré un bonito menú elástico pero necesito que cada botón llame a una escena o identificador diferente. El código está hecho con Array y me imagino que por allí está la respuesta, pero como no sé qué colocar ni en donde no puedo hacerlo.
El código es el siguientes:
Lnombre = new Array("Home", "La Asociación", "Patrocinadores", "Premiaciones Anteriores", "Galería de Fotos", "Difusión en Medios", "Ganadores 2008", "Contáctenos");
Lfotogramas = new Array(10, 20, 30, 40);
posx = 870;
posy = 80;
distancia = 30;
prepara();
function prepara() {
vel = new Array();
long = Lnombre.length;
for (n=0; n<Lnombre.length; n++) {
vel[n] = 0;
_root.attachMovie("boton", "b"+n, n);
_root["b"+n].titulo = Lnombre[n];
_root["b"+n]._x = posx;
_root["b"+n]._y = posy+(n*distancia);
_root["b"+n].onRelease = function() {
_root.gotoAndStop(Lfotogramas[n]);
};
_root["b"+n].onRollOver = function() {
sel = this;
};
_root["b"+n].onRollOut = function() {
sel = 0;
};
}
sel = 0;
idmove = setInterval(mover, 20);
}
// Movimiento
function mover() {
for (n=0; n<Lnombre.length; n++) {
if (sel == _root["b"+n]) {
dest = 30;
destino =150;
} else {
dest = 1;
destino =100;
}
if (_root["b"+n]._currentframe<dest) {
_root["b"+n].gotoAndStop(_root["b"+n]._currentframe+1);
}
if (_root["b"+n]._currentframe>dest) {
_root["b"+n].gotoAndStop(_root["b"+n]._currentframe-1);
}
dif = destino-_root["b"+n]._xscale;
elast = 0.03;
fric = 0.9;
// trace(vel[n]);
vel[n] = (vel[n]*fric)+((dif)*elast);
_root["b"+n]._xscale += vel[n];
_root["b"+n]._yscale += vel[n];
}
}
Gracias por la ayuda, de antemano.
Valora esta pregunta


0