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 - Clamud

286
En el evento Create asigna una alarma
[gml]
alarm[0] = 1;
[/gml]

En el evento Alarm 0 crea las instancias aleatorias.

El problema es que en el primer frame se notará la room vacía. Para evitarlo, podrías dibujar un rectángulo negro que cubra toda la pantalla.
287
Puedes voltear el sprite con código
[gml]
if (mouse_x < x) image_xscale = -1;
if (mouse_x > x) image_xscale = 1;
[/gml]
288
Preguntas y respuestas / Re:collision objet
Septiembre 22, 2018, 05:07:33 AM
¿Utilizas el evento Collision?, tal vez por eso hay un cambio al activar la variable solid.

El símbolo ! significa negación. La función place_meeting devuelve true o false, es decir, está tocando o no está tocando.
Cuando se escribe esto !place_meeting, se invierte la lógica, true se vuelve false y false se vuelve true.
289
Preguntas y respuestas / Re:Buffer <-> String
Septiembre 22, 2018, 05:00:39 AM
Puede ser útil saber que las strings se guardan en formato UTF-8, por lo que algunos símbolos ocupan mas de 1 byte, por ejemplo la ñ ocupa 2 bytes.
290
Preguntas y respuestas / Re:Efecto photoshop
Septiembre 22, 2018, 04:44:24 AM
En el evento Draw GUI, usa la función gpu_set_blendmode o gpu_set_blendmode_ext
https://docs2.yoyogames.com/source/_build/3_scripting/4_gml_reference/drawing/gpu/gpu_set_blendmode.html
y dibuja la imagen estirada para cubrir toda la pantalla
[gml]
w = display_get_gui_width();
h = display_get_gui_height();
draw_set_blend_mode(bm_add);
draw_background_stretched_ext(gr, 0,0, w,h, c_white,alpha);
[/gml]
(GMS1: draw_set_blend_mode)
(GMS2: gpu_set_blendmode)

Ejemplo en GMLive
291
Juegos en desarrollo / Re:Preludio de Fanón
Septiembre 22, 2018, 03:29:04 AM
292
Muestra el código que utilizas.
Si la música que importaste a GMS está en formato MP3, deberías marcarla como compressed para que se convierta a OGG.
Los efectos de sonido cortos es mejor que estén en formato WAV y no estén marcados como compressed.
293
Preguntas y respuestas / Re:Guardar/Cargar JSON
Septiembre 16, 2018, 07:14:43 PM
Lo primero que debes hacer es aprender a utilizar ds_maps y ds_lists.
¿Tienes buen conocimiento de esos recursos?
¿Qué datos quieres guardar?
294
Se puede hacer de esta forma, pero no es la más eficiente.
Puedes ver como funciona aquí: Ejemplo en GMLive
[gml]
// Arguments
var px = argument0; //planet x
var py = argument1; //planet y
var pg = argument2; //planet gravity

var bx = argument3; //bullet x
var by = argument4; //bullet y
var bv = argument5; //initial speed
var bd = argument6; //initial direction

var bvx = lengthdir_x(bv, bd);
var bvy = lengthdir_y(bv, bd);
var bg, bgd; //gravity and gravity direction for bullet

draw_primitive_begin(pr_linestrip);
repeat(500) {
    draw_vertex(bx,by); //bullet position
    bx += bvx; //move bullet
    by += bvy;
    bg = pg / point_dist_sqr(px,py, bx,by); //update gravity
    bgd = point_direction(bx,by, px,py); //update gravity direction
    bvx += lengthdir_x(bg, bgd); //update speed
    bvy += lengthdir_y(bg, bgd);
}
draw_primitive_end();
[/gml]
Dentro de ese script se usa otro script: point_dist_sqr
[gml]
// point distance squared
return sqr(argument0 - argument2) + sqr(argument1 - argument3);
[/gml]
Es mejor que usar point_distance y después elevar al cuadrado, nos ahorramos 2 operaciones.

Sería más eficiente si la trayectoria no se re-dibujara en cada evento Draw. Se podría dibujar en una surface.
También podría calcularse más rápido si se obtiene una ecuación paramétrica a partir de las condiciones inicales, no lo he investigado, pero debe se posible.
Algo que me parece complicado es hacer líneas punteadas con segmentos de longitud igual.
295
¿En qué parte del código utilizas random?
Hay un bug en el que no se pueden posicionar instacias aleatoriamente al inicio del juego, debes esperar un frame (step) y luego utilizar random.
296
Si utilizas las funciones effect_create_*, debes utilizar effect_clear().
Si utilizas un sistema de partículas personalizado, puedes utilizar part_system_clear(system_index) para limpiar todas las partículas y emisores, pero el sistema seguirá en memoria y lo podrás utilizar en la siguiente room, si quieres eliminar el sistema completamente, debes utilizar part_system_destroy(system_index).
297
Preguntas y respuestas / Re:Efecto Overlay
Septiembre 13, 2018, 05:30:26 PM
Dibuja todo normalmente (evento Draw) y al final (evento Draw End o Draw GUI) activa un blend mode y dibuja el sprite que modificará la imagen
[gml]
// Evento Draw GUI
gpu_set_blendmode(bm_add);
draw_sprite(sp0, 0, 0, 0); //sprite del mismo tamaño que la GUI layer
gpu_set_blendmode(bm_normal);
[/gml]
298
Creo que Slazgher es un bot. Han aparecido algunos recientemente. Ponen la misma frase en diferentes temas.

Aquí hay un ejemplo de programación con estados:
http://www.comunidadgm.org/preguntas-y-respuestas/cambiar-de-animacion-dos-veces-(solucionado)/
299
Preguntas y respuestas / Re:Como hacer un juego de Dominó?
Septiembre 10, 2018, 01:32:06 AM
Creo que lo primero sería tener un documento con las reglas del juego. Después hacer bocetos de la interfaz gráfica. Luego separar el juego en etapas y programar cada etapa, por ejemplo, repartir fichas, ficha inicial, turnos de jugadores, etc.

Lo complicado es hacer que la computadora juegue dominó. Encontré unos artículos con información muy detallada:
https://miguelhur.wordpress.com/2013/03/15/un-juego-de-domino-con-razonamiento-basado-en-logica-difusa/
https://ccc.inaoep.mx/~munoz/docs/MartinezMunoz_WR-ENC05.pdf
https://upcommons.upc.edu/bitstream/handle/2099.1/21978/pau.villegas_101999.pdf?sequence=1&isAllowed=y
El último tiene muchas cosas que no se pueden aplicar en GameMaker, pero es interesante.
300
Preguntas y respuestas / Re:tema compiler
Septiembre 10, 2018, 01:06:47 AM
Creo que la única solución es reiniciar la computadora.
Te recomiendo exportar como zip, tiene menos problemas con los antivirus.