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

136
Hola, al final he decido irme por la primera opción, me parece la mas optima.

Saludos y gracias.
137
Hola a todos ha pasado mucho tiempo ;D

Tengo una pequeña duda en un proyecto que estoy realizando. Tengo 2 vistas, una sigue al personaje, renderiza el mundo y todo lo demás, la otra es una vista que va a mostrar todos los stats del jugador. Pero como ambas vistas deben estar en la misma room, ambas van a renderizar una parte de el...

Puedo evitar que dibuje los objetos con view_current pero no los tiles, lo que tengo actualmente es un objeto que "limpia" la vista  y luego dibuja toda la interfaz que necesito, pero de todas formas el Game Maker está procesando y dibujando estos tiles, así que lo que quiero es saber si se puede evitar que se dibujen los tiles en una vista en especifico para evitar este gasto innecesario de memoria.

No se si me explico bien, saludos.

Saludos.
138
en si el codigo de silver_light estaba bien, pero te lo adapto de otra manera, pon esto en el end_step

[gml]
if (x < 0 || x > room_width) x = xprevious;
if (y < 0 || y > room_height) y = yprevious;
[/gml]

ahora bien esto solo funciona si no estas usando views para cuyo caso sería

[gml]
if (x < view_xview[0] || x > view_xview[0]+view_wview[0]) x = xprevious;
if (y < view_yview[0] || y > view_yview[0]+view_hview[0]) y = yprevious;
[/gml]

Espero que te sirva, saludos
139
Juegos en desarrollo / Re:Arion [NEW] [Beta 0.2]
Abril 09, 2013, 04:07:16 AM
Cita de: elviskelley en Abril 07, 2013, 10:48:25 PM
Lo he testeado por buen rato y puedes verlo en la tabla de puntuaciones.
1.- Agrega algun item que de dinero. Algo como una nave que sale de vez en cuando y al destruirla deja caer una bolsa de dinero, el cual podras agarrar y asi aumentar tus ganancias y las mejoras en la tienda. Esto evitaria hacerlo predesible.
2.- Separa la nave del borde inferior al menos 32pxl, ya que no se logra ver en forma alguna cuando algun enemigo sale por debajo, y con eso al menos darias tiempo de verlo y quizás salvarte.
3.- ingrementa la velocidad del disparo en .5 o 1, para disminuir un poco la dificultad.

Por lo demas va bien.

la 1ra me parece buena idea, la 2da no se... tengo que analizarlo porque en si hace parte de la dificultad, lo mismo para la 3

Por ahora el guardado de scores esta desactivado por problemas de seguridad

