Comunidad de diseño web y desarrollo en internet online

Problemas con contador de clicks

Citar            
MensajeEscrito el 21 Abr 2014 10:41 am
Necesito ayuda con un contador de clicks.
Me gustaría que cada vez que se hiciese click en un objeto (hay 7) se sumase a un contador.
He creado un texto dinámico para el contador y cada objeto es un MC.
He intentado mil cosas y no hay manera, por favor si alguien pudiese ayudarme estaría muy agradecida.
Muchas gracias

Por andreang12

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Abr 2014 02:14 pm

Por rodrigolopezpeker

61 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Abr 2014 02:59 pm

Código :

var mc:MovieClip;
var contadorEspecial:uint=0;
var contadorGeneral:uint=0;

for (var i:uint=0; i<7; i++) {
   mc = new MovieClip();
   addChild(mc);
   mc.name='clip'+i;
   mc.x=i*55+80;
   mc.y=40;
   mc.especial = (i%3 == 0) ? true : false;
   mc.general=false;
   
   if (mc.especial) {
      trace('mclip '+i+' es contable');
   }

   var borderColor:uint = (mc.especial) ? 0xFF0000 : 0xCCCCCC;

   var spr:Sprite = new Sprite();
   spr.graphics.beginFill(0xFFCC00);
   spr.graphics.lineStyle(0.1,borderColor);
   spr.graphics.drawRect(0,0,30,30);
   mc.addChild(spr);
   
   mc.addEventListener(MouseEvent.CLICK, hazLoTuyo);
}

function hazLoTuyo(e:MouseEvent):void{
   var mc = e.target.parent;
   trace(mc.name, mc.especial, mc.general);
   
   if(!mc.general){
      mc.general = true;
      
      mc.getChildAt(0).graphics.beginFill(0xFFCC00);
      var borderColor:uint = (mc.especial) ? 0xFF0000 : 0x000000;
      mc.getChildAt(0).graphics.lineStyle(2,borderColor);
      mc.getChildAt(0).graphics.drawRect(0,0,30,30);
      
      contadorGeneral++;
   }
   
   if(mc.especial)
   contadorEspecial++;
   
   MovieClip(root).txt.text = "Contador General = "+contadorGeneral + "\nContador Especial = " + contadorEspecial;
}

// TXT
var txt:TextField = new TextField();
addChild(txt);
with(txt){
x = 100;
y = 200;
width=300;
height=150;
border = true;
name = 'txt';
}



contadorGeneral esta relacionado con una bandera que controlas aprovechando que a los movieClips les puedes pasar vairables (mc.general)

Por comicSans

Claber

151 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Abr 2014 07:43 pm
No creo que root.txt.text is valido... root != main timeline.

Código ActionScript :

var mc:MovieClip;
var contadorEspecial:uint=0;
var contadorGeneral:uint=0;

for (var i:uint=0; i<7; i++) {
   mc = new MovieClip();
   addChild(mc);
   mc.name='clip'+i;
   mc.x=i*55+80;
   mc.y=40;
   mc.especial = (i%3 == 0) ? true : false;
   mc.general=false;
   if (mc.especial) {
      trace('mclip '+i+' es contable');
   }

   var borderColor:uint = (mc.especial) ? 0xFF0000 : 0xCCCCCC;

   var spr:Sprite = new Sprite();
   spr.graphics.beginFill(0xFFCC00);
   spr.graphics.lineStyle(0.1,borderColor);
   spr.graphics.drawRect(0,0,30,30);
   mc.addChild(spr);
   mc.spr = spr ;
   mc.addEventListener(MouseEvent.CLICK, hazLoTuyo);
}

function hazLoTuyo(e:MouseEvent):void{
   var mc = e.target.parent;
   trace(mc.name, mc.especial, mc.general);
   
   if(!mc.general){
      mc.general = true;
      mc.spr.graphics.beginFill(0xFFCC00);
      var borderColor:uint = (mc.especial) ? 0xFF0000 : 0x000000;
      mc.spr.graphics.lineStyle(2,borderColor);
      mc.spr.graphics.drawRect(0,0,30,30);
      
      contadorGeneral++;
   }
   
   if(mc.especial) contadorEspecial++;
    txt.text = "Contador General = "+contadorGeneral + "\nContador Especial = " + contadorEspecial;
}

Por rodrigolopezpeker

61 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.