Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mensajes - nonoroman

211
Ya!!! Ya me funciona!!

Simplemente habia planteado mal el array.

Ahora lo he corregido y efectivamente. Funciona!!

;D
212
Buenas, pues aqui ando otra vez de nuevo con una super cuestion.

No creo que sea imposible de resolver, pero despues de llevar toda la tarde estudiando como resolverlo, pues no encuentro la manera, y esto solo lo podra resolver un maquina porque tiene tela.

Os cuento, despues de tener que recontruir el surfaces de oscuridad unas 4 veces, para poder hacer lo que yo deseaba, que al final he conseguido. Me encuentro con la siguiente, cuestion.

Para hacer que el surfaces funcione bien, pero muy bien, la clave esta en crear todas las luces desde el objecto que controla el surfaces.

He creado la luz que sigue al player, y puedo controlar, el color, el alpha, etc, hasta aqui todo bien.

Pero el problema surge, cuando, la luz que tenemos que crear, tiene que seguir a muchos objetos distintos. Es decir, no solo uno. En el caso del player, al haber solo un player no hay problema. Pero por ejemplo, para crear la luz del sufaces para cada una de las bombillas que hay en la room, esto ya supone un problema.

Consigo crear la luz para una bombilla, pero y las demas??

El problema esta, que tengo que crear las luces y posicionarlas desde el objecto que controla el surfaces (obj_control) entonces no se como pasarle la id de cada una de las bombillas a cada luz correspondiente.

Lo he estado intentando con unos arrays y fors pero, el juego arranca pero no se dibuja nada.
Es decir, el codigo no esta mal, no da errores, pero no se dibuja ninguna luz en ninguna bombilla.

Os paso mi codigo, a ver si me podeis ayudar. Os recuerdo, que el objecto de la LUZ debe ser creado y posicionado en el STEP en todo momento por el object que crea el surfaces, y de hay el problema.

OBJECTO QUE CONTRALA EL SURFACES (obj_control)

CREATE
// CREA LUZ DE LAS BOMBILLAS
    for(i=BOMBILLA;i<=BOMBILLAS_TOTALES;i++)
    {
        luz_bombillas[BOMBILLA] = instance_create(0, 0, objectLUZ_BOMBILLAS);
        with (luz_bombillas[BOMBILLA]) {
          light_change_scale(1, 1);
          light_update();
        }
    }



STEP
//LUCES DE LAS BOMBILLAS
for(i=BOMBILLA;i<BOMBILLAS_TOTALES;i++)
{   
    if instance_exists(luz_bombillas[BOMBILLA])
    with(luz_bombillas[BOMBILLA])
    {
        draw_surface_ext(sur, x - sprite_width / 2, y - sprite_height / 2, 1, 1, 0, image_blend, 1);
    }
}


END STEP
// LUZ BOMBILLAS
for(i=BOMBILLA;i<=BOMBILLAS_TOTALES;i++)
{       

    if instance_exists(luz_bombillas[BOMBILLA])
    {
        luz_bombillas[BOMBILLA].x = BOMBILLA[ID_BOMBILLA].x;
        luz_bombillas[BOMBILLA].y = BOMBILLA[ID_BOMBILLA].y;
       
        with (luz_bombillas[BOMBILLA])
          light_update();
    }
}


Por supuesto decir, que cada vez que creo una una bombilla, esta suma la variable BOMBILLAS_TOTALES y por cada BOMBILLA sumo uno, para numerar la bombilla y por cada BOMBILLA[ID_BOMBILLA] le paso el valor de la variable del sistema id.

Pero no funciona, repito, no da error de codigo, pero las luces de las bombillas no se crean ninguna.

Esto va ser complejo de resolver, pero se que en la comunidad hay auntenticos maquinas, seguro que podemos averiguar el como.

Por favor, que algun maestro me explico como puedo hacerlo, por favor!!!!  ???



