§uiciDa£ Postado Abril 12, 2006 Denunciar Share Postado Abril 12, 2006 Olá galera, eu montei essa classe aqui para um projeto q estou desenvolvendo class Funções { var movie:MovieClip; var pontos:MovieClip = Array(); var push:Boolean = false; var mcPrinc:MovieClip; function makeMut():Void { pontos[0].gotoAndPlay(2); pontos[1].gotoAndPlay(2); pontos[2].gotoAndPlay(2); } function Funções(mc:MovieClip) { movie = mc; pontos[0] = _root.bola1.duplicateMovieClip("Tbola1",_root.getNextHighestDepth()); pontos[1] = _root.bola1.duplicateMovieClip("Tbola2",_root.getNextHighestDepth()); pontos[2] = _root.bola1.duplicateMovieClip("Tbola3",_root.getNextHighestDepth()); pontos[3] = _root.bola1.duplicateMovieClip("Tbola4",_root.getNextHighestDepth()); pontos[4] = _root.bola1.duplicateMovieClip("Tbola5",_root.getNextHighestDepth()); mcPrinc = _root.Tbola4 makeMut(); } function makeRectangle():Void { pontos[0]._x = movie._x; pontos[0]._y = movie._y; pontos[1]._x = movie._x+(movie._xscale/2); pontos[1]._y = movie._y; pontos[2]._x = movie._x; pontos[2]._y = movie._y+(movie._yscale/2); pontos[3]._x = movie._x+(movie._xscale/2); pontos[3]._y = movie._y+(movie._yscale/2); } function refresh() { _root.Tbola4.onRollOver = function() { _root.Tbola4.gotoAndPlay(3); }; _root.Tbola4.onRollOut = function() { _root.Tbola4.gotoAndPlay(1); }; _root.Tbola4.onMouseDown = function() { _root.funcoes.push = true; }; _root.Tbola4.onMouseUp = function() { _root.funcoes.push = false; }; movie.onMouseMove = function() { trace(_root.funcoes.push); trace(push); if (_root.funcoes.push) { trace("OK"); var xN:Number; var yN:Number; xN = (_root._xmouse-_root.funcoes.movie._x)*2; yN = (_root._ymouse-_root.funcoes.movie._y)*2; if (xN>30 && xN <960) { _root.funcoes.movie._xscale = xN; } if (yN>30 && yN < 600) { _root.funcoes.movie._yscale = yN; } } }; } } então, só que nela tme um pequeno problema nesta parte movie.onMouseMove = function() { trace(_root.funcoes.push); trace(push); if (_root.funcoes.push) { trace("OK"); var xN:Number; var yN:Number; xN = (_root._xmouse-_root.funcoes.movie._x)*2; yN = (_root._ymouse-_root.funcoes.movie._y)*2; if (xN>30 && xN <960) { _root.funcoes.movie._xscale = xN; } if (yN>30 && yN < 600) { _root.funcoes.movie._yscale = yN; } } }; estão vendo la a pate do : trace(_root.funcoes.push); trace(push); if (_root.funcoes.push) { eu gostaria de saber porque eu não posso usar apenas o 'push', e tenho q usar o '_root.funcoes.push' pra identificar, eu estou fazendo algo errado ??eu acho que sim, mais sei lá =/t+ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rutkoski Postado Abril 12, 2006 Denunciar Share Postado Abril 12, 2006 Cara, você não está acessando corretamente as propriedades.Push é uma propriedade da classe Funções. Pra acessar ela você tem que usar _this.push. O _this indica que push está dentro da classe. Faça isso sempre que for acesar uma das propriedades da classe, como movie, pontos, push... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 §uiciDa£ Postado Abril 12, 2006 Autor Denunciar Share Postado Abril 12, 2006 oloko veio, aqui num funcina não, eu coloquei trace(this.push); e ele retorna : undefined eu tentei usar o _this (com '_' ), como você fala mais ele não funciona Oo"me ajuda aew xPkkt+ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rutkoski Postado Abril 12, 2006 Denunciar Share Postado Abril 12, 2006 Bom, errei no _this, é this mesmo, sorry.Mas a moral é essa mesma. O erro deve estar em algum outro lugar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 §uiciDa£ Postado Abril 12, 2006 Autor Denunciar Share Postado Abril 12, 2006 oloko veio, amis se eu coloco_root.funcoes.push, ele retorna certinho, uai q estranho Oo"vo faze uns teste aki xPt+ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rutkoski Postado Abril 13, 2006 Denunciar Share Postado Abril 13, 2006 Sim, por que você está apontando pro objeto que você criou. Mas digamos que você utilizasse ele no _root e depois criasse outro objetos em outro lugar, digamos _root.outroMovieClip.funcoes, você não iria querer ter que mudar a classe, ou criar outra. Uma das maiores vantagens da orientação a objetos é a reutilização. Criar códigos genéricos que funcionem em diferentes situações.Usando o this você sempre vai estar apontando pro objeto em sí. Como eu disse, o erro deve estar em outro lugar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
§uiciDa£
Olá galera, eu montei essa classe aqui para um projeto q estou desenvolvendo
então, só que nela tme um pequeno problema nesta parte estão vendo la a pate do :eu gostaria de saber porque eu não posso usar apenas o 'push', e tenho q usar o '_root.funcoes.push' pra identificar, eu estou fazendo algo errado ??
eu acho que sim, mais sei lá =/
t+
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.