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.

Temas - MateG_

1
Preguntas y respuestas / Rotar el juego
Julio 24, 2018, 08:46:45 PM
   Lamento no tener un título más claro sobre mi duda, la cual es: ¿Cómo podría rotar los elementos de mi juego?

   Se me ocurrió la idea de crear un plataformero cuya mecánica principal sea la de rotar las views, afectando asi a la dirección de la gravedad y al movimiento del jugador. En cuanto a girar las views pude hacerlo con la variable view_angle, sin embargo, a la hora de mover al jugador es cuando se me complica, pues aunque en conjunto con la view rote al jugador sus ejes no giran. Así si, por ejemplo, el angulo de la view fuese de 90° el eje x del jugador sería (visualmente) el y y visceversa.

   Según pienso no ha de ser algo facil de hacer, pero si alguien tiene una idea, video o algo que crea que pueda ayudarme lo agradecería. Espero también haberme expresado bien, un saludo y gracias.  :)
2
   Buenas gente! Como el título dice, me gustaría saber como hacer que un objecto mantenga cierta distancia con el jugador y que a la vez siga la dirección del cursor, en lo que se podría considera una órbita. Esto surge en base a una mecánica que quiero colocar en mi juego, que es la de que el jugador pueda agarrar distintos tipos de bloques con características diferentes, algo similar a lo que se ve en Portal o en Qube, para solucionar puzzles, solo que en 2d. La cuestión de que el bloque mantenga distancia del jugador y que si este se mueve el otro lo siga suavemente dando un efecto de levitación lo hago con este código:


numVX = ((objPlayer.x+16)-x) / 2;
numVY = (objPlayer.y-y) / 2;


   Sin embargo a la hora de hacer que se siga la dirección del mouse no se me ocurre como hacerlo. Si a alguien se sabe alguna forma de llevarlo a cabo lo agradecería mucho. Desde ya muchas gracias.  :)
3
   Buenas a todos! Hoy tengo una duda con respecto a la animación de mi objeto jugador, la cual es: ¿Cómo puedo hacer que cada vez que cambie de sprite (caminando, quiero, saltando...) comience en el primer frame?

   Esta duda viene a que si lo único que pongo en el código es el cambio este se produce en el sprite mas no en la image_index. Si alguien tiene alguna idea de como se puede hacer esto se lo agradecería mucho, desde ya muchas gracias  ;).

Código:


if ground and move = 0
{
    sprite_index = sprJugadorQ
}
else if ground and move != 0
{
    sprite_index = sprJugadorC
}
else if !ground
{
    sprite_index = sprJugadorS
   
    if vsp < 0
    {
        image_index = 0
    }
    else if vsp = 0
    {
        image_index = 1
    }
    else if vsp > 0
    {
        image_index = 2
    }
}
4
   Buenas, como en el título dice tengo un problema al dibujar números en el evento Draw. Lo que quiero dibujar es una alarma, la cual dura 900 steps, que por la velocidad de mis rooms serían 30 segundos, pero cuando quiero dibujar eso mismo (floor(alarm[0]/30)) no da el resultado real, si no que sigue una secuencia algo así: 3 39 38 37 ... 2 29 27 27 ... 1 9 8 7 6 5 4 3 2 1 y ahí termina, la verdad que no se a que se debe, el floor es para que no se escriban los decimales, pero dudo que eso tenga algo que ver. Desde ya muchas gracias.

EDIT:

   Estoy usando una fuente personalizada, cuando lo pruebo con la predeterminada no hay problemas.
5
   Yo actualmente estoy en un proyecto al que le falta mucho para ser considerado como jugable, por lo que todavía no voy a subirlo al foro, sin embargo se me genera una duda: En la plantilla para presentar los juegos dice que es necesario enviar adjunta una demo del juego. Al grano, la consulta es ¿La demo debe ser del juego completo o puede ser de una versión sin finalizar (pero obviamente en condiciones, como una beta o menos)?

   Puede que la pregunta parezca algo ridícula, pero ahí me surgió y espero sus respuestas. Desde ya muchas gracias. ;)
6
Preguntas y respuestas / Mapa estilo "Metroidvania"
Octubre 25, 2017, 01:54:28 AM
Buenas! Vengo con la duda de cómo se puede hacer un minimapa que muestre, por ejemplo, las habitaciones que falten explorar y en la que ya te encuentres, como en los típicos. Más puntualmente la pregunta sería, ¿lo tengo que hacer manualmente mediante algún objecto que dibuje rectángulos con la forma de las habitaciones pero que yo tenga que darles esa forma, y que según en que habitación te encuentres ponga una de esas representaciones en el centro?, o si por el contrario existe alguna forma de dibujar las habitaciones y que tome la forma de estas automaticamente.

Espero que se entienda y que me puedan brindar su ayuda y conocimiento. Desde ya muchas gracias.  :)

Ejemplo:

https://imgur.com/a/25r8H
7
Resulta que hay veces en las que cuando mi personaje está cayendo y colisiona con el suelo se queda "flotando" un pixel más arriba, lo que hace que el bloque que se supone que debería caer cuando es pisado no caiga, aunque no es muy usual estaría bueno arreglarlo, si me pudiesen ayudar lo agradecería.

Código de gravedad:

if !place_meeting(x,y+1,objColision) and (numVSP < 20)
{
    numVSP += numGrav
}


Código de colisión vertical:

if place_meeting(x,y+numVSP,objColision)
{
    while !(place_meeting(x,y+sign(numVSP),objColision))
    {
        y += sign(numVSP)
    }
    numVSP = 0
}

if place_meeting(x,y+numVSP,objBloqueCaida)
{
    while !(place_meeting(x,y+sign(numVSP),objBloqueCaida))
    {
        y += sign(numVSP)
    }
    numVSP = 0
}


Vídeo del error:

https://www.youtube.com/watch?v=5mVqTnW1LnU

Desde ya GRACIAS!
8
    Resulta que quiero hacer un mini-mapa para mi juego, la cuestión es que con lo que probé para que se puedan ver los enemigos solo muestra la posición de uno, me gustaría saber si alguien sabría como hacer que haya un punto por enemigo y cada uno con los respectivos lugares.

Acá el código que hice:

Citardraw_set_color(c_green)
draw_rectangle(objJugador.x/20+8,objJugador.y/20+8,objJugador.x/20+12,objJugador.y/20+12,0)

(Esto es lo que intenté)
if instance_exists(objEnemigo0)
{
    draw_set_color(c_red)
    draw_rectangle(objEnemigo0.x/20+8,objEnemigo0.y/20+8,objEnemigo0.x/20+12,objEnemigo0.y/20+12,0)
}


Acá lo que sucede:

http://imgur.com/a/e6Zp9