Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Mostrar Mensajes

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


Mensajes - TheJaj

Páginas: 1
1
Preguntas y respuestas / Re:RANDOM ENTRE NUMEROS ESPECIFICOS;
« en: Enero 26, 2018, 06:06:43 pm »
En general si no usas un "randomize()" vas a tener siempre los mismos valores.
ya que el sistema de las computadoras tiende a dar los mismos resultados, siempre y cuando hagas las mismas acciones una y otra vez.

Pero en la versión corta si quieres que nada se repita en la segunda partida, tienes que poner un "randomize()"
Los siguientes usuarios dieron las gracias a este tema: Yuzo

2
Preguntas y respuestas / Re:RANDOM ENTRE NUMEROS ESPECIFICOS;
« en: Enero 26, 2018, 02:09:59 am »
Tenes la funcion "irandom_range(x1,x2)" para obtener un valor aleatorio entre esos numeros siempre te da un valor entero y tambien tenes "random_range(x1,x2)" y este te da valores que pueden tener un coma tipo 0,5.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

3
Preguntas y respuestas / Re:Ehh no entiendo lo que pasa
« en: Enero 13, 2018, 10:50:51 pm »
Ahora funciona como debería, pero ¿por que se elimina la surface al agrandar la pantalla?
Los siguientes usuarios dieron las gracias a este tema: Yuzo

4
Preguntas y respuestas / Re:Como logro ese efecto de creación?
« en: Enero 07, 2018, 11:28:21 am »
Creo que entiendo lo que dices, y eso ya es cuestión tuya, mas bien de como organices los "sistemas" de juego.

En mi caso, siempre uso un objeto "omniciente" el cual tiene permanencia entre rooms y ahí es donde he puesto la generación del rectángulo negro, los círculos de luz los he puesto en los personajes/torres. Pero como digo es mi caso, ya que estoy haciendo un tower defense.

Pero supongo que si quieres tener cierto grado de orden podrias hacer un objeto llamado "obj_filtro_oscuridad" y otro "obj_linterna_filtro" pero para el segundo tendrías que programar con unas funciones para que no se note. Eso o en el objeto "filtro_oscuridad" pones un step end y usas un "with()" y te ahorras de crear un segundo objeto que hace el efecto de la "linterna".
Los siguientes usuarios dieron las gracias a este tema: Yuzo

5
Preguntas y respuestas / Re:Como logro ese efecto de creación?
« en: Enero 07, 2018, 04:05:39 am »
Tienes razón, los 3 primeros trozos de código corresponden a uno, y el ultimo al objeto que crea la luz.

El problema es que el primer "Step end" es un simple "Step" disculpa que soy retrasado. :_ xD
Los siguientes usuarios dieron las gracias a este tema: Yuzo

6
Preguntas y respuestas / Re:Como logro ese efecto de creación?
« en: Enero 07, 2018, 03:00:58 am »
Ahhh espera. xD

He visto tu codigo y no te voy a mentir no entiendo un huevo, pero yo he logrado lo que buscas con tan solo 12-20 lineas de codigo.

En el objeto que crea la luz/oscuridad

Create
Código: [Seleccionar]
globalvar Oscuridad;
Oscuridad = surface_create(view_wview,view_hview)

Step end
Código: [Seleccionar]
surface_set_target(Oscuridad)
draw_set_color(c_white)
draw_rectangle(0,0,view_wview,view_hview,false)
surface_reset_target()

Draw
Código: [Seleccionar]
draw_set_blend_mode(bm_subtract);
draw_surface(Oscuridad,view_xview,view_yview)
draw_set_blend_mode(bm_normal);


Y en el objeto que crea la luz

Step end
Código: [Seleccionar]
size = 128;
draw_set_blend_mode(bm_subtract);
surface_set_target(Oscuridad);
draw_ellipse_color((x-size)-view_xview,(y-size)-view_yview,(x+size)-view_xview,(y+size)-view_yview,c_white,c_black,false)//,c_orange,c_white,false);
surface_reset_target();
draw_set_blend_mode(bm_normal);
Los siguientes usuarios dieron las gracias a este tema: Yuzo

