Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marcos.cardoso

[Resolvido]Utilizando Array

Recommended Posts

Bom dia,

 

no jogo que estou desenvolvendo tenho uma função que é responsável por verificar em que parte da timeline está. Essa função escolhe um entre os sete arrays que tenho dependendo do frame que estiver (pois cada frame é uma tela do jogo).

A questão é que quando tenho que mudar o array alguns deles ficam undefined e não entendo porque.

 

gostaria de saber se porque isso ocorre. Já tentei apagar os elementos do array antes de atribuir novos elementos, ja tentei colocar a função retornando um array, mas não deu certo.

 

Acredito que o problema esteja exatamente na atribuição dos novos elementos do array, pois o jogo é em função dos seus elementos e só dá problema quando de pende deles.

 

A seguir a função que escolhe o array:

function chooseArray():Void {
	if (this._currentframe == 3) {
		array = [alvoa101_mc, alvoa201_mc, alvoa301_mc, alvoa401_mc, alvoa501_mc, alvoa601_mc, alvoa701_mc, alvoe101_mc, alvoo101_mc, alvoo201_mc, alvoo301_mc, alvoo401_mc];
	}
	if (this._currentframe == 4) {
		array = [alvoa102_mc, alvoa202_mc, alvoa302_mc, alvoe102_mc, alvoe202_mc, alvoe302_mc, alvoo102_mc, alvoo202_mc, alvoo302_mc, alvou102_mc, alvou202_mc];
	}
	if (this._currentframe == 5) {
		array = [alvoa103_mc, alvoa203_mc, alvoe103_mc, alvoe203_mc, alvoo103_mc, alvoo203_mc, alvoo303_mc, alvoo403_mc, alvoo503_mc, alvoo603_mc, alvoo703_mc, alvoo803_mc];
	}
	if (this._currentframe == 6) {
		array = [alvoa104_mc, alvoa204_mc, alvoa304_mc, alvoa404_mc, alvoa504_mc, alvoo104_mc, alvoo204_mc, alvou104_mc];
	}
	if (this._currentframe == 7) {
		array = [alvoa105_mc, alvoa205_mc, alvoi105_mc, alvoi205_mc, alvoo105_mc, alvoo205_mc, alvoo305_mc, alvoo405_mc, alvoo505_mc];
	}
	if (this._currentframe == 8) {
		array = [alvoa106_mc, alvoa206_mc, alvoa306_mc, alvoa406_mc, alvoa506_mc, alvoe106_mc, alvoi106_mc, alvoi206_mc, alvoo106_mc, alvoo206_mc];
	}
	if (this._currentframe == 9) {
		array = [alvoa107_mc, alvoa207_mc, alvoa307_mc, alvoa407_mc, alvoe107_mc, alvoe207_mc, alvoe307_mc, alvoe407_mc, alvoo107_mc, alvoo207_mc, alvou107_mc];
	}
}

Desde já agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não teria que preencher esse vetor de maneira dinâmica não?

Tipo


var array:Array = new Array();

if(_root._currentframe==1){
	for(i=0;i<3;i++){
		array[i] = i; //Aqui entraria seus mcs...
		trace(array);
		}
		
	}

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não porque os elementos dele são os nomes de instância dos objetos que tenho em cada tela. Assim, tenho um vetor para cada tela, somando 7 por enquanto.

Toda vez que pressionar o botao que passa para a proxima tela, chamo a função chooseArray, para verificar em qual frame eu estou. Mas justamente nesse ponto ta o problema, porque verifica certo, mas na hora de atribuir os elemento para o array alguns deles vão como undefined.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

 

valeu Kisuke. Problema resolvido.

Nunca tinha pensado nisso, mas acabei de crer que o Flash tem seus mistérios. Como pode em um aplicativo com sete partes idênticas três funcionarem e as outras quatro não. Resolvi criando outro movieclip e substituindo o anterior que servia como alvo. Vai entender.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.