User Tag List

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

Tema: Problema con Fenix: Procedimiento 0 no activo y error de ejecucion en proceso...

  1. #1

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63

    Problema con Fenix: Procedimiento 0 no activo y error de ejecucion en proceso...

    Hola!

    Bueno pues tengo un problemilla. Cuando voy a ejecutarlo, me salta un error que dice: Error de ejecución en proceso 65539: Procedimiento 0 no activo.
    Viene a ser despues de haberle metido el tema de las durezas y tal al juego...

    A ver si lograis ayudarme y hecho eso y el codigo del otro pj, solo quedaria lo mas facil del juego y... a la gp! *O* XDD

    Bueno he aqui el codigo en cuestion :P

    Código:
    Program LeidenTod;
    
    Global
    INT ADAM_POSITION_X;
    INT ADAM_POSITION_Y;//Variables del personaje
    INT GRAFICOS; //EL FPG DONDE ESTAN LOS GRAFICOS
    INT DESPEGA_X;//DUREZAS
    INT DESPEGA_Y;//DUREZAS
    INT OBSTACLE;//DUREZAS
    INT COLOROBSTACULO;//DUREZAS
    End//Terminamos de establecer las variables globales
    
    Begin  //EMPIEZA EL PROGRAMA CON UN PJ EN UN SCROLL.
    SET_MODE(320,240,16); //PANTALLA A 320X240 A 16 BITS
    SET_FPS(160,1); //FPS (MODIFICABLE)
    GRAFICOS=LOAD_FPG("LEIDENTOD.FPG"); //DECIMOS QUE ES GRAFICOS
    ADAM(ADAM_POSITION_X,ADAM_POSITION_Y);//SITUAMOS AL PJ
    start_scroll(0,GRAFICOS,314,0,0,0);//EMPEZAMOS UN SCROLL CON EL PJ Y UN FONDO. EN ESTE CASO, EL DISTRIBUIDOR
    COLOROBSTACULO=MAP_GET_PIXEL(GRAFICOS,102,12,12);//LAS DUREZAS
    
    END
    
    PROCESS ADAM(ADAM_POSITION_X,ADAM_POSITION_Y);//EMPEZAMOS EL PROCESO DEL PJ
    BEGIN
    
    CTYPE=C_SCROLL;
    SCROLL[0].CAMERA=ID; //INICIA UN SCROLL FRENTE AL PERSONAJE
    GRAPH=1;
    ANGLE=0;
    
    LOOP         
    IF(MAP_GET_PIXEL(GRAFICOS,102,SON.X+DESPEGA_X,SON.Y+DESPEGA_Y)==COLOROBSTACULO)  
    	OBSTACLE=TRUE;
    ELSE
    		OBSTACLE=FALSE;
    END
    DESPEGA_X=0;
    DESPEGA_Y=0;
    IF(KEY(_RIGHT))DESPEGA_X=2;END;
    IF(KEY(_LEFT))DESPEGA_X=-2;END;
    IF(KEY(_UP))DESPEGA_Y=-2;END;
    IF(KEY(_DOWN))DESPEGA_Y=2;END;
    
    //ANIMACIÓN Y MOVIMIENTO DE ESTE.
    	IF (KEY(_RIGHT)AND NOT KEY(_UP) AND NOT KEY(_DOWN)AND OBSTACLE==FALSE)
    			X=X+2;
    		
    			IF (GRAPH<=10 OR GRAPH>=13) GRAPH=10;END;
    			GRAPH=GRAPH+1;
    			FLAGS= 0;
    		END
    	
    	IF (KEY(_LEFT) AND NOT KEY(_UP) AND NOT KEY (_DOWN)AND OBSTACLE==FALSE)
    		X=X-2;
    	
    	IF (GRAPH<=10 OR GRAPH>=13)GRAPH=10;END;
    		GRAPH=GRAPH+1;
    		FLAGS=1;
    END
    
    IF (KEY(_UP) AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    
    	Y=Y-2;
    	IF (GRAPH<=6 OR GRAPH>=9) GRAPH=6; END;
    	GRAPH=GRAPH+1;
    	END
    	IF (KEY(_DOWN)AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    		Y=Y+2;
    		IF (GRAPH<=1 OR GRAPH>=4); GRAPH=1;END
    		GRAPH=GRAPH+1;
    	END
     FRAME;
    	END //LOOP
    END
    Espero que se entienda

    Un saludo

  2. #2

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,516
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Mira a ver si te sigue pasando si llamas al personaje despu&#233;s, no antes, de inicializar el scroll.

    A ver que le siga echando un ojo xD

    Ah pos no, la cagada creo que est&#225; aqu&#237;:

    Código:
    IF(MAP_GET_PIXEL(GRAFICOS,102,SON.X+DESPEGA_X,SON.Y+DESPEGA_Y)==COLOROBSTACULO)  
    	OBSTACLE=TRUE;
    ELSE
    En vez de son.x y son.y deber&#237;as poner directamente x e y, o eso creo, ya que lo que quieres ver es si hay un obst&#225;culo alrededor de las coordenadas x e y del proceso Adam. Y dentro de ese proceso te refieres a sus propias coordenadas como "x" e "y" simplemente.
    Última edición por Segata Sanshiro; 03/01/2008 a las 16:20

  3. #3

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    Muchas gracias Segata! ya me compila!

    Lo malo esque se sigue comiendo las paredes... ¿Alguien sabe por que no funciona el mapa de durezas? Tengo la imagen con las cosas que no se pueden traspasar a un mismo color (rojo) y si no me equivoco la coordenada es correcta.

    Ah una dudilla tambien :S

    Si yo quiero que el proceso Adam (el personaje del juego) empieze en vez de la coordenanda en la que empieza, en otra... eso donde lo pongo?

    bueno, muchas gracias

  4. #4

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,516
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Para lo de que empiece en una cierta posici&#243;n hay varias formas.

    Por ejemplo, puedes crear dos variables en GLOBAL con las coordenadas iniciales del personaje: adam_x_ini y adam_y_ini o algo as&#237;, y darles un valor.

    Una vez hecho eso llamas al proceso del personaje:

    adam(adam_x_ini, adam_y_ini);

    Hasta aqu&#237; igual que como lo has hecho, solo que cambiando un poco el nombre de las variables. Pero luego cambias la cabecera del proceso a algo como:

    process adam(x, y);

    Recuerda lo que ocurre al llamar a un proceso:

    Si adam_x_ini vale 30 y adam_y_ini vale 50, por ejemplo, y haces la llamada esa que he puesto arriba:

    adam(adam_x_ini, adam_y_ini);

    Fenix lo que hace es coger los valores de adam_x_ini (30) y adam_y_ini (50) y los mete en los respectivos lugares que encuentra en la cabecera del m&#233;todo (process adam(x, y)), es decir, meter&#237;a un 30 en la variable x de adam y un 50 en la y, y el proceso ya aparecer&#237;a en esas coordenadas.

    Otra forma de hacer lo mismo ser&#237;a:

    Código:
    program ejemplo;
    
    global
    	adam_x_ini = 50;
    	adam_y_ini = 30;
    
    begin
    	adam();
    end
    
    process adam();
    
    begin
    	x = adam_x_ini;
    	y = adam_y_ini;	
    	loop;
    		frame;	
    	end
    end
    Y lo de las durezas ahora lo miro, que a m&#237; me mola el Fenix xDD
    Última edición por Segata Sanshiro; 03/01/2008 a las 18:15

  5. #5

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    Muchas gracias !

    Alguien me ayuda con el mapa de durezas? T_T
    < - >
    ???????
    Última edición por hellcross; 04/01/2008 a las 03:21 Razón: Edición automática anti doble-post.

  6. #6

    Fecha de ingreso
    Dec 2004
    Mensajes
    28,648
    Mencionado
    199 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    189
    Agradecer Thanks Received 
    2,640
    Thanked in
    Agradecido 1,647 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    11
    Si no pones el c&#243;digo o nos dices que deber&#237;a pasar pero no pasa; malamente te podemos ayudar
    Google stadia es un fracaso, google stadia funciona mal, google admite su fracaso con stadia la latencia es el problema intrinseco de stadia, el público abandona google stadia, stadia mal.

  7. #7

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    esta puesto arriba :S

    Tiene que pasar que el personaje no pueda atravesar ciertos sitios del mapa.Por eso hay otro mapa igual pero con los sitios que no puede atravesar coloreados de rojo. Asi el codigo coje el rojo ese y lo interpreta como que no puede traspasarlo, pero sigue pudiendolo traspasar..

    me explico?

  8. #8

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,516
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por chipan Ver mensaje
    Si no pones el código o nos dices que debería pasar pero no pasa; malamente te podemos ayudar
    Nomeleoloshilos Fan Club xDDD

    Eso sí, si has cambiado algo en el código desde que pusiste el del primer post, deberías actualizarlo.

  9. #9

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    Código:
    //Codigo fuente del personaje, llamado Adam. Hay que depurar la animación si se puede, un poco mas.
    // ESTO ES SOLO EL PJ ANDANDO POR UN FONDO EN SCROLL SIN DUREZAS.
    
    Program LeidenTod;
    
    Global
    INT ADAM_POSITION_X = 280;
    INT ADAM_POSITION_Y = 580;//Variables del personaje
    INT GRAFICOS; //EL FPG DONDE ESTAN LOS GRAFICOS
    INT DESPEGA_X;//DUREZAS
    INT DESPEGA_Y;//DUREZAS
    INT OBSTACLE;//DUREZAS
    INT COLOROBSTACULO;//DUREZAS
    End//Terminamos de establecer las variables globales
    
    Begin  //EMPIEZA EL PROGRAMA CON UN PJ EN UN SCROLL.
    SET_MODE(320,240,16); //PANTALLA A 320X240 A 16 BITS
    SET_FPS(160,1); //FPS (MODIFICABLE)
    GRAFICOS=LOAD_FPG("LEIDENTOD.FPG"); //DECIMOS QUE ES GRAFICOS
    //Intro
    LOOP
    fade_off();
    PUT_SCREEN(GRAFICOS,15);
    fade_off();
    FRAME 80000;
    CLEAR_SCREEN();
    fade_off();
    PUT_SCREEN(GRAFICOS,16);
    fade_off();
    FRAME 80000;
    fade_off();
    CLEAR_SCREEN();
    fade_off();
    PUT_SCREEN(GRAFICOS,19);
    fade_off();
    FRAME 80000;
    CLEAR_SCREEN();
    BREAK;
    END
    
    ADAM(ADAM_POSITION_X,ADAM_POSITION_Y);//SITUAMOS AL PJ
    start_scroll(0,GRAFICOS,5,0,0,0);//EMPEZAMOS UN SCROLL CON EL PJ Y UN FONDO. EN ESTE CASO, EL DISTRIBUIDOR
    COLOROBSTACULO=MAP_GET_PIXEL(GRAFICOS,14,300,200);//LAS DUREZAS
    END
    
    PROCESS ADAM(ADAM_POSITION_X,ADAM_POSITION_Y);//EMPEZAMOS EL PROCESO DEL PJ
    BEGIN
    
    CTYPE=C_SCROLL;
    SCROLL[0].CAMERA=ID; //INICIA UN SCROLL FRENTE AL PERSONAJE
    GRAPH=1;
    ANGLE=0;
    X=ADAM_POSITION_X;
    Y=ADAM_POSITION_Y;
    LOOP         
    IF(MAP_GET_PIXEL(GRAFICOS,102,X+DESPEGA_X,Y+DESPEGA_Y)==COLOROBSTACULO)  
    	OBSTACLE=TRUE;
    ELSE
    		OBSTACLE=FALSE;
    END
    DESPEGA_X=0;
    DESPEGA_Y=0;
    IF(KEY(_RIGHT))DESPEGA_X=2;END;
    IF(KEY(_LEFT))DESPEGA_X=-2;END;
    IF(KEY(_UP))DESPEGA_Y=-2;END;
    IF(KEY(_DOWN))DESPEGA_Y=2;END;
    
    //ANIMACIÓN Y MOVIMIENTO DE ESTE.
    	IF (KEY(_RIGHT)AND NOT KEY(_UP) AND NOT KEY(_DOWN)AND OBSTACLE==FALSE)
    			X=X+2;
    		
    			IF (GRAPH<=10 OR GRAPH>=13) GRAPH=10;END;
    			GRAPH=GRAPH+1;
    			FLAGS= 0;
    		END
    	
    	IF (KEY(_LEFT) AND NOT KEY(_UP) AND NOT KEY (_DOWN)AND OBSTACLE==FALSE)
    		X=X-2;
    	
    	IF (GRAPH<=10 OR GRAPH>=13)GRAPH=10;END;
    		GRAPH=GRAPH+1;
    		FLAGS=1;
    END
    
    IF (KEY(_UP) AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    
    	Y=Y-2;
    	IF (GRAPH<=6 OR GRAPH>=9) GRAPH=6; END;
    	GRAPH=GRAPH+1;
    	END
    	IF (KEY(_DOWN)AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    		Y=Y+2;
    		IF (GRAPH<=1 OR GRAPH>=4); GRAPH=1;END
    		GRAPH=GRAPH+1;
    	END
     FRAME;
    	END //LOOP
    END
    Actualizado

  10. #10

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    8,516
    Mencionado
    30 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    191
    Agradecer Thanks Received 
    299
    Thanked in
    Agradecido 177 veces en [ARG:2 UNDEFINED] posts
    Código:
    IF(MAP_GET_PIXEL(GRAFICOS,102,X+DESPEGA_X,Y+DESPEGA_Y)==COLOROBSTACULO)  
            OBSTACLE=TRUE;
    ELSE
                    OBSTACLE=FALSE;
    END
    DESPEGA_X=0;
    DESPEGA_Y=0;
    IF(KEY(_RIGHT))DESPEGA_X=2;END;
    IF(KEY(_LEFT))DESPEGA_X=-2;END;
    IF(KEY(_UP))DESPEGA_Y=-2;END;
    IF(KEY(_DOWN))DESPEGA_Y=2;END
    Creo que deberías poner primero la detección de teclas, luego el map_get_pixel, y al final justo antes del frame lo de despega_x = 0.

    Sin embargo esto ya dudo más que te funcione. Pruébalo, pero a saber. Si no te va, igual puedes ponernos los gráficos (los fpg's enteros) para verlo todo mejor y que la gente pueda hacer pruebas en su pc.

  11. #11

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    Ok, luego lo pruebo

    Gracias ^^

  12. #12

    Fecha de ingreso
    Dec 2004
    Mensajes
    28,648
    Mencionado
    199 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    189
    Agradecer Thanks Received 
    2,640
    Thanked in
    Agradecido 1,647 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    11
    Si saber, sab&#237;a lo que pasaba; lo que no sab&#237;a era como iba el c&#243;digo y pretend&#237;a que nos explicase el algoritmo.
    Google stadia es un fracaso, google stadia funciona mal, google admite su fracaso con stadia la latencia es el problema intrinseco de stadia, el público abandona google stadia, stadia mal.

  13. #13

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    No me va...

    Código:
    LOOP         
    IF(KEY(_RIGHT))DESPEGA_X=2;END;
    IF(KEY(_LEFT))DESPEGA_X=-2;END;
    IF(KEY(_UP))DESPEGA_Y=-2;END;
    IF(KEY(_DOWN))DESPEGA_Y=2;END;
    IF(MAP_GET_PIXEL(GRAFICOS,102,X+DESPEGA_X,Y+DESPEGA_Y)==COLOROBSTACULO)  
    	OBSTACLE=TRUE;
    ELSE
    		OBSTACLE=FALSE;
    END
    
    
    //ANIMACI&#211;N Y MOVIMIENTO DE ESTE.
    	IF (KEY(_RIGHT)AND NOT KEY(_UP) AND NOT KEY(_DOWN)AND OBSTACLE==FALSE)
    			X=X+2;
    		
    			IF (GRAPH<=10 OR GRAPH>=13) GRAPH=10;END;
    			GRAPH=GRAPH+1;
    			FLAGS= 0;
    		END
    	
    	IF (KEY(_LEFT) AND NOT KEY(_UP) AND NOT KEY (_DOWN)AND OBSTACLE==FALSE)
    		X=X-2;
    	
    	IF (GRAPH<=10 OR GRAPH>=13)GRAPH=10;END;
    		GRAPH=GRAPH+1;
    		FLAGS=1;
    END
    
    IF (KEY(_UP) AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    
    	Y=Y-2;
    	IF (GRAPH<=6 OR GRAPH>=9) GRAPH=6; END;
    	GRAPH=GRAPH+1;
    	END
    	IF (KEY(_DOWN)AND NOT KEY (_LEFT) AND NOT KEY(_RIGHT)AND OBSTACLE==FALSE)
    		Y=Y+2;
    		IF (GRAPH<=1 OR GRAPH>=4); GRAPH=1;END
    		GRAPH=GRAPH+1;
    	END
    DESPEGA_X=0;
    DESPEGA_Y=0;
    
     FRAME;
    	END //LOOP
    END
    asi decias?
    He probado colocandolos de diferente manera pero nada TT_TT

    Muchas gracias!

  14. #14

    Fecha de ingreso
    Jul 2006
    Mensajes
    427
    Mencionado
    2 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    8
    Agradecer Thanks Received 
    14
    Thanked in
    Agradecido 9 veces en [ARG:2 UNDEFINED] posts
    A ver creo que ya se cual es el problema. El programa esta bien, te dejo el programa pa que veas que funciona. Lo he hecho sin scroll con una jodida bola negra y un fondo cutre pero como ves funciona.

    Yo creo que tienes el mapa de durezas mal dibujado. Justo lo has puesto con lineas de 1 pixel y por eso no se te para. Como avanzas dos x pasa de la dureza porque no caes en el punto de dureza.

    Voy a subir el archivo cuando lo tenga subido lo linko aqui mismo &#191;vale?

    prueba
    Última edición por animanegra; 05/01/2008 a las 18:19 Razón: Archivo que no habia linkado
    In the very beginning it was an angelical society but Eve took a “Byte” from the “Apple” and then mistrust was born.

  15. #15

    Fecha de ingreso
    Jul 2006
    Ubicación
    мadrιd - тѕcнernoвyl
    Mensajes
    4,658
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    50
    Agradecer Thanks Received 
    15
    Thanked in
    Agradecido 11 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    63
    va gracias ^O^

    esta noche lo miro
    =)
    < - >
    ya tengo mapa de durezas, muchas gracias a todos. El problema era que estaba mal dibujado :$ XDD
    Última edición por hellcross; 06/01/2008 a las 15:50 Razón: Edición automática anti doble-post.

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
  •