User Tag List

Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 15 de 28

Tema: Dudas y preguntas.

  1. #1

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts

    Se necesita ayuda con Fenix

    Hola a todos!

    Os voy a plantear unas preguntas, PREPARAOS

    1-Crear un salto: Yo intenté hacer lo primero que se me ocurrió, es decir, si apretas la tecla "b" la y del peronaje sube y cuando llegase a cierta altura, la y del personaje volvería a el mismo sitio que al principio.......

    Pero al final se me ocurrió que sería más práctico hacer un personaje que sólo se se moviese de derecha a izquierda y que al apretar "b" iniciase una animación hacia arriba y luego hacia abajo (salto).

    ¿Qué me reomendais? (es para un juego tipo voley

    2-Tengo un proceso que se llama pelota, el problema es que quiero que "pelota" siempre que se presione "a" (con el personaje) haga un movimiento hacia arriba y que luego baje hasta que toque con otro proceso y que una vez detecte la colisión, haga el mismo movimiento de forma inversa, según el lugar en donde colisione así la pelota estará más alta o más baja, (vamos como en el voley playa) .

    3-(Esto ya es pedir demasiado), la IA del contrincante se pondría en funcionamiento una vez "pelota" estubiese el el centro de la pantalla, para seguir el proceso "pelota" e intentar tocarlo, para así devolvernosla.



    P.D. Me he leido (bastantes cosas) del manual de referencia de fénix (que está muy bien) pero...como no estoy muy acostumbrado a usar fénix, agradecería MUCHO que alguien me pudiera ayudar.


    P.D.1 El proyecto que tengo va en serio
    Última edición por fagotero; 15/07/2004 a las 15:42

  2. #2

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,520
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    196
    Agradecer Thanks Received 
    313
    Thanked in
    Agradecido 182 veces en [ARG:2 UNDEFINED] posts
    Buenas, fagotero... Si has programado en DIV antes, no deberías tener muchos problemas en Fenix.

    Si me das más detalles del juego (sobre todo cómo será la vista) te podremos ayudar mejor.

  3. #3

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Pues, te puedo decir que nunca he trabajado con DIV/DIV2 , sólamente he trasteado un poco con Blitz 3D....

    La vista será lateral tipo Super Volleyball, aunque con el campo ocupando toda la pantalla, es decir:


    Personaje........ Red......... Enemigo


    La pelota (bastante grande) está justo encima del personaje, y al apretar "b" tendría que salir en dirección al "enemigo", entonces cuando la pelota se situase por encima de la "red" el enemigo iría en dirección a la "pelota" a la velocidad marcada por mi, corriendo hacia delante y caminando más lentamente hacia atrás.

    (Esto ya está implementado en el "personaje", pero dado que no sé cómo añadir IA al "enemigo", aun no le he metido las coordenadas correspondientes, para el movimiento).

    Por ahora lo que más me interesa es saber como dar física a la pelota, es decir que haga los movimientos "reales" de una pelota, tipo Pong pero de manera distinta .

    Si tienes alguna pregunta no dudes en ponerlo


    P.D. Gracias, y a ver si esto tira "pa lante" que creo que va a ser un juego entretenido.
    Última edición por fagotero; 30/06/2004 a las 17:22

  4. #4

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Si algún alma caritativa me puede ayudar, le estaré eternamente agradecido

  5. #5

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,520
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    196
    Agradecer Thanks Received 
    313
    Thanked in
    Agradecido 182 veces en [ARG:2 UNDEFINED] posts
    Perdón, creí que te contesté hace tiempo Pero debió pasarme algo y no respondí.

    El caso es que no debes utiliar colisiones.

    Cuando con un jugador pulses el botón de golpear a la pelota, comprueba la distancia a la que está la pelota y si está cerca como para darle y en la posición correcta, altera el ángulo y la velocidad.

    El movimiento de la pelota puedes controlarlo, por ejemplo, así:

    -La velocidad en horizontal se guarda en velx, y en cada frame, pones en el proceso de la pelota: x+=velx. Puede ser negativa o positiva.

    -El tipo de movimiento puede ser directo o parabólico, para eso pones otra variable que se ponga a 1 o -1.

    -Etc. Te podría seguir describiendo el sistema que me he inventado hace unos minutos xDDD Pero es mejor que cada uno idee el suyo a su manera.

    Qué más cosas quieres saber?

  6. #6

    Fecha de ingreso
    Aug 2003
    Ubicación
    Madrid (Getafe)
    Mensajes
    13,899
    Mencionado
    48 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5
    Agradecer Thanks Received 
    221
    Thanked in
    Agradecido 164 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    2

    pues ...

    pues yo tampoco le he puesto nunca a gravedad a un personaje ... pero tengo que probarlo ... pues es interesante.

    supongo que con decir que la y = y + gravedad - empuje

    asi cuando hay empuje subira para arriba, y si el empuje es 0 pues bajara sola.

    luego es cuestion de jugar con el valor de la gravedad y el empuje para que el movimiento sea mas realista.

    Aiken

  7. #7

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,520
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    196
    Agradecer Thanks Received 
    313
    Thanked in
    Agradecido 182 veces en [ARG:2 UNDEFINED] posts
    Es algo más complicado, aunque el caso es experimentar.

    Lo que yo hacía era:

    -> Si se pulsaba salto con estado=0 (en el suelo) estado se ponía en 1 (saltando).

    -> Un contador manejaba cuántos frames llevaba el personaje subiendo. En los primeros sube deprisa, en los últimos va decelerando.

    -> Cuando el contador llega a cierto punto empieza a bajar. En vez de restar a 'y' los valores de antes, se le suman.

    -> Cuando el personaje toca el suelo, estado vuelve a '0'.

    Pero cada uno utiliza su propio sistema, ahí está lo bueno de la programación.

  8. #8

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Gracias por contestar!!

    A ver si me las puedo apañar para hacer el proceso de la pelota.

    La primera duda que tengo es la siguiente:

    Yo le digo al proceso "pelota"

    Process pelota()

    Private
    velocidad=0;
    id_prota; //para detectar si colisiona con algún personaje
    Begin
    graph=4;
    Loop

    (Y aquí la información para que la bola se mueva y detecte las colisiones)
    Frame;
    End
    End

    Pues es precisamente donde tengo que poner la información de la bola, donde no sé como hacerlo, sería algo como:

    If(x<25)x=25;End
    If(x=25)x=35;End
    (Y así sucesivamente)
    If(y=182)y=182;End
    If(y=182)y=170;End
    (Lo pongo así como ejemplo, no está bien escrito)

    Pero entonces, la velocidad como la controlaría?

    Si y disminuye x aumenta , y si y=punto máximo) y aumenta y x aumenta ralentizándose. Añadiendo a esto el tema de la desaceleración.

    No sé si es algo disparatado, aun no estoy muy puesto (como nadie me contestaba, pensaba que ya no habría solución)

    Gracias

    P.D. Si digo muchas burradas (seguro que sí) corrígeme.
    Última edición por fagotero; 05/07/2004 a las 20:14

  9. #9

    Fecha de ingreso
    Jun 2004
    Ubicación
    Malaga
    Mensajes
    2,601
    Mencionado
    10 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    7
    Agradecer Thanks Received 
    43
    Thanked in
    Agradecido 39 veces en [ARG:2 UNDEFINED] posts
    lo mismo que se puede hacer una leve simulacion de la gravedad deberias de añadir una resistencia a la pelota, asi cuando un muñeco le diera Tal velocidad a la pelota esta fuera perdiendo velocidad a mayor distancia recorrida, en conjunto con la variable de la gravedad la pelota seguiria una Parabola medianamente correcta y mas realista, solo te tendrias que preocupar en como insertar la fuerzaX e Y (velocidad del golpe hacia el lado y hacia arriba) cuando a la vez que la pelota colisionara con la parte superior del muñeco (supuestamente el brazo o mano) se presionara el boton de disparo.

    pienso que lo mejor es crear el proceso de pelota simplemente con la fisica de la pelota, y mediante variables globales (por ejemplo FuerzaPelotaX y FuerzaPelotaY, lo de Globales es que se pueden modificar desde cualquier parte del programa, no es unicamente una variable del proceso) se manejara el golpe del muñeco a la pelota. El golpe a la pelota se haria simplemente cambiando el valor a esas variables.

    lo que no se es si el Fenix maneja numeros decimales.

  10. #10

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Darumo todo lo que estás diciendo es "más o menos" lo que yo había comentado anteriormente, y que no sé como hacerlo en Fénix, quiero decir, seguro que lo sé hacer (a mi modo) pero me gustaría que alguien con más exeriencia me enseñase algún ejemplo con "números" , "letras", etc. me he vuelto a mirar el manual de referencia y lo poco que se me ocurre es lo que ya había dicho.

    Sé que es mucho pedir.....

  11. #11

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,520
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    196
    Agradecer Thanks Received 
    313
    Thanked in
    Agradecido 182 veces en [ARG:2 UNDEFINED] posts
    Bueno verás yo había pensado algo totalmente diferente.

    Los jugadores cambian unas variables globales que contienen todo lo referente al movimiento de la pelota.

    El proceso de pelota, sin detectar colisiones con nada (excepto el salirse de la pantalla) simplemente actualiza su posición según esas variables.

    Ejemplo:

    //dentro del bucle principal del proceso de un jugador

    if(key(_z) and get_dist(id_pelota)<25);
    //si se pulsa tecla de golpear a lo bestia (no de hacer un globo) y si
    //hay una distancia de menos de 25pix se realiza el golpe
    velocidad=10; //se mueve deprisa hacia la derecha
    globo=0; //no se realiza globo, va "a toda leche"
    incy=2; //como no es globo, la pelota simplemente va bajando un
    //poco a cada frame, 2pix en este caso, pero dependiendo
    //de como la pille el jugador se puede cambiar un poquito
    end

    //dentro del bucle del proceso de la pelota
    x+=velocidad:
    y+=incy

    //Esto se complicaría bastante, y este es el sistema que he creado yo, y que seguramente sólo entenderé yo por no saber explicarlo.

    Darumo -> Te me has adelantado xDDDD Has explicado justo lo mismo que yo, será que he tenido una buena idea xDDDDDDDD

    DIV tenía una cosa llamada resolution, pero Fenix admite float (vamos, con decimales).

  12. #12

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    OK gracias, voy a ir probando.

    (Como veo que me estás ayudando, ahora me voy a poner más las pilas con Fénix)


  13. #13

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Vale, testeado y no me funciona.

    Tendría que cambiar/quitar cosas en la variable privada?

    He probado muchas combinaciones con tu ejemplo pero, siempre me dá errores.

  14. #14

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,520
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    196
    Agradecer Thanks Received 
    313
    Thanked in
    Agradecido 182 veces en [ARG:2 UNDEFINED] posts
    Pero postéanos aquí el código fuente

  15. #15

    Fecha de ingreso
    May 2004
    Ubicación
    Düsseldorf
    Mensajes
    1,824
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    16
    Thanked in
    Agradecido 3 veces en [ARG:2 UNDEFINED] posts
    Hola, debido a cosas "raras" tuve que borrar el proceso de la pelota, pero lo gracioso es que lo he vuelto a crear, y me sale un mensaje:

    Mapa 1 no disponible en el fichero 0


    Este mensaje ya lo había visto en otras ocasiones, pero lo raro es que el proceso está supuestamente bien creado, y la imagen "MAP" está en su sitio.....alguna sugerencia?

Página 1 de 2 12 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •