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

226
Hay que agarrarle m?s ma?a a esas variables. XD
227
Antes de llamar a la transici?n.
228
Preguntas y respuestas / Re: la letra ?
Octubre 14, 2010, 02:14:35 AM
No veo raz?n para que no funcione, aunque si ye te tomaste la molestia de escribir el c?digo ?porqu? no lo compruebas por t? mismo? XD
229
Preguntas y respuestas / Re: siga al raton y se pare
Octubre 14, 2010, 12:43:48 AM
Disculpa, es que lo hice en :GM8:. :P

Cuando tenga un chance lo rehago en :GM6: para que los puedas abrir en :GM7:.
230
[gml]transition_steps[/gml]

Lo normal son 80, as? que debes incrementar ese valor.
231
Preguntas y respuestas / Re: siga al raton y se pare
Octubre 13, 2010, 08:47:42 PM
move_towards_point() pone a caminar un objeto hacia un punto y con cierta velocidad, sin tomar en cuenta si ya se encuentra en ese punto. Para tu caso te recomiendo que uses la funci?n mp_linear_step() en el evento Step.

Te ajunto un ejemplo.
232
Los nombres de los recursos ya son de por s? "variables fijas", es decir que s?lo disfrazan el index de dicho recurso. Por lo tanto puedes utilizar cualquiera de los dos como argumento. Para conocer el index de un recurso s?lo debes abrir el juego en Debug Mode y anotar su nombre como una expresi?n.

Algo similar sucede con true que equivale a 1, false que equivale a 0, noone que equivale a -4, y as? muchos ejemplos.
233
Preguntas y respuestas / Re: la letra ?
Octubre 13, 2010, 08:23:31 PM
Si te refieres a mostrar esos caracteres en pantalla solo debes ampliar el rango de caracteres desde el cuadro de opciones de la Font que est?s usando, por ejemplo a All. Te dejo una imagen para que no te pierdas. :)

234
Cita de: Sacado del nuestro manual traducidoLas dem?s funciones usan un mecanismo mucho m?s complejo basado en rejillas (un algoritmo A*). Tiene m?s ?xito a la hora de encontrar caminos y hacerlos m?s cortos, pero requiere m?s trabajo por tu parte. Adem?s, tambi?n puede fallar en algunas ocasiones. El funcionamiento es como sigue: primero situamos una rejilla sobre la parte del cuarto afectada. Puedes usar si quieres usar una rejilla fina (m?s lento) o m?s espaciada. Despu?s, determinamos las celdas de la rejilla ocupadas por objetos relevantes (usando colisi?n precisa o la caja de contorno) y marcamos estas celdas como prohibidas. As? que una celda estar? prohibida si parte de un obst?culo la est? ocupando. Finalmente especificamos la posici?n inicial y final, que deben estar en celdas libres de la rejilla y la funci?n calcula el camino m?s corto entre ellas. El camino ir? de centro a centro de las celdas libres. As? que las celdas deben ser lo suficientemente grandes como para que la instancia entre totalmente dentro de ellas. Ahora puedes asignar el path a una instancia y hacer que lo siga.

Este sistema es muy potente (se usa en muchos juegos profesionales) pero requiere que lo planifiques con cuidado. Debes determinar la zona del cuarto sobre la que situar la rejilla y el tama?o de las celdas con la mayor precisi?n posible. Tambi?n debes decidir qu? objetos deben tomarse en cuenta y si es necesaria la colisi?n precisa o no. Todos estos par?metros afectan de manera muy notable a la eficiencia del m?todo.

En particular, el tama?o de las celdas es crucial. Recuerda que las celdas deben lo suficientemente grandes como para que la instancia que se mueve entre totalmente dentro de ellas (ten cuidado con la posici?n del origen de la instancia y recuerda que puedes mover el path para hacer que el centro del objeto coincida con el centro de la celda). Por otro lado, cuanto menores sean las celdas m?s caminos diferentes podr?s encontrar. Si haces las celdas demasiado grandes puede que unos pocos objetos ocupen todas las celdas cerrando todos los caminos posibles.

