Álan_nov 0 Denunciar post Postado Junho 2, 2010 "Criei" um jogo de tiro em flash, onde o primeiro frame é para você dar "play" e iniciar o jogo no segundo frame. Até consegui fazer isso, porém não no mesmo fla. que o jogo, ai ao colocar a As3 nesse mesmo fla. que o jogo não deu certo, aparece o seguinte erro: The class or interface 'MouseEvent' could not be loaded. Se isso fosse em AS2 não teria problemas, porém o jogo que consegui é em AS3, então logicamente tenho que seguir todo restante em AS3. Ai vai minha dúvida, como faço para ao clicar no botão ele vá para o próximo frame? Desde já agradeço a todos que ajudarem. Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Junho 3, 2010 import flash.events.MouseEvent; Porém so precisa importar esse pacote se tiver trabalahndo com classes, se tiver construindo o jogo de forma procedural, não precisa do import não. Para clicar e ir para o proximo frame, pode fazer assim: botao.addEventListener(MouseEvent.CLICK, vai); function vai(e:MouseEvent):void{ nextFrame(); //ou gotoAndStop(numero do frame); } Abs Compartilhar este post Link para o post Compartilhar em outros sites
Álan_nov 0 Denunciar post Postado Junho 4, 2010 ontém era feriado, voltei hoje ao trabalho. Vou ver fazer isso, caso n consiga, enviarei os códigos para vcs verem. Desculpe a demora ao responder Compartilhar este post Link para o post Compartilhar em outros sites
Álan_nov 0 Denunciar post Postado Junho 7, 2010 Não sei o que tem de errado, se puderem ajudar. Lá vai o AS3 Coloquei isso no primeiro frame: stop(); btn.addEventListener(MouseEvent.CLICK, botao1); function botao1(evento:MouseEvent):void { trace("funcionou"); //this.play(); gotoAndPlay("2"); } E no segundo frame o jogo: /* - Animação Programada Este exemplo mostra como criar, posicionar, animar, testar acerto da figura com o mouse e deletar MCs */ // Definição das variáveis que serão usadas para estatísticas _global.acertos = 0; //Armazena a quantidade de logos atingidos _global.erros = 0; // Armazena a quantidade de logos que "fugiram" _global.cliques = 0; // Armazena a quantidad e cliques (acertos e erros) _global.cProfundidade = 100; _global.nivel = 1; // Definição das variáveis (tempo de execução) que serão usadas nos cálculos var xVelocidade:Number = 5; var larguraStage:Number = 900; //Definição da área dos cliques var alturaStage:Number = 450; // Definição da área dos cliques // Inclusão a instância do MC alvo_mc da Library no Stage. // Este clip será usado como um cursor personalizado this.attachMovie("alvo_mc", "alvo_mc", 5001); // Oculta o cursor do mouse Mouse.hide(); // Cria Listener para o Mouse var mouseListener:Object = new Object(); /* Sempre que o cursor do mouse mover-se para fora do arquivo SWF, a posição será atualizada na instância do alvo_mc no Stage. */ mouseListener.onMouseMove = function() { alvo_mc._x = _xmouse; alvo_mc._y = _ymouse; }; // Quando o botão do mouse é clicado, verificar se o cursor está fora dos limites do Stage. //Em caso positivo, incrementa o número de cliques dados mouseListener.onMouseDown = function() { _global.cliques++; if (fundo_mc.hitTest(_xmouse, _ymouse, false)) { _global.acertos++; } }; Mouse.addListener(mouseListener); // Define um TextFormat que é usado para formatar o campo estatisticas_txt. var meu_textoFormatado:TextFormat = new TextFormat(); meu_textoFormatado.bold = false; meu_textoFormatado.font = "Helvetica-Narrow"; meu_textoFormatado.size = 20; meu_textoFormatado.color = 0xffffff; // Cria um campo texto para mostrar as estatísticas do jogador. this.createTextField("estatisticas_txt", 5000, 280, 525, 700, 75); // Aplica o TextFormat no campo texto. estatisticas_txt.setNewTextFormat(meu_textoFormatado); estatisticas_txt.selectable = false; updateStats(); // Inclui um evento onEnterFrame na timeline principal para que um novo logo seja constantemente gerado no jogo. this.onEnterFrame = function() { // Inclui aleatoriamente um novo logo if (randRange(0, 20) == 0) { // anexa uma nova instância do logo da Library no Stage e define uma profundidade única var randomLogo:Number = randRange(1, 6); // Observe que o nome do MC a seguir é obtido pelo Flash através do Identifier do Linkage var thisMC:MovieClip = this.attachMovie("logo"+randomLogo+"_mc", "logoAlvo"+_global.cProfundidade+"_mc", _global.cProfundidade); _global.cProfundidade++; // Configura a posição inicial do logoAlvo_mc à esquerda do Stage thisMC._x = -thisMC._width; /* Cria um número aleatório entre 80 e 100. Será usado para o tamanho (escala) do MC atual, alpha e velocidade que se moverá pelo Stage. */ var escala = randRange(80, 100); /* Configura as propriedades do _xescala e _yescala no MC atual.*/ thisMC._xescala = escala; thisMC._yescala = escala; thisMC._alpha = escala; thisMC.speed = xVelocidade+randRange(0, 3)+_global.nivel; /* Configura um valor aleatório para _x. Agora, ao invés de todos os logos voarem sobre o mesmo caminho, eles variam sua posição vertical levemente. 500 e 100 */ thisMC._x = Math.round(Math.random()*400)+300; /* Cria um manipulador onEnterFrame que executam algumas dúzias de vezes por segundo */ thisMC.onEnterFrame = function() { /* Move o logo horizontalmente ao longo do Stage. No momento todos os logos movem-se da esquerda para a direita */ this._y += this.speed; /* Decrementa levemente a posição do _y no MC atual. Isto faz com que pareça que os logos estejam voando levemente mais alto do que movem-se no Stage.*/ this._x -= .4; /* Se a posição atual do logo é maior do que o Stage, conta o logo como "perdido" e apaga sua instância. */ if (this._y>alturaStage) { _global.erros++; updateStats(); this.removeMovieClip(); } }; // Quando o logo é pressionado, contar como um "acerto" thisMC.onPress = function() { // Atualizar as estatísticas do jogador _global.acertos++; if ((_global.acertos%40) == 0) { _global.nivel++; // Mudança de nível //this.gotoAndPlay("nivelacima"); } updateStats(); /* vai para o rótulo do MC chamado "hit" (que permite você mostrar uma animação engenhosa quando a instância é atingida.) */ this.gotoAndPlay("hit"); /* Configura algumas variáveis locais que você usará para animar o logo caindo pelo Stage. */ var xmov = this._x; var gravity = 20; // Cria um evento onEnterFrame para a instância do MC atual. this.onEnterFrame = function() { xmov += gravity; ymov *= 0.5; /* incrementa a rotação do MC atual no sentido horário em 5 graus. */ this._rotation += 1; /* Configura as propriedades _x e _y do MC no Stage, isto permite-nos fazer com que a queda seja mais realista */ this._y += xVelocidade; this._x = ymov; /* Após anular a posição _y position no Stage, remova o MC para que suas coordenadas não sejam continuamente calculadas */ if (this._x>alturaStage) { this.removeMovieClip(); } }; /* Apagar o manipulador de evento onPress. Isto faz com que o logo não possa ser continuamente clicado enquanto ele está caindo pelo Stage. */ delete this.onPress; }; } }; // Função que atualiza as estatísticas no Stage function updateStats() { var precisao:Number = Math.round((_global.acertos/_global.cliques)*100); if (isNaN(precisao)) { precisao = 0; } estatisticas_txt.text = "Cliques: "+_global.cliques+" "+"Acertos: "+_global.acertos+" "+"Erros: "+_global.erros+" "+"Precisão: "+precisao+"%"+" "+"Nível: "+_global.nivel; } /* Função que retorna um inteiro aleatório entre dois números especificados. Isto permite que você inclua algumas diferenças sutis de tamanho e velocidade para o MC no Stage.*/ function randRange(minNum:Number, maxNum:Number):Number { return (Math.floor(Math.random()*(maxNum-minNum+1))+minNum); } Desde já agradeço Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Junho 7, 2010 Simplesmente o código do 2 frame ta em as 2. Abs Compartilhar este post Link para o post Compartilhar em outros sites
Álan_nov 0 Denunciar post Postado Junho 8, 2010 Simplesmente o código do 2 frame ta em as 2. Abs Bahhhh que coisinha! Baixei o arquivo por AS3, ai vi na AS isso: Mouse.addListener(mouseListener); já pense, isso é AS3 certo Mas cara, valeu mesmo assim. abração Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Junho 8, 2010 beleza http://forum.imasters.com.br/public/style_emoticons/default/grin.gif Abs Compartilhar este post Link para o post Compartilhar em outros sites