213
Muchas gracias. Pero ya he creado otra sufaces y ahora si que puede controlar el alpha por fin.

El problema de ahora. Es que no me deja cambiarle el color al sprite de la luz. Puff.  :-[

Cita de: 3dgeminis en Agosto 26, 2017, 08:24:39 PM
Te dejo un ejemplo, una alternativa para crear el efecto(y para mi mas simple al tener todo en un solo objeto)
214
El surfaces que he utilizado es el de edte tutorial. Y no hay manera humana de cambiarle el alpha.
https://youtu.be/dYbCfhX3Hu4



Cita de: Clamud en Agosto 26, 2017, 03:35:36 PM
Muestra el código.
215
Bueno pues acabo de descubir mas cosas.

Resulta que el problema no esta en el sprite. Ya que he creado otro sprite nuevo, asi muy simple, le he añadido una opacidad del 50, y resulta que se ve completamente opaco.

Es decir, el problema esta en el surfaces, el surfaces no entiende de opacidad. Da igual el sprite que le pases, el solo entiende de opacidad 100 o 0. No tiene termino medio.

Alguien sabe porque ocurre esto??  :'(
216
Bueno he estado investigando y he descubierto lo siguiente.

Lo que sucede, es que el sprite del destello de luz, no pierde la opacidad, sino que crea un fondo, no se bien como explicarlo, como que invierte los colores, y entonces con el surface, sigue actuando y da la sensacion de que el drw_set_alpha no funciona.

El caso, es que incluso editando el sprite, con el mismo editor de imagenes de GMstudio, ocurre lo mismo, crea como un fondo a la vez que voy quitandole opacidad.

Solo, cuando le doy con la goma de borrar, es cuando realmente, borra la opacidad del sprite.

Porque ocurre esto???, como coño esta hecho este sprite para que ocurra esto??

Por cierto, el sprite me lo baje de internet.

Si alguien sabe algo que comente, please.  ???
217
Yo he seguido este video tutorial.

https://youtu.be/dYbCfhX3Hu4

Y no hay manera de bajarle el alpha a la luz de la linterna.

Si alguien sabe algo que comente please.  ???

218
Nada no hay manera. no funciona. Alguien sabe que puede ser???

No entiendo como no puedo bajar el alpha de ese sprite, me deja cambiar el color, todo, pero el alpha nada de nada.

No entiendo el porque.

Por favor, ayuda!!!!  :'(
219
Preguntas y respuestas / Re:puntuacion
Agosto 25, 2017, 11:18:15 AM
Prueba iniciar la variable de putuacion con tantos ceros como quieras.

global.puntuacion = 00000000;

Y despues simplemente ve sumando.

global.puntuacion = global.puntuacion + 500;

Por ejemplo. Creo que te puede funcionar.

Cita de: cristopher2545 en Agosto 25, 2017, 06:03:40 AM
eh visto en muchos juegos que el score o puntuación siempre se ve de esta manera

Puntuación:00000000

y conforme va sumando puntos el score conserva sus ceros pero simplemente los va sumando algo parecido a los scores  en los juegos de la nes que eran como 10 ceros y al sumarle el puntaje simplemente esos ceros iban cambiando por el score

Puntuación:00000279


espero me explique bien alguien tiene una idea de como hacerlo en game marker? siento que se ve mas bonito asi que solo tener un cero
220
Si, asi lo he probado y no hay manera.

Puede ser que tenga algun draw_set_alpha(1) por algun lado y que haga que no pueda cambiar el alpha en este lugar en concreto??
Porque por ejemplo, el color si que me deja cambiarlo. Pero el alpha no.

Porque sino no entiendo porque no me funciona.  ???

Por cierto, donde tienes este codigo, yo lo tengo en el END STEP

Cita de: 3dgeminis en Agosto 24, 2017, 09:36:27 PM
A mi me funciona con draw_sprite_ext, asi lo hago yo:
[gml]
surface_set_target(hoja)

draw_set_blend_mode(bm_subtract)
draw_sprite_ext(spr_luz,0, mouse_x, mouse_y,1,1,0,c_white,0.2)
draw_set_blend_mode(bm_normal)

surface_reset_target()
[/gml]
221
Otra vez aqui, liado con los alphas, esta vez con la luz dentro de un surfaces que simula una linterna.

Como puedo controlar el alpha de los sprites de la linterna??? Cuando es el player el que dibuja dichos sprites desde el END STEP y a traves del surface.

He probado con draw_set_alpha, he probado con draw_sprite_ext y nada, siempre sale la luz de la linterna con el alpha a 1.

Si alguien ve como podria hacerse, que me comente please.  ;)
222
Preguntas y respuestas / Re:Color fonts y objetos
Agosto 24, 2017, 12:40:22 PM
Has pobrado en otro dispositivo android?? lo mismo es del dispositivo.