Saludos
140
Juegos en desarrollo / Re:Arion [Beta 0.1]
Abril 07, 2013, 09:22:16 PM
Nueva versión publicada, no creo que hayan muchos cambios para la próxima versión a menos que se me ocurran  mas cosas. Igualmente acepto toda clase de consejos que tengan  :-[

Cita de: VEGET@ en Abril 04, 2013, 01:06:33 AM
Malditos asteroides, se llevaron casi toda mi flota  >:( jaja
Que decir del juego, por ahora tiene buen rumbo, espero que lo puedas completar.

Sería bueno que se pudieran elegir diferentes tipos de naves, con caracteristicas diferentes, y que pongas el juego en español   XD

Ya está el juego en español, lo de las naves lo había pensado pero decidí que seria una nave por cada arma, son 5 naves con 5 armas en total

Saludos
141
Preguntas y respuestas / Re:problema salto y sprite
Abril 04, 2013, 06:55:47 PM
Hola, lo primero que se me viene a la mente es que pueda ser porque tienes el punto de giro (o colision) en el centro de ambas imagenes, es decir cuando editas un sprite tienes la opcion de poner su punto de origen

+-------+
|           |
|    °     |    <- supongo que los tienes en el centro.
|           |
+-------+

Ahora bien si este es el caso entonces al tocar el suelo va a pasar algo similar a esto:


             +-------+
   ///////////|    °    |///////////////
             +-------+

Este es el sprite de dando un salto en bolita y ha colisionado con el suelo, ahora va a cambiar a el sprite de quedarse quieto:


             +-------+
              |         |
   ///////////|    °    |///////////////
              |         |
             +-------+

Como puedes ver el personaje se ha quedado atorado.





En fin, resumiendo, el modo de solucionarlo (si es que este es el problema) es cambiar el origen a el centro y los pies del personaje, es decir:

+-------+
|         |
|         |       <- sprite quieto
|         |
+---°---+

y

+-------+
|         |      <- Sprite saltando en bolita
+---°---+


Espero que te sirva de algo

Saludos.
142
Preguntas y respuestas / Re:evento step
Abril 01, 2013, 09:45:59 PM
Bueno el step es una forma de decirlo ya que para eso tambien existen eventos auxiliares como "keypress", "keyrelease" y cosas así.

En si puedes poner el movimient donde quieras siempre y cuando el evento se repita durante la vida de la instancia... por ejemplo si lo pones en el create o en el destroy no te va a servir, tampoco en las alarmas (aunque puede variar). Podrías ponerlo en el Draw pero es mejor ponerlo en el step o en los de keypress por orden.

Te aconsejo que estudies bien los eventos, lee el manual y mira cuales hay y cuando se activan para así saber donde poner cada cosa.

saludos
143
Preguntas y respuestas / Re:evento step
Abril 01, 2013, 09:03:05 PM
El step es como el ciclo principal del juego en el que las instancias se ejecutan de acuerdo a su depth y a su numero de instance... por ejemplo si tienes 3 objetos:


objPersonaje: depth = 0 ; instanceId = 1
objFondo: depth = 100; instanceId = 2
objEnemigo: depth = 0; instanceId = 3

Entonces por orden primero se va a ejecutar objFondo que es el que mayor depth tiene, luego el personaje y el enemigo donde primero se ejecuta el personaje por haberse creado primero

es decir en el ciclo se ejecuta:

objFondo.step()
objPersonaje.step()
objEnemigo.step()

y luego reinicia

objFondo.step()
objPersonaje.step()
objEnemigo.step()

y así sigue en la ejecucion

ahora bien, esto se ejecuta la candidad de frames que tengas configurado en la habitacion (por defecto 30) es decir, que en un segundo el ciclo:

objFondo.step()
objPersonaje.step()
objEnemigo.step()

Se hara 30 veces.

aqui debes poner las acciones principales del objeto que quieres que ejecute durante toda su vida, por ejemplo para el personaje vas a querer que se mueva, entonces puedes poner

if (keyboard_check(vk_right))
    x += 4;

o que dispare

if (keyboard_check_pressed(vk_space)){
    //Acciones necesarias para disparar...
}
144
Juegos en desarrollo / Arion [NEW] [Beta 0.2]
Marzo 31, 2013, 08:55:40 PM

Arion

Shooter

GM8

Eres un piloto del comando de exploración espacial de la tierra, durante una misión de rutina fuiste lanzado a un rincón lejano de tu tripulación a un sector conocido como Arion. Cuando recobras el control te das cuenta de que el sector esta infestado de criaturas extrañas... ¿Serás capaz de sobrevivir y volver a con tu tripulación?





* http://www.sendspace.com/file/o5s9yj   [BETA0.2]
* http://www.sendspace.com/file/bwhzqu [BETA 0.1]
* También está adjunto al mensaje.


Hace cerca de un año y medio deje el desarrollo de juegos en Game Maker para pasarme a un lenguaje mas complejo y seguir complementando mi aprendizaje (me ha ido bien), pero resiente mente volví a windows e instale el Game Maker y decidí que mientras desarrollo juegos en otros lenguajes (los cuales tomaran varios meses) será bueno que vaya desarrollando juegos sencillos a mediados de esos proyectos (como este. Arion) y para simplificar las cosas he decidido retomar el Game Maker para desarrollarlos.

*TECLAS

Movmiento: Flechas de dirección
Disparo: Barra espaciadora
Cerrar el juego: Esc
Fullscreen: F4

*BETA 0.2
-> Hay 9 tipos de enemigos diferentes
-> Hay 5 armas disponibles
-> Musica y sonidos implementados
-> Tabla de puntajes en linea  (desactivado por problemas de seguridad)
-> Idioma español

*BETA 0.1

-> Hay 8 tipos de enemigos diferentes
-> Se puede subir los niveles de las habilidades
-> Solo hay 2 armas disponibles

*PENDIENTE

-> Agregar mas enemigos
-> Sistema de pausa
-> Permitir cambiar entre idiomas

Se aceptan sugerencias


145
Preguntas y respuestas / Re:GM en Youtube
Septiembre 25, 2012, 04:57:40 PM
Hola

Pues yo he publicado videos (como 102 tutoriales) y jamas me han mencionado nada sobre eso, ademas porque no doy links a cosas piratas ni nada y uso GM licenciado, pero no se realmente si habra algo con eso.  :-\

Suerte
146
Preguntas y respuestas / Re:Moverse al punto inicial
Agosto 15, 2012, 03:47:06 PM
Hola, puedes hacerlo con un pathfinding Game Maker trae funciones para eso, pero no se exactamente cuales son :P

Al momento de cambiar de objeto, debes indicarle cual es el punto de origen, luego con ese objeto haces un pathfinding hasta ese punto  y listo, el se encargara de llegar no solo esquivando solidos sino que tambien por el camino mas corto

mira este ejemplo de pathfinding para guiarte:

http://www.mediafire.com/?e5lgzgo05f3uy1a


Saludos
147
Preguntas y respuestas / Re:Objeto que lo creó?
Julio 16, 2012, 06:20:55 AM
Veras lo que sucede es lo siguiente:

cuando creas una instancia utilizando 'instance_create', el gm se encarga de ejecutar su evento create, luego sigue con el resto de acciones:

[GML]
if mouse_check_button_pressed(mb_left)
{
    bala_disp = instance_create(x,y,o_bala_p);
    //En el momento que hicieste instance create, el GM ejecuta el evento create para bala_disp,
    //por lo que obviamente aun no esta definida la variable creador


    //Ya que la definimos aquí abajo
    bala_disp.creador = id;
}
[/GML]

hay varias cosas que podrias hacer, un evento create diferente que se ejecute en una alarma:

EV_CREATE o_bala_p
[GML]
alarm[0] = 2;
[/GML]

EV_ALARM_0 o_bala_p
[GML]
image_angle = creador.image_angle;
[/GML]

de este modo te funcionaria con un pequeño retraso de 2*fps, lo cual es practicamente indetectable. ahora bien, yo te aconsejaria en cambio que hicieras el cambio de todas las variables en el momento de crear la bala


[GML]
if mouse_check_button_pressed(mb_left)
{
    bala_disp = instance_create(x,y,o_bala_p)
    bala_disp.image_angle = image_angle
    bala_disp.direction = image_angle
    bala_disp.creador = id; //por si luego la necesitas
}


Saludos.
[/GML]
148
Preguntas y respuestas / Re:Objeto que lo creó?
Julio 16, 2012, 04:35:59 AM
yo lo uso mucho para saber quien ha disparado o cosas así por el estilo

[GML]obj1 = instance_create(20,20,object1);

obj1.creator = id;[/GML]

de ese modo obj1 tendra una variable 'creator' que hace referencia al creador
149
Hola, puedes resolverlo de una manera muy sencilla:

[gml]
counter = 83; //Valor a mostrar

text = "0000"; //Cantidad de digitos
text = string_copy(text,0,string_length(text)-string_length(string(counter))); //Cantidad de digitos ajustada

draw_text(16,16,text+string(counter)); //Imprimiendo el texto
[/gml]

Este código funciona para cualquier cantidad de dígitos, puedes cambiar

text = "0000";
por
text = "000000000";

y seguirá funcionando


Saludos.
150
Hola, puedes 'reemplazar' temporalmente el sprite del objeto para saberlo:

Por ejemplo puedes hacer un script así:
[GML]
//scr_SpriteImages(sprite);
var prevSprite, prevImageIndex, imageNumber;

prevSprite = sprite_index;
prevImageIndex = image_index;

sprite_index = argument[0];
imageNumber = image_number;

sprite_index = prevSprite;
image_index = prevImageIndex;

return imageNumber;
[/GML]

llamas al script así:

scr_SpriteImages(spr_Caminando);

y te retornara el numero de subimagenes que tiene ese sprite.


Cabe mencionar que esto es un truco para emular el efecto que quieres  XD no se si habrá una función que ya lo haga, pero en fin

Suerte.