Las funciones para el m?todo de rejilla son:

mp_grid_create(left,top,hcells,vcells,cellwidth,cellheight) Esta funci?n crea la rejilla. Devuelve un ?ndice que debe ser usado en las dem?s funciones. Puedes crear y mantener varias rejillas al mismo tiempo. left y top indican la posici?n de la esquina superior izquierda de la rejilla y hcells y vcells indican el n?mero de celdas horizontales y verticales respectivamente. Finalmente, cellwidth y cellheight indican la anchura y altura de las celdas.
mp_grid_destroy(id) Destruye la rejilla indicada y libera la memoria usada. No olvides llamar a esta funci?n cuando no necesites usar m?s la rejilla.
mp_grid_clear_all(id) Marca todas las celdas como libres.
mp_grid_clear_cell(id,h,v) Marca la celda indicada como libre (la primera celda es la 0,0).
mp_grid_clear_rectangle(id,left,top,right,bottom) Marca como libres todas las celdas que intersectan el rect?ngulo definido en coordenadas absolutas del cuarto.
mp_grid_add_cell(id,h,v) Marca ls celdas indicadas como prohibidas.
mp_grid_add_rectangle(id,left,top,right,bottom) Marca todas las celdas que intersectan el rect?ngulo como prohibidas.
mp_grid_add_instances(id,obj,prec) Marca todas las celdas que intersectan una instancia del objeto indicado como prohibidas. Tambi?n puedes especificar una id de una instancia concreta, o la palabra clave all para indicar todas las instancias. prec indica si hay que usar colisi?n precisa (s?lo funcionar? si en el sprite de la instancia est? activada la misma opci?n).
mp_grid_path(id,path,xstart,ystart,xgoal,ygoal,allowdiag) Calcula el path a trav?s de la rejilla. El path indicado debe existir con anterioridad a la llamada de la funci?n y ser? sobreescrito por el nuevo path (consulta el cap?tulo sobre c?mo crear y destruir paths). xstart e ystart indican el comienzo del path y xgoal e ygoal las coordenadas de la meta. allowdiag indica si se permiten movimientos diagonales entre celdas o s?lo horizontales y verticales. La funci?n devuelve si consigui? calcular un path (observa que el path es independiente de la instancia actual).
mp_grid_draw(id) Esta funci?n dibuja la rejilla marcando las celdas libres y prohibidas (muy ?til para buscar errores).

As? est? el arroz... A ver como lo sacas adelante.
235
Seg?n lo que prob?, image_index puede adoptar valores negativos sin que estos afecten la animaci?n. Simplemente seguir? sumando 1 al ?ndice hasta alcanzar su valor m?ximo y regresar a 0 (el primer frame).

Por lo tanto image_index=-1 no estar?a causando el problema, simplemente est? sobrando. XD
236
Mi ?ltimo intento de que veas que mi c?digo s? sirve... B?jate el adjunto. :(
237
Wadk, eres malo, no lo niegues ?Tu karma te delata! XD
238
Gracias por la info. Ya conoc?a GM Print, porque para desarrollar juegos uso :GM8:, pero no me sirve esta versi?n ni sus extesiones para crear un programa que va a trabajar bajo Windows ME. Tendr? que ponerme mis gogles a ver que DLL puedo encontrar por ah?.

Una duda m?s ?Se pueden usar DLLs con :GM5:?

?Saludos!
239
No juzgues un c?digo hasta haberlo probado. :-X
240
?destroy_instantance()? XD

S?cale el jugo al tag de GML para revisar que los nombres de las funciones est?n bien escritos. 8)

Mira:

[gml]
instance_destroy();
destroy_instantance();
[/gml]

...
[gml]
instance_destroy();
destroy_instantance();
[/gml]