Comunidad de diseño web y desarrollo en internet online

ayuda en un juego

Ir a página Anterior  1, 2, 3  Siguiente

Foros de discusión > Flash

Citar            
MensajeEscrito el 09 Jun 2009 08:18 pm
_root.nave["laser1"+(cont)]_x = this._x -10;
_root.nave["laser1"+(cont)]_y = this._y;

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 09 Jun 2009 10:36 pm
-_- deberia ser
_root.nave["laser1"+(cont)]._x = this._x -10;
_root.nave["laser1"+(cont)]._y = this._y;
|||||||||||||||||||||||||||^||||||||||||||||||
ya le intente pero no sale, y asi como dices es error

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 10 Jun 2009 02:24 am
Mi turno -________________________________________________________-

el davo29 escribió:


segun entendi arriba asi debe de ser, laser 1 se le suma cont, que vale 1 y se hace laser 2 asi sucesivamente, pero no funciona, yo creo yo estoy mal pero ya no se donde esta mi error.


ya te lo explique tres veces
no logras hacer laser2, laser3, laser4
lo que haces es laser11, laser12, laser13

laser1 es una cadena de caracteres, o un valor numerico, no puedes "sumar" strings con numeros
lo que haces es CONCANETAR laser 1 con 1 logrando un laser11

