Muchas gracias, Jorge, sobre todo por contestar tan rápidamente; siento que ya casi lo tengo. Los ítems a recoger están situados directamente en la línea de tiempo. Pero creo que no me he explicado bien. Los ítems sé hacerlos desaparecer, pero lo que realmente me interesa es que NUNCA MÁS vuelvan a aparecer, por ejemplo:
- en el caso de si cojo los ítems, voy a otro frame y vuelvo al mismo frame en donde estaban los ítems.
- o en el caso de que cierre el archivo y lo vuelva a abrir.
Por poner un ejemplo, las monedas grandes de new super mario bros: entras en una fase y coges las 3 monedas grandes existentes en esa fase. Si grabas y vuelves a entrar a la misma fase hay un hueco en donde estaban dichas monedas, pero ya no están. Yo quiero hacer lo mismo, pero que se grabe automáticamente.
Aquí está el archivo con el que estoy testeando esta acción, pero no funciona como yo desearía:
http://img59.xooimage.com/views/e/c/0/ayuda_array-3ca7e62.swf/
y aquí el código (que me sugirió un amigo), basado en arrays:
éste está en el primer frame de la raíz principal:
Código ActionScript :
stop();
var monNVL1_so = SharedObject.getLocal("presentes");
if (monNVL1_so.data.presente == undefined) {
monNVL1_array = [[1], [1], [1], [1], [1], [1], [1], [1]];
} else monNVL1_array = monNVL1_so.data.unlocked;
for (a=0; a<8; a++) {
this["monNVL1_"+(a+1)] = monNVL1_array[a][0];
}
Cada moneda tiene como nombre de instancia monNVL_1_1, monNVL_1_2, monNVL_1_3 ...(moneda nivel 1 uno, moneda nivel 1 dos, moneda nivel 1 tres ...).
Y aquí está el código asignado a la moneda 5, por ejemplo:
Código ActionScript :
onClipEvent (enterFrame) {
if (_root.bola.hitTest(this)) {
this.nextFrame();
}
if (_root.monNVL1_5 !== 1) this.unloadMovie();
if (this.hitTest(_root.bola) and _root.monNVL1_5 == 1) _root.monNVL1_5.data.presente = 2;
}