Comunidad de diseño web y desarrollo en internet online

llamar una instancia de MC dentro de otro MC

Citar            
MensajeEscrito el 02 Dic 2006 01:36 am
buenas de nuevo!!
quiero hace que setiando el moviemiento de un MC en este caso en el eje Y;
los demas se muevan acrode a el; por ejemplo

Código :

onClipEvent (load) {
   _root.myVelocity;
   _root.myStop;
}

onClipEvent (enterFrame) {
   
   if ( pri._y > 320) {
      this._y += myvelocity;
   } else if ( pri._y < 355) {
      this._y += myStop;
   }
}


donde "pri" es la instancia del clip inicial; ahora nose si llamarlo "pri._y" de echo no funciona
como tengo q hacer????
alguna ayudita plis!!


[zah] Agregadas etiquetas code [/zah]

Por Marcexl

11 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 02 Dic 2006 03:57 am
les dejo el .fla a ver si me entienden y se copan!!! jeje
http://www.wikiupload.com/download_page.php?id=34420

las cosa es que funcione onda cuando el primero baja 0 el otro se mueve 1, y asi sucesivamente
NEED HELP!!
soy malisimo con AS, recien empiezo :-(

Por Marcexl

11 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 02 Dic 2006 08:18 am
Entiendo que myVelocity y myStop están en el _root de la película, pero no les asignas ningún valor. De hecho ese trozo de AS (el del onLoad) no tiene apariencia de hacer nada.

El onEnterFrame es local al clip donde lo estás poniendo, con lo cual, si vas a buscar myvelocity (ojo con las mayúsculas y minúsculas, que AS las diferencia) y myStop no las encuentra dentro del clip actual y valdrán undefined.

Cambia esas cosas y nos cuentas.
Un saludo

Por Pachi

8 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 02 Dic 2006 04:36 pm
ok
en realidad si tienen valor

Código :

stop();
_global.myVelocity = 1;
_global.myStop = 0;


y estan el primer frame no, de echo el clip inicial si las carga!! y funciona
el tema es como hacer q reconozca el nombre de la instancia del clip inicial llamese "pri" en el segundo llamese "sec"
osea, les paso el codigo del primer clip.

Código :

onClipEvent (load) {
   _root.myVelocity;
   _root.myStop;
}

onClipEvent (enterFrame) {
   this._y += myVelocity;   
   if ( this._y <= 0) {
      this._y += myVelocity;
      
   } else if (this._y >= 355) {
      this._y = 0;
   }
}

en este caso el clip loopea ya que vuelve a "cero"

el codigo del segundo es algo parecido solo que se tendria q moverse solo cuando el primer MC , pasa daterminado numero.

[zah] Agregadas etiquetas code [/zah]

Por Marcexl

11 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Dic 2006 06:18 am
Que tal!!

Te vuelvo a repetir, conociendo ya todo el código que las líneas

onClipEvent (load) {
_root.myVelocity;
_root.myStop;
}

no hacen nada. Para empezar, porque no puedes ejecutar una variable. Podrías ejecutar una variable si ésta contuviera la referencia a una función. Es decir, si myVelocity y myStop fueran una función, éstas podrían ejecutarse de la siguiente forma

onClipEvent (load) {
_root.myVelocity();
_root.myStop();
}

(ojo con los paréntesis)

En caso contrario, lo que tienes son dos errores de ejecución que el compilador se salta y ya está.
En segundo término ten en cuenta que myVelocity y myStop no son variables de root, sino que son variables globales (_global). Te desaconsejo usar este tipo de variables como norma, dado que, si no eres muy metódico con la programación y comienzas a usar variables global por todos sitios es posible que te de un error y no sepas de donde te viene éste.

En segundo término...
Lo suyo en estos casos, si quieres hacer que varios clips que se muevan al unísono respecto al movimiento de uno de ellos es que ejecutes una función si la posición del primero cambia.

clip1.onLoad=function() {
this.inicpos_x=new Number();
this.inicpos_x=this._x;
}

clip1.onEnterFrame=function () {
if (this._x!=this.inicpos_x) {
_root.actualizaClips();
this.inicpos_x=this._x;
}
}

function actualizaClips (Void):Void {
clip2._x=clip1._x;
clip3._x=clip1._x;
//...
}

Así centralizas la programación, no teniéndola que buscar dentro de cada clip para corregirla, en caso de que hubiera que hacerlo.
Espero haberte ayudado.

Un saludo.

Por Pachi

8 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 05 Dic 2006 12:29 am
claro
bueno en este tiempo es he estado labuando con funciones
pero no dan el efecto requerido.
con la funcion q me estas dando soluciono parte del problema gracias!!
todavia no lo termine cuando lo haga les digo como quedo!
Adeus!!

Por Marcexl

11 de clabLevel



Genero:Masculino  

firefox

 

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