Yo he hecho varios juegos para android, y nunca he notado una variacion en lo que los colores se refiere.
223
Bueno, ahora viene la pregunta del millon, esto ya es nivel avanzado, a ver si entre todos podemos conseguirlo.

El caso esta, en que estoy dibujandole una sombra a una caja, de momento todo perfecto.

La sombra, se dibuja, respecto a la luz que le da, todo bien.

Pero la sombra es uniformemente infinita. Lo que me gustaria darle es un degradado en alpha a medida que la distancia de la sombra aumenta desde su punto de partida.

Entonces, esto como podria hacerse???

Os dejo el codigo del draw;

draw_set_colour(c_black);
draw_set_alpha(0.20);

if (linterna)
{
    draw_triangle(x,y,x+lengthdir_x(1000,point_lt),y+lengthdir_y(1000,point_lt),x+30+lengthdir_x(1000,point_rt),y+lengthdir_y(1000,point_rt),0)
    draw_triangle(x,y,x+30+lengthdir_x(1000,point_rt),y+lengthdir_y(1000,point_rt),x+30,y,0)
    draw_triangle(x,y+30,x+lengthdir_x(1000,point_ld),y+30+lengthdir_y(1000,point_ld),x+30+lengthdir_x(1000,point_rd),y+30+lengthdir_y(1000,point_rd),0)
    draw_triangle(x,y+30,x+30,y+30,x+30+lengthdir_x(1000,point_rd),y+30+lengthdir_y(1000,point_rd),0)
    draw_triangle(x,y+30,x,y,x+lengthdir_x(1000,point_lt),y+lengthdir_y(1000,point_lt),0)
    draw_triangle(x,y+30,x+lengthdir_x(1000,point_ld),y+30+lengthdir_y(1000,point_ld),x+lengthdir_x(1000,point_lt),y+lengthdir_y(1000,point_lt),0)
    draw_triangle(x+30,y+30,x+30,y,x+30+lengthdir_x(1000,point_rd),y+30+lengthdir_y(1000,point_rd),0)
    draw_triangle(x+30,y,x+30+lengthdir_x(1000,point_rt),y+lengthdir_y(1000,point_rt),x+30+lengthdir_x(1000,point_rd),y+30+lengthdir_y(1000,point_rd),0)
   
    draw_rectangle(x,y,x+30,y+30,1);
}


draw_set_alpha(1);


Espero entre todos darle una solucion, muchas gracias de ante mano.  ;)
224
Preguntas y respuestas / Re:Abrir un URL
Agosto 24, 2017, 12:27:18 PM
Quien ha puesto esa captura?? Yo no he sido, es mas, no conozco ni ese email ni nada. Increible vaya.

Cita de: nonoroman en Agosto 24, 2017, 11:55:46 AM
Si, sacalo del step, ponlo en una alarm[0]=1; por ejemplo.
225
Preguntas y respuestas / Re:Abrir un URL
Agosto 24, 2017, 11:55:46 AM
Si, sacalo del step, ponlo en una alarm[0]=1; por ejemplo.