Cita de: Ashe de Freljord en Octubre 14, 2017, 12:45:26 PMSi fuera tan fácil no estaría preguntando, tal vez es fácil para aquel que tenga los conocimientos de como solucionarlo, pero no uso partículas con sprite en mi juego como para entenderlo a la primera.
part_type_emitter toma un sistema de particulas como parametro
El cual no esta definido en ninguna parte del codigo, por lo que te da error.
soluvionarlo es tan facil como crear un part_system.
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.
181
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 15, 2017, 02:17:38 AM182
Preguntas y respuestas / Pregunta rapida
Octubre 14, 2017, 11:10:26 AM
Estoy experimentando con patreon para tener las cosas listas, solo quiero saber esto.
¿Hay contenido bloqueado que solo los patrocinadores pueden ver? o el icono del candado permite ver lo que contiene la imagen?
Esto lo creo para premiar a aquellos que me ayuden económicamente en seguir programando con mas tiempo, ya que toda ayuda debe ser honrada con lo que se puede.
https://www.patreon.com/Naitsabes0
¿Hay contenido bloqueado que solo los patrocinadores pueden ver? o el icono del candado permite ver lo que contiene la imagen?
Esto lo creo para premiar a aquellos que me ayuden económicamente en seguir programando con mas tiempo, ya que toda ayuda debe ser honrada con lo que se puede.
https://www.patreon.com/Naitsabes0
183
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 14, 2017, 06:46:55 AMCita de: NiuWeb en Octubre 14, 2017, 05:53:37 AM
Pues claro, hay que crear el emisor. El código de abajo es lo que deberías tener en el objeto de partícula corazón.
Por lo que veo, necesitas de los dos sistemas: El de la nieve y el de los corazones; utiliza otra variable como emisor, no modifiques el de la nieve
Esto tendría.
///Sistema de particula
particula_corazon = part_type_create();
part_type_sprite(particula_corazon, spr_Corazon, true, true, false); //La forma de la particula
part_type_color1(particula_corazon,55295); //El color de la particula
part_type_orientation(particula_corazon,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_corazon,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_corazon,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_corazon,180,180,0,4); //Direccion de la particula
part_type_life(particula_corazon,180,210); //Duracion de la particula
//Creamos en el emisor
corazon_emisor = part_emitter_create(corazon);
//Establecer region de la habitacion donde se creara el emisor, el perfil y la forma de distribucion
part_emitter_region(nieve,corazon_emisor,0-100,room_width+100,-10,-5,ps_shape_ellipse,ps_distr_linear);
//Empezamos a emitir particulas cada 0.20 segundos
part_emitter_stream(corazon,corazon_emisor,particula_corazon,-5);
Y esto provocaría al encender el juego.
FATAL ERROR in
action number 1
of Create Event
for object obj_Particula_Corazon:
Variable obj_Particula_Corazon.corazon(100024, -2147483648) not set before reading it.
at gml_Object_obj_Particula_Corazon_CreateEvent_1 (line 12) - corazon_emisor = part_emitter_create(corazon);
184
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 14, 2017, 05:18:38 AMCita de: NiuWeb en Octubre 14, 2017, 04:26:50 AMAquí tienes el panorama completo
O sea, reemplazase los códigos part_type*() que tenías antes por los que utilizan el sprite, ¿verdad? Muestra el código con el que creas las partículas en pantalla.
spr_Corazon
obj_Particula_Corazon (Sin sprite)
CREATE:
///Sistema de particula
particula_nieve = part_type_create();
part_type_sprite(particula_nieve, spr_Corazon, true, true, false); //La forma de la particula
part_type_color1(particula_nieve,55295); //El color de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,180,180,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
Resultado final: No pasa nada en la habitación cuando este objeto esta presente, en cambio cuando aplico el obj_Particula_Nieve, hay efecto de nevacion, tengo la sencacion de que estamos omitiendo algo como:
//Creamos en el emisor
nieve_emisor = part_emitter_create(nieve);
//Establecer region de la habitacion donde se creara el emisor, el perfil y la forma de distribucion
part_emitter_region(nieve,nieve_emisor,0-100,room_width+100,-10,-5,ps_shape_ellipse,ps_distr_linear);
//Empezamos a emitir particulas cada 0.20 segundos
part_emitter_stream(nieve,nieve_emisor,particula_nieve,-5);
Que tiene el obj_Particula_Nieve.
185
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 14, 2017, 03:52:13 AMCita de: NiuWeb en Octubre 14, 2017, 03:22:01 AMNo hay errores si coloco un objeto que crea partículas en la habitación, este lo crea, pero cuando pongo en la habitación el objeto con los códigos que me has demostrado, este simplemente no emite nada, dando la sensación que la habitación esta vacía, no hay error en la consola, simplemente este código no emite nada en la habitación.
mmm... es extraño. ¿La consola o el GM te muestran algún error? ¿Cómo creas las partículas (no el emisor ni el tipo, las partículas en sí) en el juego?
186
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 14, 2017, 01:07:43 AMCita de: NiuWeb en Octubre 13, 2017, 05:58:33 PMLa pantalla permanece completamente oscura sin hacer nada.
................................................
En tu caso sería así:
[gml]
particula_nieve = part_type_create();
part_type_sprite(particula_nieve, sprCorazon, true, true, false); //La forma de la particula
part_type_color1(particula_nieve,55295); //El color de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,180,180,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
[/gml]
Realmente pienso que era sólo cuestión de leer.
///Sistema de particula
particula_nieve = part_type_create();
part_type_sprite(particula_nieve, spr_Corazon, true, true, false); //La forma de la particula
part_type_color1(particula_nieve,55295); //El color de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,180,180,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
187
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 13, 2017, 08:06:50 AMCita de: NiuWeb en Octubre 13, 2017, 01:33:06 AMNo pude adaptarlo.
Se supone que era un ejemplo, no que lo tenías que copiar tal cual como estaba -_- XD. Lee la documentación y adapta la función a tu código.
188
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 13, 2017, 01:29:33 AMCita de: NiuWeb en Octubre 12, 2017, 05:40:07 PM///Sistema de particula
Eso significa que algo estás haciendo mal, ¿no crees? Muestra el código que escribiste.
(Y no, no se necesita darle un sprite al objeto que crea la partícula).
global.p1 = part_type_create();
part_type_sprite(global.p1 , spr_Corazon, 1, 0, 0);
part_type_size(global.p1, 1, 3, 0, 0);
part_type_scale(global.p1, 1, 1);
part_type_colour1(global.p1, c_white);
part_type_alpha2(global.p1, 1, 0);
part_type_speed(global.p1, 2, 4, 0, 0);
part_type_direction(global.p1, 0, 180, 0, 0);
part_type_gravity(global.p1, 0.20, 270);
part_type_orientation(global.p1, 0, 0, 0, 0, 1);
part_type_blend(global.p1, 1);
part_type_life(global.p1, 15, 60);
//Viejo código comentado
/*
//Creamos el sistema de particulas
nieve = part_system_create();
part_system_depth(nieve, 50); //Produndidad
//Creamos un nuevo tipo de particulas
particula_nieve = part_type_create();
part_type_shape(particula_nieve,pt_shape_snow); //La forma de la particula
part_type_color1(particula_nieve,55295); //El color de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,180,180,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
//Creamos en el emisor
nieve_emisor = part_emitter_create(nieve);
//Establecer region de la habitacion donde se creara el emisor, el perfil y la forma de distribucion
part_emitter_region(nieve,nieve_emisor,0-100,room_width+100,-10,room_height-5,ps_shape_ellipse,ps_distr_linear);
//Empezamos a emitir particulas cada 0.20 segundos
part_emitter_stream(nieve,nieve_emisor,particula_nieve,-5);
189
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 12, 2017, 02:38:32 AMCita de: NiuWeb en Octubre 12, 2017, 02:19:01 AMNo crea nada, y para crea una imagen se le debe dar un sprite al objeto, ademas que la imagen se queda estancada en la misma posición donde fue creado el objeto.
En el manual hay un ejemplo, ¿no?Cita de: ¡Vaya! Parece que el manual sí trae un ejemploExample:
[gml]
global.p1 = part_type_create();
part_type_sprite(global.p1 , spr_Coins, 1, 0, 0);
part_type_size(global.p1, 1, 3, 0, 0);
part_type_scale(global.p1, 1, 1);
part_type_colour1(global.p1, c_white);
part_type_alpha2(global.p1, 1, 0);
part_type_speed(global.p1, 2, 4, 0, 0);
part_type_direction(global.p1, 0, 180, 0, 0);
part_type_gravity(global.p1, 0.20, 270);
part_type_orientation(global.p1, 0, 0, 0, 0, 1);
part_type_blend(global.p1, 1);
part_type_life(global.p1, 15, 60);
[/gml]
The above code sets the particle type indexed in the global variable "p1" to the shape of the sprite indexed in "spr_Coins", and then sets various other particle properties.
190
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 12, 2017, 02:16:53 AMCita de: NiuWeb en Octubre 12, 2017, 12:58:18 AM¿Y como debería encajar ese tal part_type_sprite en el código? algo que me queda claro es que tendría que eliminar esa función part_type_shape, ya que debería reemplazarlo, o al menos es lo que puedo intuir.
Exacto.
(No es que no se pueda, es que es innecesariamente complejo —además dibujar un sprite gasta mucho menos procesamiento que un montón de puntos en forma de corazón—).
191
Preguntas y respuestas / Re:Hacer efectos de fondo
Octubre 12, 2017, 12:55:28 AMCita de: NiuWeb en Octubre 12, 2017, 12:08:56 AM
https://docs.yoyogames.com/source/dadiospice/002_reference/particles/particle%20types/part_type_sprite.html
¿Y según tu como aplicaría esto en las partículas? tendría que crear un sprite con la forma "corazon" para que se vea, ya que no se puede crear por código?
192
Preguntas y respuestas / Hacer efectos de fondo [Resuelto]
Octubre 12, 2017, 12:02:47 AM
Pues Tengo efectos como la nieve, la lluvia y los fuego artificiales aplicando, por ejemplo para hacer la nieve aplico este codigo:
obj_Particula_Nieve
CREATE
///Sistema de particula
//Creamos el sistema de particulas
nieve = part_system_create();
part_system_depth(nieve, 50); //Produndidad
//Creamos un nuevo tipo de particulas
particula_nieve = part_type_create();
part_type_shape(particula_nieve,pt_shape_snow); //La forma de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,270,270,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
//Creamos en el emisor
nieve_emisor = part_emitter_create(nieve);
//Establecer region de la habitacion donde se creara el emisor, el perfil y la forma de distribucion
part_emitter_region(nieve,nieve_emisor,0-100,room_width+100,-10,-5,ps_shape_ellipse,ps_distr_linear);
//Empezamos a emitir particulas cada 0.20 segundos
part_emitter_stream(nieve,nieve_emisor,particula_nieve,-5);
¿Pero saben como hacer corazones?
La razón de esto es que aplicare eventos del año ami juego a modo de secreto, el nivel navidad tendría este código, ya que es normal asimilar la nieve con navidad, aunque en mi país hay mas calor que frió en esa época, por otro lado los corazones serian por un evento de "San valentin", y claro encontrar corazones en esa fecha es como encontrar gente disfrazada de "Viejo pascuero" o como sea que le llamen en su país.
obj_Particula_Nieve
CREATE
///Sistema de particula
//Creamos el sistema de particulas
nieve = part_system_create();
part_system_depth(nieve, 50); //Produndidad
//Creamos un nuevo tipo de particulas
particula_nieve = part_type_create();
part_type_shape(particula_nieve,pt_shape_snow); //La forma de la particula
part_type_orientation(particula_nieve,0,0,0,0,1); //La rotacion aleatoria de la particula
part_type_size(particula_nieve,0.05,0.25,0,0); //Tamaño aleatorio de la particula
part_type_speed(particula_nieve,1,1.5,0.05,0); //Velocidad de la particula
part_type_direction(particula_nieve,270,270,0,4); //Direccion de la particula
part_type_life(particula_nieve,180,210); //Duracion de la particula
//Creamos en el emisor
nieve_emisor = part_emitter_create(nieve);
//Establecer region de la habitacion donde se creara el emisor, el perfil y la forma de distribucion
part_emitter_region(nieve,nieve_emisor,0-100,room_width+100,-10,-5,ps_shape_ellipse,ps_distr_linear);
//Empezamos a emitir particulas cada 0.20 segundos
part_emitter_stream(nieve,nieve_emisor,particula_nieve,-5);
¿Pero saben como hacer corazones?
La razón de esto es que aplicare eventos del año ami juego a modo de secreto, el nivel navidad tendría este código, ya que es normal asimilar la nieve con navidad, aunque en mi país hay mas calor que frió en esa época, por otro lado los corazones serian por un evento de "San valentin", y claro encontrar corazones en esa fecha es como encontrar gente disfrazada de "Viejo pascuero" o como sea que le llamen en su país.
193
Preguntas y respuestas / Re:Hacer que objeto siga a otro con movimientos curvos?
Octubre 11, 2017, 06:28:41 AMCita de: desplo en Octubre 09, 2017, 11:21:11 PMNo buscas algo como esto?
Quiero hacer que un misil siga a jugador. Pero quiero darle una animación como si el misil estuviera direccionandoce hacia el jugador y que mientras lo sigue su movimiento sea curvilíneo.
194
Preguntas y respuestas / Re:Crear un objeto que dependa del dia/mes/año del mundo
Octubre 11, 2017, 04:36:11 AMCita de: NiuWeb en Octubre 11, 2017, 03:14:10 AMVaya era mas fácil de lo que parecía :-[.
...
[gml]
/*Evento create de algún objeto en la sala, o bien
el Creation Code de la misma*/
if(current_month == 12 and current_day == 25)
instance_create(200, 300, objPortal);
[/gml]
?
195
Preguntas y respuestas / Re:Crear un objeto que dependa del dia/mes/año del mundo
Octubre 11, 2017, 04:33:25 AMCita de: anael en Octubre 11, 2017, 04:14:53 AMVaya lo he visto tantas veces y al mismo tiempo ignorado, que me olvide de su existencia en el "settings".
jaja tremendo spoiler y si viene en la opcion de settings del room