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 - _-Caleb-_

31
Cita de: penumbra en Abril 29, 2014, 07:46:52 AM
Bueno, no sé de qué va tu juego, pero esto suena como un trabajo para el sistema de físicas Box2D de GM:S. Deberías hecharle un vistazo al tutorial de shooter que incluye el GM:S, aunque tendrías que reescribir todo desde cero, pues ahí no se pueden usar eventos de colisión, ni vspeed, ni gravity, etc etc.

Es lo que se ve en el vídeo, es sólo una prueba de colisiones, gravedades y rebotes, que al final, sacaré, lo estoy haciendo por aprender cosas mientras espero gráficos nuevos para mi proyecto. Le echaré un ojo a eso penumbra, a ver si lo arreglo :)

¡Gracias!
32
Cita de: penumbra en Abril 29, 2014, 07:34:44 AM
Para saber si el rectángulo de colisión este bien definido es necesario saber cómo tienes configurado el origen del sprite. Tal como está, se supone que el origen del sprite está ubicado en la esquina superior izquierda del objeto bloque.

Si, exacto, 0,0 :)
33
De este modo también ganas en "productividad" ya que si incluyes diferentes tipos de suelo no necesitas crear uno con pinchos en cada ocasión, sólo añadirle los pinchos que ya tienes hechos y configurados, ganando así algo de espacio en disco, en memoria y en recursos :D
34
Cuando cambias la velocidad a 50 significa que la pelota se mueve 50 pixels cada step, como te dice @Killer seguramente tu pared es de menos de 50 pixels y por eso la "evita". Puedes poner algún otro objeto fuera de la room que contenga también el rebote o hacerlo por código, aunque lo más sencillo es poner un objeto sólido e invisible fuera del room :)

Te dejo una imagen explicando lo que digo.

¡Saludos!

35
Cita de: penumbra en Abril 28, 2014, 08:02:11 PM
Mdiante la función collision_rectangle creas una "ventana" (zona) en la habitación basada en las coordenadas de la instancia desde donde se usa. Si al menos un pixel de la máscara del objeto que especificas en la función entra dentro de esa ventana, la función devuelve el id de esa instancia. SI no hay colisión con instancia del objeto especificado, devuelve un número negativo.

Probablemente funcione ya que es la que más se adecua a la forma de un bloque.

Vale, eso lo entiendo, gracias penumbra, lo que no sé hacer ahora es hacer que la variable inst (uso el ejemplo de la ayuda) rebote mediante código.

Esto es lo que tengo en el evento de colisión:

var inst;
inst = collision_rectangle(x, y, x+ 51, y+ 51, object0, true, true); // <-- X e Y + el tamaño del sprite, esto está bien, no?
if inst != noone // Si no es nulo
    {
    with (inst) // QUE REBOTE!!
    }


Pero no rebota, hace cosas raras, he probado con

with (inst) move_bounce_all(true);

Pero quizás no es lo correcto porque hace cosas rarísimas XD

Os pongo un vídeo de lo que estoy intentando solucionar en cuestión, ya que quizás haya otra manera, pero como digo, hasta ahora sólo he tocado las colisiones por drag&drop y ando algo perdido:

https://www.dropbox.com/s/6odiu326hgmium6/colisiones.mp4
36
Preguntas y respuestas / Re:hunt score
Abril 28, 2014, 06:54:01 PM
Cita de: iordee en Abril 28, 2014, 06:46:52 PM
gracias creo que ya lo he modificado bien, he buscado por el foro hay muchos sobre high scores pero no enucentro la solución es lo único que me falta del juego, esp y la publicidad

Busca bien :) @Ocarina hizo hace algunos meses un tutorial sobre los scores, los archivos ini e incluyó algunos ejemplos.

El icono ya va bien :)
37
Preguntas y respuestas / Re:hunt score
Abril 28, 2014, 06:29:56 PM
Edita el primer mensaje y verás que debajo de "Asunto" pone "Icono del mensaje", ahí pones tu versión de gamemaker ya que el lenguaje de GM es algo diferente entre versiones :)
38
Cita de: vampy09 en Abril 28, 2014, 04:04:34 PM
Pon el código que usas para las colisiones.

Lo he hecho todo con el drag&drop porque hasta ahora no me había echo falta codificar las colisiones simples de mi proyecto, pero aquí necesito que sean más precisas para que reboten bien, así que no tengo código :(
39
Cita de: Aitor_Tarrias en Abril 28, 2014, 01:06:03 PM
en el objeto bloque tu puedes poner un evento de colision con el mismo objeto. No lo he probado pero yo creo que si te podria servir, y pones que cuando colisione con otro bloque pues que haga lo que desees.

Gracias, de hecho eso es lo que tengo y de hecho de ahí viene el error, pro eso preguntaba por las funciones de colisión, que no las conozco mucho aún :)

¡Saludso!
40
Preguntas y respuestas / Re:hunt score
Abril 28, 2014, 11:53:47 AM
Tienes que poner el icono de la versión a la que hace referencia tu pregunta o te cerrarán el hilo, por otra parte tu pregunta está respondida muchas veces en éste foro :)

busca "tabla de puntuaciones" o "Score" en el buscador y encontrarás una respuesta :)

¡Saludos!
41
Buenas.

Estoy con un pequeño proyectillo y tengo problemas con las colisiones.

son bloques que caen y rebotan en el suelo y entre si, cuando rebotan en el suelo no tengo problemas, cuando rebotan entre si, a veces se quedan parados un momento, uso los eventos de D&D para el tema pero me imagino que debería usar algo como esto:

http://docs.yoyogames.com/source/dadiospice/002_reference/movement%20and%20collisions/collisions/collision_rectangle.html

Pero no me queda claro su uso, ¿Álguien puede ayudarme a entender esta función o indicarme si no es la que debo usar?

¡Saludos!
42
Preguntas y respuestas / Re:como crear un inventario
Abril 28, 2014, 09:13:41 AM
Cita de: axel  luna en Abril 27, 2014, 07:09:09 PM
Cita de: _-Caleb-_ en Abril 27, 2014, 04:24:00 PM
A mi se me ocurre a bote pronto lo siguiente:

Crear una Room para el inventario y aplicar los objetos con variables globales y archivos ini.

si ya lo intente paro al aplicar o seleccionar odjeto se renicia el juego seria frustrante eleguir un arma y que se reinicie el juego

Al contrario, al escribir con archivos ini el juego guarda los cambios en tiempo real.

¿Podrías poner tu código para comprobarlo?

¡Saludos!
43
Al superar un nivel, llegar al final, tocar el objeto de la meta o como lo tengas, antes de cambiar al siguiente room, escribes en el archivo INI

por ejemplo

[Niveles]
nivel1superado=si
nivel2superado=si
nivel3superado=no
nivel4superado=no
nivel5superado=no

Para saber cómo escribir en un INI mira el foro, hay chorrocientos ejemplos :)
44
Preguntas y respuestas / Re:como crear un inventario
Abril 27, 2014, 04:24:00 PM
A mi se me ocurre a bote pronto lo siguiente:

Crear una Room para el inventario y aplicar los objetos con variables globales y archivos ini.
45
Cita de: LowHertzs en Abril 27, 2014, 02:50:05 PM
Yo creo que para esto lo mejor sería hacer uso de los archivos .ini, puesto que de otra manera si te sales del juego y vuelves a entrar, tendrás que pasarte todos los niveles otra vez, y no creo que ningún jugador desee eso..

Coincido, lo mejor es unar un archivo ini y listo, son menos de 10 líneas y es una solución inmediata :D