Comunidad de diseño web y desarrollo en internet online

Como hacer que un MC siga a otro MC

Citar            
MensajeEscrito el 31 Ago 2010 04:25 am
Hola soy nuevo y quisiera saber si me podrían ayudar con un código, bueno, estoy haciendo un juego tipo S.A.S y necesito hacer que un MC (clip de película) siga a otro, en este caso, el enemigo siga al personaje y se detenga cierta distancia antes de el.
Logre hacer que el enemigo siguiera al personaje pero no es lo que quería, el enemigo queda totalmente encima del personaje y cuando muevo al personaje con las flechas del teclado parece que estuviera moviendo al enemigo! :S
El código que utilice es este:

Código ActionScript :

this.onEnterFrame = function() {
   enemigo._x = personaje._x;
   enemigo._y = personaje._y;
   _x += (posicionX-_x)/velocidad;
   _y += (posicionY-_y)/velocidad;
}

Tuve que poner a el enemigo y a el personaje, en la misma capa y pegar el código en ella...

Bueno espero que me puedan ayudar, se los agradezco de antemano!

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

chrome
Citar            
MensajeEscrito el 31 Ago 2010 02:36 pm
No iguales la posición de ambos, solo iguala la velocidad (sobre ambos ejes)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 31 Ago 2010 10:39 pm
Ya lo solucione! (:
Utilice este código:

Código ActionScript :

this.onEnterFrame = function() {
   personajeX = personaje._x ;
   enemigoX = enemigo._x ;
   velocidad = 3;
if(personajeX < enemigoX){enemigo._x -=velocidad;}
if(personajeX > enemigoX){enemigo._x +=velocidad;}
   personajeY = personaje._Y ;
   enemigoY = enemigo._y ;
   velocidad = 3;
if(personajeY < enemigoY){enemigo._y -=velocidad;}
if(personajeY > enemigoY){enemigo._y +=velocidad;}
}

Solo que ahora surge otro problema...
Como hacer para que el enemigo choque con las paredes? :S

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

chrome
Citar            
MensajeEscrito el 31 Ago 2010 11:20 pm
En realidad si pones ambos MC a 5 px uno de otro y haces esto:

[as]
velocidad = 3
this.onEnterFrame = function{
personaje._x +=velocidad
enemigo._x +=velocidad
}[/a+]

Ambos se mueven a la misma velocidad. Ahora debes usar un if para ver si han llegado a determinada posiciòn (la pared) e invertir la velocidad (y cambiar posiciones) frente a un choque.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

msie7
Citar            
MensajeEscrito el 16 Sep 2010 03:07 am
Te dejo este codigo q uso yo para un juego tasl ves te sirva

Código :

// I.A Enemigos n1



function eligeEnemigo() {    
  var hollows_01:MovieClip = this.attachMovie("hollows_01","hollows",100)
}
eligeEnemigo()
 
 hollows._x = 200; hollows._y = 150

hollows.onEnterFrame = function()
{
 a= mcPlayer1._x - hollows._x
 b= mcPlayer1._y - hollows._y
 c = Math.sqrt((a * a) + (b * b))
 angulo = -Math.atan2 (a, b) / (Math.PI / 180) + 180;
    
    
if((hollows._x < mcPlayer1._x)&& (c > 200))    {hollows._x+=8}

if((hollows._x > mcPlayer1._x)&&(c > 200))    {hollows._x-=8}        

if((hollows._y < mcPlayer1._y)&&(c> 200))    {hollows._y+=8}

if((hollows._y > mcPlayer1._y)&&(c>200))    {hollows._y-=8}    

if (b >50){hollows.gotoAndStop(1)}
    else{hollows.gotoAndStop(2)}

//Ahoro cuando ataca
ceroX =hollows._x
ceroY =hollows._y - 16


if (c < 130)
//function dispara()
{
    pro=100
var Cero:MovieClip = this.attachMovie("cero","cero",true,pro) 
pro++

Cero._rotation = -Math.atan2 (a, b) / (Math.PI / 180) ;}
while(Cero.hitTest(mcPlayer1._x,mcPlayer1._y)){gotoAndStop(1);}
// Esto es solo para visualizar los numeros y ver cuanto le tengo q dar a los arreglos
texto.text = hollows._x
texto_1.text = mcPlayer1._x
restX.text = Math.round(a)
restY.text =Math.round(b)
ang.text =Math.round(angulo)
restT.text = Math.round(c)

    }

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 16 Sep 2010 06:34 pm
como logras qe tu "char" este observando el mouse todo el tiempo??

Por Nato_Kohanim

160 de clabLevel



Genero:Masculino  

Editor, Programador y Bloggero

chrome
Citar            
MensajeEscrito el 19 Sep 2010 09:41 pm
onEneterFrame= function(){
if (mousex < char._x)(char.gotoAndStop(x))
}
capatas la idea?
si tenes algunba duda pregunta

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 19 Sep 2010 09:50 pm
hey si estas haciendo un rpg en el q tu pj siga el cursor y me puedes facilitar el script que usas te lo agradeceria

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 19 Sep 2010 10:19 pm

MaxiSan20 escribió:

hey si estas haciendo un rpg en el q tu pj siga el cursor y me puedes facilitar el script que usas te lo agradeceria


me dices a mi?.. o al de el tema?? xD

saludooss!

Por Nato_Kohanim

160 de clabLevel



Genero:Masculino  

Editor, Programador y Bloggero

chrome
Citar            
MensajeEscrito el 21 Sep 2010 02:14 am
A ti Nato_7

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 21 Sep 2010 03:21 am

MaxiSan20 escribió:

A ti Nato_7
amm pues si algo asi.. si qieres te ayudo y tmb me pasas algunos tips

Por Nato_Kohanim

160 de clabLevel



Genero:Masculino  

Editor, Programador y Bloggero

chrome
Citar            
MensajeEscrito el 22 Sep 2010 06:07 pm
dale te pase mi msn por mp

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox

 

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