7
Preguntas y respuestas / Re:MOVER OBJECTO CON RATON
« en: Enero 07, 2018, 02:53:27 am »
Pues... asi de primeras...
Si usas 2 variables extras tipo

Código: [Seleccionar]
X_diferencia = mouse_x-y
Y_diferencia = muse_y-y


with(objeto a mover)
{
x = mouse_x - X_diferencia
y = mouse_y - Y_diferencia
}

La verdad es que no lo he probado, pero deveria darte una idea.
Los siguientes usuarios dieron las gracias a este tema: nonoroman, Yuzo

8
Preguntas y respuestas / Re:Como logro ese efecto de creación?
« en: Enero 07, 2018, 02:49:46 am »
Lo que dice Iros funciona perfectamente siempre y cuando el objeto que es hijo no tiene código propio, para este caso te recomiendo que lo crees como un script y en cada objeto que puedes usar como padre pongas:

Código: [Seleccionar]
if  room = "habitacion en la que quieres este efecto"
{image_alpha = scr_invisible}

y en el scritp solo cambias el "image_apha" por "index" con eso tendria que bastar.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

9
Preguntas y respuestas / Re:Como logro ese efecto de creación?
« en: Enero 06, 2018, 04:56:47 am »
Emm...
Esteh, estoy desde el celular pero si no recuerdo mal es código es algo como:
Código: [Seleccionar]
If distancia_to_point(objeto_jugador) < 50
{image_alpha = 1}
else
{image_alpha = 0}

Este código va en las paredes.
Te recomiendo que verifiques la función, la de distancia, ya que hace literalmente 6-7 meses no la uso.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

10
Pues en cuyo caso solo se me ocurre que nombres a los enemigos uno por uno o si tienes un parent en común(sub-grupo) para hacer la colisión y eliminarlos.
Y con el temporizador puedes hacer una variable en en el evento create, Ej:
Código: [Seleccionar]
Tiempo = 3*room_speed //Esto daria como resultado que dure 3 segundos.
En el step pones
Código: [Seleccionar]
Tiempo -= 1
if Tiempo <= 0
{instance_destroy();}
Los siguientes usuarios dieron las gracias a este tema: Yuzo

11
Dentro del objeto que crea el desafió pones un Draw Gui:
Código: [Seleccionar]
draw_set_font(la que quieras)
draw_set_color(pon el color que quieras)
draw_text(x,y,"Has sido desafiado a abrazar el monitor")
Con ese código el texto tendría que seguir al objeto.
Pero tendrás que ajustarlo en "x+tanto" e "y+tanto" para que quede adentro del objeto.
Se que existen algunas variables para ayudarte con esto pero no me las se. Sorry :\
Los siguientes usuarios dieron las gracias a este tema: Yuzo, SantiOkumura

12
Fácil, crea un padre para el padre de tu objetos.
El primero sera el padre al que harás referencia para matar a todo lo que mate tu escudo de rayo.
Los segundos padres serán los encargados de dividir en sub-grupos (Enemigos, la princesa que te friendzoneo, el que te robo la dignidad, los arboles(si eres jardinero)).

Solo haces que el escudo al tocar al "primer padre" este muera y todos los objetos hijos a este morirán. :D
Los siguientes usuarios dieron las gracias a este tema: Yuzo

13
Preguntas y respuestas / Re:Alguien sabe como lograr esto?
« en: Agosto 18, 2017, 03:07:31 am »
Si bien solo le he dado una mirada muy rápida a tu código. Entiendo que quieres que al disparar el personaje retroceda.
Para ello yo te diría que uses una variable un alarma.Ejemplo:
Código: [Seleccionar]
if click derecho
{Empuje = true
if mouse_X > personaje
{desplazar 3 pixeles a la izquierda}
if mouse_X < personaje
{desplazar 3 pixeles a la derecha}}
else
{Empuje = false}

if Empuje = false
{f (keyboard_check(ord('A'))) vh = -v;
if (keyboard_check(ord('D'))) vh = v;}

if Empujar = true
{alarm[0] = 3}

//En la alarma
Empujar = false


Con esto tendrías que poder notarse el efecto de empujar al jugador cuando dispara sin problemas.
Pero OJO este sistema inpide que mientras aprietes el boton de disparar el jugador se pueda mover a voluntad.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

Páginas: 1