te quedo claro ya?

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 10 Jun 2009 03:35 am
=(

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 10 Jun 2009 05:41 am
mi turno =(, yo se que es estresante contestarle a un nuub como yo, pero la verdad es que no entiendo a que te refieres cuando dices que hago 11,12 en vez de 1, 2, el 11 y 12 son el laser 11 y el laser 12 no? bueno , te pido esto, dime en que parate esta mal este codigo:
contador = 0;
if (Key.isDown(Key.CONTROL)) {
var nuevolaser = duplicateMovieClip(_root.laser, "disparo"+contador,contador);
contador++;
nuevolaser._x = nave._x-10;
nuevolaser._y = nave._y;
}
ya me puse a ver ejemplos pero no entiendo porque el mio no funciona, te lo pido o buen tribak, dime donde estoy mal. =I si logro hacer esto tu vas a a ser el primero en recibir el juego, sisi xD

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 10 Jun 2009 07:38 pm
"laser1"+(cont)

en esa linea lo que haces es juntar como si se tratara de texto a la variable con la constante
"laser1" + "1" = laser11 (NO laser2)

Concatenación - Es la operación por la cual dos caracteres se unen para formar una cadena de caracteres (o string). También se se puede concatenar dos cadenas ...

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 12 Jun 2009 12:54 am
es que me puse a checar un juego que lo unico que tiene de diferente a este codigo es el kesy is down, el otro es on clipevent mouse down, y todos los codigos son iguales o se parecen a este, pero no funciona, creo que mi compu es pirata =I
o yo =I
if (Key.isDown(Key.CONTROL)) {
contador = 0
var nuevolaser = duplicateMovieClip(_root.laser, "disparo"+contador,contador);
contador++;
nuevolaser._x = nave._x-10;
nuevolaser._y = nave._y;
}
=(

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 12 Jun 2009 02:11 am

Código ActionScript :

contador = 1; //si declaras contador cada que aprietas control, siempre valdra 0 y no crearas mas que disparo0 millones de veces
nave.onEnterFrame = function() { // esto cicla nave para que cada que cambie de fotograma revise lo de abajo (sino solo lo haria empezando la pelicula y nunca mas
   if (Key.isDown(Key.CONTROL)) { // revisa si esta presionado control
      laser.duplicateMovieClip("disparo" + contador, contador); //duplica laser y le pone disparoN a cada duplicado (donde N es el numero incrementado
      _root["disparo"+contador]._y = nave._y - 10; //pone el duplicado a 10 pixeles arriba de nave en Y
      _root["disparo"+contador]._x = nave._x; //pone el duplicado donde esta nave en X
      _root["disparo"+contador].onEnterFrame = function() { //esto cicla cada duplicado para que cada que cambie de fotograma haga lo de abajo
         this._y -= 10; //sube 10 pixeles a el duplicado
      };
      contador++; //incrementa a contador (siempre va al final por que sino le aplicas acciones a el movieclip que aun no se crea
   }
};


Código ActionScript :

if (Key.isDown(Key.CONTROL)) { //si revisabas que estuviera control presionado, pero solo cuando iniciaba el swf, nunca mas
contador = 0 //declarabas contador cada que apretabas control (en tu caso solo una vez)
var nuevolaser = duplicateMovieClip(_root.laser, "disparo"+contador,contador); //aqui ibas mas o menos
contador++; //aqui cambiabas el valor de contador
nuevolaser._x = nave._x-10; //esto ponia a disparoN+1 10 pixeles a la izquierda
nuevolaser._y = nave._y; // esto ponia a disparoN+1 en Y
}


como vez, tenias un desorden total U_U

aprender a programar!
y AS

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 12 Jun 2009 02:34 am
:D!!!!!! gracias tribak =) acabas de terminar con mi desesperacion, 10 dias dure tratando de buscar ese codiguito =I y si llegue a tenerlo cerca, nadamas que ese ultimo _root["disparo"+contador].onEnterFrame = function() {
no lo habia pensado, oye y porque pongo hasta casi al final el contador++??

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 12 Jun 2009 03:05 am
:I, weno 3 preguntitas: incluyendo la de arriba ^{ u_u
porque dices que contador es 0 cuando le pico control?
porque pongo hasta casi al final el contador++??
y como llamo a la bala nueva, la llame asi dentro de la function
if ((this)._x<550 || (this)._x>0) {
this -_-pero, estoy haciendo el movimiento de la nave, de rotacion y quiero que cuando la nave voltee para arriba tambien las bala, ya me se el codigo, solo no se como llamar a la nueva bala?
porfa porfa

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 12 Jun 2009 03:32 am
1.
tienes este codigo

Código ActionScript :

var nuevolaser = duplicateMovieClip(_root.laser, "disparo"+contador,contador); //crea disparo1
contador++; //cambia contador a 2
["disparo"+contador]._x = nave._x-10; //el X de disparo2 (DOS!)
["disparo"+contador]._y = nave._y; //el y de disparo2 (DOS!)

como vez, si incrementas el contador antes de que termines de realizar tus acciones, estas afectaran al movieclip que aun no inicializas
---

2.

Código ActionScript :

if (Key.isDown(Key.CONTROL)) { //si se presiona control
contador = 0 //se declara contador como 0

por eso
---

3.
dijiste que eran 3 diferentes a la primer pregunta :?
---

4.
lo estas haciendo con la nave hacia ---> ???

Código ActionScript :

_root["disparo"+contador]._x = nave._x;

ese codigo, o como lo hayas alterado tu, es el que se encargada de posicionar la bala de el cañon de la nave siempre, aunque esta voltee hacia arriba

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 12 Jun 2009 06:31 pm
ohhh gracias por las 2 primeras respuestas, pero la ultima no la habia preguntado o_0,
=) y otra cosa, estas dispuesto a ayudarme con unas cuantas preguntas mas ??-_-, es que yo ya me hubiera desesperado de mi

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 12 Jun 2009 08:10 pm
weno si si tas de acuerdo, la pregunta que habia hecho arriba era de que como se llama la nueva bala que sale, como le puedo nombrar, por ejemplo estoy hacinedo un hit test pero no funciona porque no tengo el nombre

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 12 Jun 2009 08:32 pm
["disparo"+contador]
se llama disparoN
donde N es un numero

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 13 Jun 2009 12:34 am
no funciona >> le doy a enemigo y no pasa nada =(
if(_root["disparo"+contador].hitTest(_root.enemigo)){
this.enemigo.gotoAndPlay(2);
}

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 13 Jun 2009 02:38 am

Código ActionScript :

_root["disparo"+contador].onEnterFrame = function() { 
         if(this.hitTest(_root.enemigo){
                  _root.enemigo.gotoAndPlay(2);
         }
         else {
                  this._y -= 10;
         }
}; 


el codigo es el que ya te habia pasado antes pero modificado

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 13 Jun 2009 05:20 am
omg!!!, toy bien tonto, pero tambien se pasa flash, quien diria que un root cambia las cosas -_-, ya habia intentado eso pero sin root :I, gracias tribak =)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 01:00 am
otra vez un problema con el duplicate movie clip, tengo un clipde peli que se llama rp y cuando lo presiono sale enemigo, cuando disparo, se borra y le vuelvo a picar y ahi se queda, rp.onRelease = function(){
_root.enemigo.duplicateMovieClip("enemigo"+contador,contador);
_root["enemigo"+contador]._x = nave._x+200
_root["enemigo"+contador]._y = nave._y

}
pues ademas de eso, no funciona el hitTest o_0, este esta adentro de el enterFrame de disparo
if(this.hitTest(_root["enemigo"+contador])){
_root["enemigo"+contador].gotoAndPlay(2);}
ayuda :)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 01:02 am

el davo29 escribió:

cuando disparo (aunque le de a enemigo)
ayuda :)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 02:55 am
if(this.hitTest(_root["enemigo"+contador]))
no uses el mismo contador para las balas y para el enemigo U_U
no puedes hacer eso que pones arriba

mira

contador=100
disparas la bala "disparo100"
contador=101
si golpea a enemigo101
hace algo

pero enemigo101 NO EXISTE!


:/ aprende AS y a programar

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 14 Jun 2009 03:10 am
ohh, creeme que estoy aprendiendo namas que me falta usar la inteligencia :I U_U

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 04:27 am
tribak ayudame con esto porfi, o_0, para empezar, mi pregunta es, cuando tiene subrayado en amarillo algunos (no se como se llamen, para mi todos son codigos: por ejemplo if , root , filter << supongo sabes de lo que hablo ya) sabes que significa que esten subrayados ^^??? y quiza sea parte de este problema del juego de navesitas, esto de abajo es un contador de balas, es el del juego, es un clip de pelicula, que en ningun momento se le dice que sume, lo tengo sin nombre con eso te digo:
onClipEvent(enterFrame){
this.p="num bala"+(_root.space2.balas2);
}
este es el mio
onClipEvent(enterFrame){
this.p="num bala"+(_root.clipy.balas);
}
space 2 = clipy, las naves, la bala estan adentro de estos 2.
balas2 es una variable igual que balas , son 300 igual o_0.
tengo en mi nave que cuando dispare sume 1 a balas, igual que en el juego otro.
el punto es que este clip de pelicula donde esta este codigo en el juego otro si funciona y en el mio no, ya revise en todos lados y no hay nada que le diga mas que sume a balas, esto si lo entiendo, pero no entiendo porque no funciona en el mio, a menos que sea eso de la cosa amarilla.=)

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 05:40 am
necesitarias enviarme una captura de pantalla por que la verdad desconosco a que te refieras con tal subrayado

te recomiendo que la mayor cantidad de codigo que puedas lo pongas en el fotograma, no en los objetos, te hace mas facil el trabajo

no capte muy bien la idea de el movieclip

pero supongo que quieres limitar las balas a 300, eso lo hacia por defecto el ejemplo que usaste no?

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 14 Jun 2009 09:48 pm
bueno no, lo de el subrayado amrillo no importa, n ose que sea pero no significa nada de lo que me pasa, y nose como enviar capturas o subir los .fla, en fin te explicare mejor lo del codigo:
el juego del que saque esta idea tiene 2 clips de peliculas llamados "space1", "space2"
dentro de space 1 o space 2, hay unos textos dinamicos que los hizo clips de peliculas
a estos les puso este codigo:
onClipEvent(enterFrame){
this.p="num bala"+(_root.space2.balas2);
}
donde balas2 es la variable que dice cuantas balas hay y esta en un fotograma que se llama script, cuando dispara en el clip "n1" que es la nave, tiene escrito que le reste 1 a balas2(el contador de balas), (eso ya lo entendi, logre hacer mi contador con un .text o_0), lo que quiero yo es hacer lo mismo pero no funciona =(
onClipEvent(enterFrame){
this.p="num bala"+(_root.clipy.balas);
}
tambien hice los mismo que en el juego otro, la variable, la resta a balas, pero pues no =( espero me hayas entendido =/.


aprendiendo AS y a programar :/

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 14 Jun 2009 10:24 pm
buen ya mas bien lo que te estoy preguntando es esto:
como le hago para que un clip de pelicula me muestre culaquier cosa de una variable, texto o numero sin tener que usar un texto dinamico y decirle que bala=350;
texto.text = 350
if(key.isdown(key.space)){
texto.text-=1
lo que quiero es simplemente sin decirle que text, que solo funcione con la variale, y dentro del clip de pelicula como mi ejemplo de arriba.

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 15 Jun 2009 02:35 am
para mostrar esos datos lo mejor es un cuadro de texto y se requiere el .text

eso o poner en las propiedades del texto, que revise cierta variable


ahi donde dice VARIABLE es donde escribes la variable y el cuadro de texto la mostrara y actualizara cuando cambie el valor de la variable

aunque es preferible que uses el codigo (.text)

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 15 Jun 2009 02:57 am
:o ok =) thankyu

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 15 Jun 2009 03:00 am
ay si cierto -__- se lo puso en la variable -_- es que para mi se le borraba cualquier cosa, nombre, script, si los convertias a movies o btones. =) gracias ==)))))))))))))) U_U

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 16 Jun 2009 12:23 am
porque no logro hacer que el duplicado de enemigo funcione =(, si se duplica pero cuando le da disparo no funciona, y disparo es disparo = _root["disparo"+contador];, si funciona ya lo probe :D???
_root.onEnterFrame = function() {
rp.onRelease = function() { //rp es mi boton
_root.enemigo.duplicateMovieClip("enemigo"+cont, cont);
eni = _root["enemigo"+cont];
eni._x = random(500);
eni._y = random(500);
if(disparo.hitTest(this)){
this.gotoAndPlay(2);
}

};

Por el davo29

253 de clabLevel



Genero:Masculino  

Chihuahua :D!

msie7
Citar            
MensajeEscrito el 16 Jun 2009 03:20 am
por que estas asociandolo al golpe de "disparo" que no existe
if(disparo.hitTest(this)){

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Ir a página Anterior  1, 2, 3  Siguiente
Foros de discusión > Flash

 

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