Comunidad de diseño web y desarrollo en internet online

Barra de energía ( que no precarga) (De nuevo)

Citar            
MensajeEscrito el 02 Ago 2005 10:10 am
Wenas hace bastante tiempo hize esta pregunta pero probando varias cosas todavía no he conseguido los resultados.

El caso es que estoy hciendo un juego y he creado la barra de vitalidad del personaje. Lo que quiero saber es como hago para que cuando quiera disminuir la barra un tanto por ciento que variable o lo que sea tengo que utiliizar. Lo mismo si quiero aumentarla.

Me facilitasteis este código pero no lo entiendo muy bien, si alguien m hace una breve explicación please.

Código :

MovieClip.prototype.disminuir = function(delta) {
   this.delta = delta;
   this.d = this._width-this.delta;
   if (this.d<0) {
      this.d = 0;
   }
   this.onEnterFrame = function() {
      this._width += (this.d-this._width)*.321;
      if (Math.round(this._width*10) == Math.round(this.d*10)) {
         delete this.onEnterFrame;
      }
   };
};
this.createEmptyMovieClip("barra", 1);
barra.lineStyle(1);
barra.beginFill(0);
barra.lineTo(100, 0);
barra.lineTo(100, 10);
barra.lineTo(0, 10);
barra.endFill();
barra._x = 100;
barra._y = 100;
a = new Object();
a.onMouseDown = function() {
   barra.disminuir(10);
};
Mouse.addListener(a);



También tenía un tutorial pero mi flash (Professional MX 2004) no lo podía cojer.

Muchas gracias por adelantado !!!.

Por Nina

31 de clabLevel



Genero:Femenino  

mozilla
Citar            
MensajeEscrito el 02 Ago 2005 03:21 pm
ok mira en este caso te recomiendo el uso de hitTest F1 en flash
aqui te dejo un ejemplo "selecciona el circulo y pasalo por el personaje XD"


el Script

Código :

//function que permite verificar el choque de  objetos
MovieClip.prototype.hit   =   function(nChoque:Number,mcPersonaje:MovieClip,mcChoque:MovieClip,mcBarra){
   //Variable de la funcion
      var nDismin:Number;
   
   //obtener la baja de vida
      nDismin = mcBarra.mcVida._width - nChoque;
   
   //en caso golpee al personaje
      if (mcChoque.hitTest(mcPersonaje)) {
         //colocamos la baja de vida a la barra
            mcBarra.mcVida._width   =   nDismin;
            //si la baja de vida es menor a 0 ya no bajara más
               if (nDismin<0) {
                     mcBarra.mcVida._width = 0;
                  //limpiamos el interval
                  clearInterval(inHit);
                  trace("muerto XD");
               };//if
      };//if
};//if

mcCirculo.onPress   =   function(){
   //si quedo el interval suelto lo limpiamos
      clearInterval(inHit);
   //iniamos el arrastre
      this.startDrag(true);
   //creamos el interval y damos lo valores
      inHit   =   setInterval(hit,100,5,mcPersonaje,this,mcBarra);
}

mcCirculo.onRelease   =   function(){
   //detenemos el arrastre
      this.stopDrag();
   //limpiamos el interval
      clearInterval(inHit);
}

el archivo fla bajalo aqui

Saludos :D

Por flasher

Invitado



 

firefox
Citar            
MensajeEscrito el 23 Sep 2005 02:27 pm
Thanks , m sirvió mucho de veras.

Pero tng otra duda respecto al mismo flash que pusiste arriba y que tmb tng el .fla que pusistes para descargar.

He puesto un botón abajo para que adelante un frame y a partir de ahí puse que el circulo pasase automaticamente con una interpolación d movimiento por encima del muñeco para que la barra bajase de vida sin necesidad de yo mover el circulo.

Este pasa por encima pero no me da resultado no baja la vida.

A ver si me lo podeis solucionar.

Saludos y gracias por adelantado !!.

Por Nina

31 de clabLevel



Genero:Femenino  

firefox

 

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